张量。Julia中的张量计算

Q1 Social Sciences Journal of Open Research Software Pub Date : 2019-03-21 DOI:10.5334/JORS.182
Kristoffer Carlsson, F. Ekre
{"title":"张量。Julia中的张量计算","authors":"Kristoffer Carlsson, F. Ekre","doi":"10.5334/JORS.182","DOIUrl":null,"url":null,"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.","PeriodicalId":37323,"journal":{"name":"Journal of Open Research Software","volume":" ","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2019-03-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"9","resultStr":"{\"title\":\"Tensors.jl — Tensor Computations in Julia\",\"authors\":\"Kristoffer Carlsson, F. Ekre\",\"doi\":\"10.5334/JORS.182\",\"DOIUrl\":null,\"url\":null,\"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.\",\"PeriodicalId\":37323,\"journal\":{\"name\":\"Journal of Open Research Software\",\"volume\":\" \",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-03-21\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"9\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Journal of Open Research Software\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.5334/JORS.182\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q1\",\"JCRName\":\"Social Sciences\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Open Research Software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5334/JORS.182","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"Social Sciences","Score":null,"Total":0}
引用次数: 9

摘要

张量.jsl是一个Julia包,它提供了对称和非对称张量的高效计算。重点是连续体力学和流体动力学中常用的张量类型。利用Julia重载Unicode中缀运算符的能力,并在标识符中使用Unicode,实现的张量表达式通常看起来与它们的数学写作非常相似。这可能会减少实现中的错误数量。张量上的运算通常被编译成所需的最小汇编指令,并且在有益的情况下,使用SIMD指令。涉及对称张量的计算将对称性考虑在内以降低计算成本。支持自动微分,这意味着用纯Julia编写的大多数函数都可以有效地微分,而不必手动实现导数。该包在需要高效张量运算的应用中很有用,例如在有限元方法中。资金声明:对这项研究的支持由瑞典研究委员会(VR)提供,拨款编号621-2013-3901,拨款编号2015-05422。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
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 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.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Journal of Open Research Software
Journal of Open Research Software Social Sciences-Library and Information Sciences
CiteScore
6.50
自引率
0.00%
发文量
7
审稿时长
21 weeks
期刊最新文献
Taskfarm: A Client/Server Framework for Supporting Massive Embarrassingly Parallel Workloads GTdownloader: A Python Package to Download, Visualize, and Export Georeferenced Tweets From the Twitter API A NetHack Learning Environment Language Wrapper for Autonomous Agents Automated Discovery of Container Executables Fan-Slicer: A Pycuda Package for Fast Reslicing of Ultrasound Shaped Planes
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1