Run3 update glm config
Safely updates specific calibration parameters in the glm3.nml file using f90nml, maintaining correct namelist group mapping and file integrity.From its SKILL.md
npx -y skills add cxcscmu/SkillLearnBench --skill run3_update_glm_configAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
1.0 KB, 228 tokens by cl100k_base, as published. Nobody here has run it
To update the configuration, use the f90nml library to parse the existing file. Map the parameters to their respective namelist groups: Kw to &light, coef_mix_hyp to &mixing, and wind_factor, lw_factor, and ch to &meteorology.
import f90nml
def update_glm_parameters(params):
nml = f90nml.read('/root/glm3.nml')
# Map parameters to their correct namelist groups
nml['light']['Kw'] = params.get('Kw')
nml['mixing']['coef_mix_hyp'] = params.get('coef_mix_hyp')
nml['meteorology']['wind_factor'] = params.get('wind_factor')
nml['meteorology']['lw_factor'] = params.get('lw_factor')
nml['meteorology']['ch'] = params.get('ch')
# Write back without modifying unrelated sections
nml.write('/root/glm3.nml', force=True)
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.