MPI-AMRVAC 3.2
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
Loading...
Searching...
No Matches
Functions/Subroutines
mod_ffhd_eos Module Reference

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).
 

Detailed Description

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.

Function/Subroutine Documentation

◆ ffhd_link_eos()

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.

Here is the call graph for this function: