admin
|
b783cbb981
|
fix(fortran): 修复 read_coord 中 line(0:0) 字符串越界导致崩溃
错误码 3221225785 (0xC0000005 = STATUS_ACCESS_VIOLATION) 由
read_coord 中列数统计的双重条件导致:
line(i:i) /= ' ' .and. (i == 1 .or. line(i-1:i-1) == ' ')
Fortran 不保证 .or. 短路求值,当 i=1 时 line(0:0) 触发
内存越界。拆分为嵌套 if 块,确保只有在 i>1 时才访问
line(i-1:i-1)。
|
2026-06-11 19:11:34 +08:00 |
|
admin
|
2ce8ded482
|
case06: 原子数 60→120,更新文档
|
2026-06-11 18:44:59 +08:00 |
|
admin
|
586d7c29b2
|
case06: 原子数 60→120,更新文档
|
2026-06-11 18:43:35 +08:00 |
|
admin
|
20bfdf2f18
|
feat: 新增 plot_wave_save_gif/plot_wave_save_mp4 开关
- 所有 input.txt 新增 plot_wave_save_gif / plot_wave_save_mp4 参数
- dynamics.py 将参数传入 plot_wave()
- plot_wave.py 根据 save_gif/save_mp4 标志条件保存文件
- 默认均为 0(不输出文件,只显示动画窗口)
|
2026-06-11 13:31:33 +08:00 |
|
admin
|
131f52fe19
|
docs: case05纵波 + case06横波一维原子链
- case05 Readme.md 更新为纵波模拟描述
- case05 run_dynamics.py 注释更新
- case06 创建为一维原子链横波模拟
- coord.txt: fix_x=1, fix_y=1, fix_z=0 (z方向自由)
- driver.txt: amp_z=0.5, freq_z=0.1, phi_z=90°
- input.txt: 横波配置 + step_plot_wave
- Readme.md + doc/index.html + run_dynamics.py
- 模拟验证通过 (50000步/30s)
|
2026-06-11 13:27:43 +08:00 |
|
admin
|
80520590d1
|
feat: 新增波形能量动画系统 plot_wave.py
- 创建 plot_wave.py: 从 display.txt 读取原子位移数据
绘制纵波(x) + 横波(y) + 横波(z) 波形随时间的动画
同时绘制系统动能/弹性势能/总能量/输入功率(dE/dt)时变曲线
输出 wave_animation.gif
- 所有 input.txt 新增 step_plot_wave: 0 开关
- case05 开启 step_plot_wave: 1
- dynamics.py disp_data 新增 bond_stiffness/bond_rest_lengths
- 更新案例文档
|
2026-06-11 12:39:46 +08:00 |
|