Repo - REFACTOR - Write every run and replay output into one gpec.h5 file
维护者通常 3 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 35/100
- Issue 类型
- 重构
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 领域
- data
调研方向
Start in src/Rerun.jl at build_inputs_from_h5, which writes the _forcing.h5, _tolerances.toml, _kinetic.h5 and _wall.dat side files, then trace preloaded_coil_sets to see how in-memory data is passed to a run. The Grad-Shafranov side files come from src/Equilibrium/Axisymmetric/GradShafranovResidual.jl, and src/Analysis/Equilibrium.jl reads them back. Done when a test runs a deck and its replay, each into an empty directory, and each leaves exactly one file behind; docs/src/workflow.md should also stop listing side files.
由索引模型根据 Issue 内容生成。
描述
A deck run should write exactly one file, gpec.h5, and a replay of a gpec.h5 should write exactly one file, <stem>_rerun.h5. Two code paths still write extra files:
Replay side files. build_inputs_from_h5 (src/Rerun.jl) turns the stored snapshot back into a deck that reads its inputs from files. So, for each input the source run had, it writes a file next to the rerun output:
<stem>_forcing.h5(the forcing spectrum,Input/RawInputs/ForcingTerms);<stem>_tolerances.toml(Input/RawInputs/ErrorFields/tolerance_toml_raw);<stem>_kinetic.h5(Input/RawInputs/Kinetic);<stem>_wall.dat(Input/RawInputs/Wall/wall_file_raw).
Grad-Shafranov residual diagnostics. With [Equilibrium] diagnose_src = true, src/Equilibrium/Axisymmetric/GradShafranovResidual.jl writes gsec.h5, gse.h5 and gsei.h5 into the directory of the equilibrium file (dirname(eq_filename)). That is the user's input directory, not the run directory. src/Analysis/Equilibrium.jl reads gse.h5 and gsei.h5 from next to the output file, so the plot works only when the two directories are the same.
Proposed approach
- Kinetic profiles: no side file is needed. The deck already accepts
kinetic_group, so the replay can pointkinetic_fileat the sourcegpec.h5withkinetic_group = "Input/RawInputs/Kinetic". - Forcing, tolerances and wall: hand the snapshot data to the run in memory, as
preloaded_coil_setsalready does for coil geometry. - Grad-Shafranov residual: write it into
gpec.h5, under theEquilibrium/group, following the HDF5 conventions. PointAnalysis.Equilibriumat the new datasets.
Done when
- A test runs a deck and replays its output, and checks that each wrote exactly one file into an otherwise empty directory.
diagnose_src = truewrites nothing outsidegpec.h5, and its plot reads fromgpec.h5.- The "Replaying a run" section of
docs/src/workflow.mdno longer lists side files.
- 主要语言
- Julia
- 星标
- 11
- 派生
- 7
- 平均合并
- 4 天 1 小时
- 30 天内合并 PR
- 68
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 没有贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
OpenFUSIONToolkit/GPEC 的其他 Issue
-
难度 1/5 1 小时以内 新手友好度 82/100
OpenFUSIONToolkit/GPEC#644 ·
维护者通常 3 天内回复
-
PerturbedEquilibrium - FEATURE - Complete the resistive perturbed-equilibrium workflow from Galerkin and matched results可能已有人在做 @matt-pharr 于 1 天前认领。 未关闭feature
OpenFUSIONToolkit/GPEC#635 · 1 条评论 · 已指派 1 人 ·
维护者通常 3 天内回复
-
test
难度 4/5 3-5 天 新手友好度 25/100
OpenFUSIONToolkit/GPEC#633 · 2 条评论 ·
维护者通常 3 天内回复
-
Tearing - FEATURE - Add a general modified Rutherford equation for island evolution可能已有人在做 @StuartBenjamin 于 1 天前认领。 未关闭feature
OpenFUSIONToolkit/GPEC#630 · 已指派 1 人 ·
维护者通常 3 天内回复
-
feature
难度 5/5 一周以上 新手友好度 15/100
OpenFUSIONToolkit/GPEC#629 ·
维护者通常 3 天内回复
查看 OpenFUSIONToolkit/GPEC 的全部 Issue
相似的 Issue
-
`ShallowWaterModel` allocates ~9 KiB per grid point per RK3 stage on the CPU可能已有人在做 @ali-ramadhan 今天认领。 未关闭performance 🏍️
难度 2/5 1-3 小时 新手友好度 62/100
CliMA/Oceananigans.jl#6421 · 1 个 reaction ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 75/100
JuliaQUBO/QUBOLib.jl#105 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 62/100
NCAR/musica#1118 · 1 条评论 · 1 个 reaction ·
维护者通常 1 天内回复
-
`AMSGrad` state starts at `epsilon` instead of zero, so zero gradients move parameters and small gradients are damped可能已有人在做 @parth-patel010 于 1 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 72/100
FluxML/Optimisers.jl#247 · 1 条评论 ·
-
README should say that row and column order must match可能已有人在做 @SAUMYARSH 于 1 天前认领。 未关闭
难度 1/5 1 小时以内 新手友好度 84/100