A Programming Framework for Physics
收藏NIAID Data Ecosystem2026-03-09 收录
下载链接:
https://figshare.com/articles/dataset/A_Programming_Framework_for_Physics/1570986
下载链接
链接失效反馈官方服务:
资源简介:
The fundamental difficulty with scientific software is that the existing languages are either
too general-purpose and too low-level, or both. Thus, physics equations are entangled with the
way they are implemented, even to low level details such as grid structure, cache optimization,
etc. Because everything is coupled, it is difficult for the various scientific communities to adapt to
algorithm or hardware advances. More importantly, it means that researchers cannot specialize
as easily. Everyone must understand physics, software engineering, and computer science to a
to a very deep level, and the learning process, especially for students, is much more arduous
than it needs to be.
In principle, it should be possible to independently specify (1) the scientific equations to be
solved; (2) the type of grids; (3) the type of numerical methods, e.g. time integrators, elliptic
solvers; (4) the intended execution platform (desktop, accelerated cluster, etc.); (5) performance
goals, e.g. as fast as possible, minimum cost, etc.
科学软件的核心困境在于,现有编程语言要么通用性过强、层级过低,或是二者兼具。因此物理方程与其实现方式深度绑定,甚至包括网格结构、缓存优化这类底层细节。由于所有模块高度耦合,各科学领域团队难以适配算法或硬件的迭代升级。更关键的是,这使得研究者难以深耕细分方向:所有人都需要同时深度掌握物理学、软件工程与计算机科学知识,而学习门槛——尤其对学生而言——远超必要水平。
原则上,我们应当可以独立明确以下五项内容:(1) 待求解的科学方程;(2) 网格类型;(3) 数值方法类型,例如时间积分器、椭圆求解器;(4) 目标执行平台(桌面设备、加速集群等);(5) 性能目标,例如极致速度、最低成本等。
创建时间:
2015-10-09



