CAdfīnitās(Adfīnitās的C实现)
隐私提示:本站使用Microsoft Clarity统计访客信息,关于我将收集你的具体何种信息及如何禁止我收集你的信息请点击这里.
更新: 将MPI控制函数移动到LibXi中以对其他项目提供全局支持, 对于纯粹的CAdfīnitās使用而言并不是必要的更新. 2023年12月21日.
更新: 添加了仿真系统状态保存和读取功能. 分离了个人的常用数学结构库. 修复了MPI中的嵌套等待. 自2023年12月12日后的更新请直接访问这里使用Git获取最新更新.
更新: 添加了MPI支持, 分布式计算的支持已经恢复. 点击这里获取2023年12月02日更新的源代码.
CAdfīnitās是使用C语言编写(的目前是无碰撞的引力)N体仿真程序, 如需使用分布式计算需要MPI, 是Adfīnitās(Git仓库)的新版本. CAdfīnitās修正了内存消耗的问题, 并显著提升了计算速度. 项目采用BSD-3-Clause协议开放源代码, 点击这里获取源代码, 或这里访问项目的Git仓库.
所有的积分器均为保持Symplectic结构的积分器, 但是Verlet积分器存在一些已知的问题(等待被修复).
本程序目前不仿真碰撞(目前关注Hamilton系统的Symplectic结构). 因此在示例3.2中, 系统的Hamilton并不被保持.
核心程序依赖: libXi, openMPI(或其他MPI实现, 仅并行计算时);
示例程序依赖: GNU Plot, make, cc;
几个示例: 这些示例与Julia版本相同.
1. 太阳系仿真(木星及内侧轨道);
a. 太阳系轨道
b. 系统的Hamilton;
c. 太阳及水星的视向速度;
2. 一个太阳-地球-月球系统, 但月球具有z轴上的初速度;
a. 轨道;
3. 星系的N体仿真;
a. 1000体仿真;
b. 系统的Hamilton;
UMRAY
2023.12.01