35docs(examples): add LOH1 DRM example and refresh validation figures - #39
Open
ppalacios92 wants to merge 3 commits into
Open
35docs(examples): add LOH1 DRM example and refresh validation figures#39ppalacios92 wants to merge 3 commits into
ppalacios92 wants to merge 3 commits into
Conversation
Move flat examples into numbered folders (01_crustmodel..14_SFSI), archive originals under legacy_examples/, add run_all_smoke.py, drop obsolete example6/view-dk/example0_fig1.
The example DRM runs write multi-gigabyte .h5drm files and companion output folders that are fully reproducible from the example scripts. Keep them out of the repository.
Adds a runnable LOH1 DRM script under examples/08_drm and regenerates the LOH1 validation notebooks together with their crust, source and seismogram figures so the committed output matches the current code.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a runnable DRM script for the SCEC LOH.1 benchmark under
examples/08_drm, regenerates the three LOH1 validation notebooks togetherwith their committed figures so the stored output matches what the current code
produces, and adds a
.gitignorerule for the simulation outputs these runswrite.
Dependencies
pr-30-examplesexamples/08_drm/andexamples/12_validation/notebooks/. Every file this PR modifies is added by that PR; without it this branch has nothing to apply to.One related-but-not-blocking note:
drm_loh1.pywrites H5DRM throughDRMHDF5StationListWriter, which already exists upstream, so the example runsagainst current
master.pr-14b-drm-hdf5-writerrefines that same writer.The two do not conflict, but if
pr-14blands first the regenerated H5DRMoutput is the better one to compare against.
Everything else the example imports is already merged:
Gaussian(
pr-07-gaussian),DRMBox(pr-06a-drmbox),SourcePlot(
pr-06b-plotting),Station(pr-02-station),CrustModel(pr-04-crust).What changed
New:
examples/08_drm/drm_loh1.pyAn end-to-end DRM run on the LOH.1 layer-over-half-space benchmark: builds the
two-layer crust, places the point source with a Gaussian STF, then loops over
the selected stations running a
DRMBoxat each and writing its own H5DRMthrough
DRMHDF5StationListWriter. MPI-aware throughmpi4py, so it runsserially or under
mpirununchanged. This gives08_drma worked exampleagainst a published benchmark rather than only synthetic geometry.
Refreshed: LOH1 validation notebooks
LOH1_validation.ipynb,LOH1_greens_functions.ipynbandexample_LOH1_gf.ipynbre-executed against currentmaster. The committedoutputs had drifted from what the code now produces, so a reader running them
saw figures that did not match the ones in the repository.
Refreshed: 17 figures
Regenerated from those notebook runs — crust layers and velocity profiles,
source geometry and STF, Green's function components and tensor, responses,
convolution check, manual seismograms, and the LOH1 validation comparison
itself. Four under
examples/08_drm/notebooks/, thirteen underexamples/12_validation/notebooks/.Note these are committed with their executed outputs embedded, matching how the
rest of
examples/already stores its notebooks..gitignore: simulation outputsA single LOH1 DRM run writes roughly 2.7 GB across two
.h5drmfiles and theirGreen's function databases. It is fully reproducible by running the example, so
it does not belong in the repository. The pattern is scoped to
examples/forthe output directories so it cannot silently swallow a user's own results
elsewhere in a working tree.
How to verify
Then re-run the notebooks under
examples/12_validation/notebooks/and confirmthe regenerated figures match the committed ones.
git statusshould stayclean afterwards — that is the point of the
.gitignorerule.Scope
Examples, notebooks and figures only. No library code is touched.