<div dir="ltr">Hi Everyone,<div><br></div><div style>I spent part of this morning trying to add some provenance information to the output files that MPAS creates. Currently I have it adding model name, core name, and a version string to each output file, and adding the command that was used to run the model to the history attribute.</div>
<div style><br></div><div style>You can preview the changes in the following branch.</div><div>branches/history_attribute<br></div><div><br></div><div style>The current way to define this information is to modify Registry.xml with the following syntax.</div>
<div style><registry model="mpas" core="core_name" version="version_string"></div><div style>...</div><div style></registry></div><div style><br></div><div style>Then when the model is built, there are parameters created in src/framework/mpas_constants.F named</div>
<div style>modelName</div><div style>coreName</div><div style>version</div><div style>history</div><div style><br></div><div style>History is read in from the input grid upon runtime, and written to all output files with the additional information describing how MPAS was run. Currently it's hard coded to be "mpirun -n ${PROCS} ${CORE}_model.exe" since we require MPI at build time.</div>
<div style><br></div><div style>If the model, core, and version strings are missing from Registry.xml currently it replaces their values with "MISSING", and writes those to the output files so there is no negative consequences.</div>
<div style><br></div><div style>I've tested this branch with the ocean model and it doesn't change results in the current trunk. I also tested building with the shallow water core, when the Registry.xml information is missing.</div>
<div style><br></div><div style>I would like to merge this branch back onto the trunk within the next few days unless anyone has any objections, as I think this additional information will be important to have in the future.</div>
<div style><br></div><div style>Any comments/questions are welcome. </div><div style><br></div><div style>Thanks</div><div style>Doug</div><div><br></div></div>