|
MPI-AMRVAC 3.2
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
|
FFHD <-> EoS seam: binds the eos% authority into force-free hydrodynamics. More...
Functions/Subroutines | |
| subroutine, public | ffhd_link_eos () |
| Link the appropriate EoS conversion/closure routines per eos_type. Called from ffhd_activate after ffhd_phys_init (mirrors hd_activate). | |
FFHD <-> EoS seam: binds the eos% authority into force-free hydrodynamics.
Mirrors mod_hd_eos.t, adapted to FFHD's structure: a single field-aligned momentum component mom(1) and NO magnetic energy (force-free, frozen B0), so every kinetic-energy term is half*rho*mom(1)**2. The B0 projection lives in the flux/cmax/velocity layer (mod_ffhd_phys.t) and is orthogonal to the EoS seam, so the thermodynamic conversions are HD-like with one momentum component.
ffhd_link_eos – wires eos%/phys_ pointers per eos_type (FI now; LTE/PI guarded until milestones 2/3). ffhd_bind_eos_to_source – wires the thermal-conduction (tc_fl), radiative- cooling (rc_fl) and thermal-emission (te_fl_ffhd) fluid-port callbacks from eos%. This is what the pre-eos% hand-wiring was missing (rc_flget_Te / get_ne_nH), which caused the cooling SIGSEGV.
| subroutine, public mod_ffhd_eos::ffhd_link_eos |
Link the appropriate EoS conversion/closure routines per eos_type. Called from ffhd_activate after ffhd_phys_init (mirrors hd_activate).
PI energy-mode overrides (eos_type='PI', ionE=.true.). Energy mode differs from no-energy PI only in the eint<->p relation (eint carries the ionisation energy), so override exactly the routines touching it, all via the portable mod_eos_PI backend. get_Rfactor stays the Te_-addressed routine above (Te_ refreshed each step by ffhd_update_temperature_PI).
eosget_csound2 => get_csound2_PI set in eos_finalise_PI (private target)
Definition at line 43 of file mod_ffhd_eos.t.
