Skip to content

feat: osiris wrapper#279

Open
physicistphil wants to merge 20 commits into
ergodicio:mainfrom
physicistphil:osiris-wrapper
Open

feat: osiris wrapper#279
physicistphil wants to merge 20 commits into
ergodicio:mainfrom
physicistphil:osiris-wrapper

Conversation

@physicistphil

Copy link
Copy Markdown

Todo:

  1. Merge outputs into a single file (xarray) instead of uploading h5
  2. Build reasonable diagnostic / plots (mimicking what we have for vlasov). Right now it's just a few useful plots

physicistphil and others added 15 commits May 26, 2026 13:01
functions (should probably be moved to another branch). Added density
and temperature profiles. Fixed LaTeX issues
regenerates from the saved NetCDF artifacts alone — no rerun, no raw
MS/ tree. Made list_diagnostics/load_series/load_hist_energy dispatch
between the MS/ HDF5 tree and a binary/ NetCDF dir, made field-energy
source-agnostic, and now persist HIST/energy.nc in save_run_datasets.
Added 3 tests
- regen harness: rebuild the full canned plot set from saved NetCDFs (no rerun)
- f(p) and delta-f lineouts; temperature profile from phase-space Maxwellian fits
- number-density profiles (initial/final/late-mean); 2-panel equal-aspect omega-k
- phase-space & spacetime: space on x-axis, cropped to box, log-contrast floor
- proper-LaTeX titles (prose vs math)

Co-Authored-By: Claude Opus 4.8 <[email protected]>
…ion+reflection plot (should probably be moved to osiris-lpi repo)
sync-up.sh script doesn't delete ongoing osiris runs
@joglekara

Copy link
Copy Markdown
Member

is this ready to go?

@physicistphil

Copy link
Copy Markdown
Author

Gave it a read through; should be good to go. Idk if the tests are actually all that useful but I left them in ¯_(ツ)_/¯

@physicistphil physicistphil marked this pull request as ready for review June 17, 2026 00:00
BaseOsiris.write_units() previously returned {} so OSIRIS runs logged an empty units.yaml. Derive the physical reference scales (wp0, tp0, n0, v0, x0, c_light, beta, box_length, sim_duration) from the deck's simulation.n0 (density) or simulation.omega_p0 (frequency); when both are present, n0 wins, as in OSIRIS. This mirrors the canonical key set the other adept solvers emit so OSIRIS runs are comparable in MLflow.

Adds skin_depth_normalization and skin_depth_normalization_from_frequency to normalization.py. OSIRIS has no single global reference temperature (species carry per-species thermal momenta), so the temperature-dependent keys (T0/nuee/logLambda_ee) are omitted.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants