基类:object
object
控制绘图的暂停和继续
改变图像刷新速度(注意不是时间微分dt!为获得更精确的结果请在参数设置表格中手动更改dt)
value:刷新速率
改变散点外观大小
弹出颜色选择框,为散点及其轨迹设置颜色
弹出文件对话框,打开已有的csv格式文件,从中读取已有轨道信息!
弹出保存文件对话框,将现有DATA中的数据信息,以及各质点的质量,时间微分和引力常数信息保存至指定文件
弹出提示信息框
弹出作者信息对话框
初始化摄像机位置
响应单选框是否绘制轨迹的事件请求
checked:单选框是否被选中
加载各个组件,分配空间布局并为组件绑定事件监听函数
保证参数设置表格数据符合格式要求,并更新至DATA之中
item:发生改变的表格元素,若数据不符合格式将被置0
弹出参数设置表格对话框,执行此函数将清空原有DATA中的数据信息!
更新散点位置及轨迹
计算第i个质量点在位置矩阵X,引力常数G和质量为m的条件下的加速度
i:第几个质点
x:位置矩阵X
G:引力常数G
m:质量矩阵
result:第i个质量点的加速度
在空间中为N个质量点产生随机条件
N:质量点个数,三体运动设为3
D:空间维度,三维空间设为3
基类:PyQt5.QtWidgets.QTableWidget
PyQt5.QtWidgets.QTableWidget
自定义表格
计算加速度要去除自身所在位置影响
参数:
x:位置矩阵x i:第i个质点
x:位置矩阵x
i:第i个质点
数值模拟函数
给定瞬时条件和时间间隔,为所有质量点计算下一瞬间位置和速度(标准离散时间运动)
x0:初始位置
v0:初始速度
G:引力常数
m:质量
dt:时间微分(微分越小结果越精确,但会降低程序的运行速度)
x1:在一个dt后各点的末位置
v1:在一个dt后各点的末速度
给定瞬时条件和时间间隔,为所有质量点计算下一瞬间位置和速度(直线匀速运动)
Contents: