Tensors.jl — Tensor Computations in Julia

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 identifie...

Full description

Bibliographic Details
Main Authors: Kristoffer Carlsson, Fredrik Ekre
Format: Article
Language:English
Published: Ubiquity Press 2019-03-01
Series:Journal of Open Research Software
Subjects:
Online Access:https://openresearchsoftware.metajnl.com/articles/182
_version_ 1818572192794804224
author Kristoffer Carlsson
Fredrik Ekre
author_facet Kristoffer Carlsson
Fredrik Ekre
author_sort Kristoffer Carlsson
collection DOAJ
description 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.
first_indexed 2024-12-14T18:53:55Z
format Article
id doaj.art-bea7829a767c44a2b73c088c04d1c284
institution Directory Open Access Journal
issn 2049-9647
language English
last_indexed 2024-12-14T18:53:55Z
publishDate 2019-03-01
publisher Ubiquity Press
record_format Article
series Journal of Open Research Software
spelling doaj.art-bea7829a767c44a2b73c088c04d1c2842022-12-21T22:51:10ZengUbiquity PressJournal of Open Research Software2049-96472019-03-017110.5334/jors.182174Tensors.jl — Tensor Computations in JuliaKristoffer Carlsson0Fredrik Ekre1Department of Industrial and Materials Science, Chalmers University of Technology, GothenburgDepartment of Industrial and Materials Science, Chalmers University of Technology, GothenburgTensors.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.https://openresearchsoftware.metajnl.com/articles/182tensorscontinuum mechanicsfluid dynamicsconstitutive modelingfinite element method
spellingShingle Kristoffer Carlsson
Fredrik Ekre
Tensors.jl — Tensor Computations in Julia
Journal of Open Research Software
tensors
continuum mechanics
fluid dynamics
constitutive modeling
finite element method
title Tensors.jl — Tensor Computations in Julia
title_full Tensors.jl — Tensor Computations in Julia
title_fullStr Tensors.jl — Tensor Computations in Julia
title_full_unstemmed Tensors.jl — Tensor Computations in Julia
title_short Tensors.jl — Tensor Computations in Julia
title_sort tensors jl tensor computations in julia
topic tensors
continuum mechanics
fluid dynamics
constitutive modeling
finite element method
url https://openresearchsoftware.metajnl.com/articles/182
work_keys_str_mv AT kristoffercarlsson tensorsjltensorcomputationsinjulia
AT fredrikekre tensorsjltensorcomputationsinjulia