# Tensorial

## Introduction

Tensorial provides useful tensor operations (e.g., contraction; tensor product, `⊗`

; `inv`

; etc.) written in the Julia programming language. The library supports arbitrary size of non-symmetric and symmetric tensors, where symmetries should be specified to avoid wasteful duplicate computations. The way to give a size of the tensor is similar to StaticArrays.jl, and symmetries of tensors can be specified by using `@Symmetry`

. For example, symmetric fourth-order tensor (symmetrizing tensor) is represented in this library as `Tensor{Tuple{@Symmetry{3,3}, @Symmetry{3,3}}}`

. Einstein summation macro and automatic differentiation functions are also provided.

## Installation

`pkg> add Tensorial`