Dear All,
you can give the new EOS for GRHydro a try by recompiling with -DUSE_EOS_OMNI in CPPFLAGS and FPPFLAGS. This makes GRHydro _independent_ of EOS_Base and all EOS thorns except EOS_Omni (dependence via aliased functions).
Let's say you want to evolve a Gamma=2 polytrope with K=100 with a gamma-law. For this, you would set:
ActiveThorns = "EOS_Omni"
grhydro::grhydro_poly_eoskey = 1 grhydro::grhydro_eoskey = 2 eos_omni::gl_gamma = 2.0 eos_omni::gl_k = 100.0d0 eos_omni::poly_gamma = 2.0 eos_omni::poly_gamma_ini = 2.0 eos_omni::poly_k = 100.0d0
Note that gl_ controls the gamma-law settings and that poly settings are still needed (for fallback purposes in GRHydro if c2p fails).
Without the preprocessor defines, the code behaves as usual and is wedded to EOS_Base and EOS_Polytrope. All test suites pass. A test suite using EOS_Omni has been added. If EOS_Omni is activated and EOS_Omni parameters are added, all standard testsuites pass. This confirms that EOS_Omni produces the same results as EOS_Base + EOS_Polytrope/EOS_Ideal_Fluid/EOS_Hybrid.
Currently, finite-temperature EOS support is lacking. This requires messing with various routines in GRHydro to include temperature in calls etc. This will be the next step in the EOS_Omni development.
Since EOS_Omni already provides the entire functionality of the EOS_Base interface, I would suggest to remove this old interface from the code soon (once people have tried out and are happy with EOS_Omni).
Please report any problems you may find with EOS_Omni.
Best,
- Christian