Christian D. Ott
cott at tapir.caltech.edu
Fri Jul 2 17:19:56 CDT 2010
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.
More information about the Users