Skip to main content
Have a personal or library account? Click to login
Tensors.jl — Tensor Computations in Julia Cover

Tensors.jl — Tensor Computations in Julia

Open Access
|Mar 2019

Abstract

Tensors.jl is a Julia package that provides efficient computations with symmetric and non-symmetric tensors. The focus is on the kind of tensors commonly used in e.g. continuum mechanics and fluid dynamics. Exploiting Julia’s ability to overload Unicode infix operators and using Unicode in identifiers, implemented tensor expressions commonly look very similar to their mathematical writing. This possibly reduces the number of bugs in implementations. Operations on tensors are often compiled into the minimum assembly instructions required, and, when beneficial, SIMD-instructions are used. Computations involving symmetric tensors take symmetry into account to reduce computational cost. Automatic differentiation is supported, which means that most functions written in pure Julia can be efficiently differentiated without having to implement the derivative by hand. The package is useful in applications where efficient tensor operations are required, e.g. in the Finite Element Method.

 

Funding statement: Support for this research was provided by the Swedish Research Council (VR), grant no. 621-2013-3901 and grant no. 2015-05422.

DOI: https://doi.org/10.5334/jors.182 | Journal eISSN: 2049-9647
Language: English
Submitted on: Jun 11, 2017
Accepted on: Jun 6, 2018
Published on: Mar 21, 2019
Published by: Ubiquity Press
In partnership with: Paradigm Publishing Services
Publication frequency: 1 issue per year

© 2019 Kristoffer Carlsson, Fredrik Ekre, published by Ubiquity Press
This work is licensed under the Creative Commons Attribution 4.0 License.