# Interface definition for thorn EOS_Omni implements: EOS_Omni inherits: CCTK_INT FUNCTION EOS_Omni_GetHandle(CCTK_STRING IN name) PROVIDES FUNCTION EOS_Omni_GetHandle with EOS_Omni_GetHandle_ LANGUAGE C void FUNCTION EOS_Omni_press(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY press, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_press WITH EOS_Omni_EOS_Press LANGUAGE Fortran void FUNCTION EOS_Omni_pressOMP(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY press, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_pressOMP WITH EOS_Omni_EOS_PressOMP LANGUAGE Fortran void FUNCTION EOS_Omni_DPressByDEps(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY DPressByDEps, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_DPressByDEps WITH EOS_Omni_EOS_DPressByDEps LANGUAGE Fortran void FUNCTION EOS_Omni_DPressByDRho(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY DPressByDRho, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_DPressByDRho WITH EOS_Omni_EOS_DPressByDRho LANGUAGE Fortran void FUNCTION EOS_Omni_dpderho_dpdrhoe(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY dpderho, \ CCTK_REAL OUT ARRAY dpdrhoe, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_dpderho_dpdrhoe WITH EOS_Omni_EOS_dpderho_dpdrhoe LANGUAGE Fortran void FUNCTION EOS_Omni_cs2(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY cs2, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_cs2 WITH EOS_Omni_EOS_cs2 LANGUAGE Fortran void FUNCTION EOS_Omni_EpsFromPress(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL IN ARRAY press, \ CCTK_REAL OUT ARRAY xeps, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_EpsFromPress WITH EOS_Omni_EOS_eps_from_press LANGUAGE Fortran void FUNCTION EOS_Omni_RhoFromPressEpsTempEnt(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL OUT ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL INOUT ARRAY ent, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL IN ARRAY press, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_RhoFromPressEpsTempEnt WITH EOS_Omni_EOS_RhoFromPressEpsTempEnt LANGUAGE Fortran ################################################################################ # short and long and specific calls void FUNCTION EOS_Omni_short(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY press, \ CCTK_REAL INOUT ARRAY entropy, \ CCTK_REAL OUT ARRAY cs2, \ CCTK_REAL OUT ARRAY dedt, \ CCTK_REAL OUT ARRAY dpderho, \ CCTK_REAL OUT ARRAY dpdrhoe, \ CCTK_REAL OUT ARRAY munu, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_short WITH EOS_Omni_EOS_short LANGUAGE Fortran ################################################################################ # the following routines are needed for MHD con2prim using the 2D Z-P scheme void FUNCTION EOS_Omni_DEpsByDRho_DEpsByDPress(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY rho, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY DEpsByDRho, \ CCTK_REAL OUT ARRAY DEpsByDPress, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_DEpsByDRho_DEpsByDPress WITH EOS_Omni_EOS_DEpsByDRho_DEpsByDPress LANGUAGE Fortran ################################################################################ # the following routines are needed for MHD con2prim based on the Harm Code void FUNCTION EOS_Omni_press_f_hrho_v2_rhoW(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY hrho, \ CCTK_REAL IN ARRAY v2, \ CCTK_REAL IN ARRAY rhoW, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY press, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_press_f_hrho_v2_rhoW WITH EOS_Omni_EOS_Press_f_hrho_v2_rhoW LANGUAGE Fortran void FUNCTION EOS_Omni_dpdhrho_f_hrho_v2_rhoW(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY hrho, \ CCTK_REAL IN ARRAY v2, \ CCTK_REAL IN ARRAY rhoW, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY dpdhrho,\ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_dpdhrho_f_hrho_v2_rhoW WITH EOS_Omni_EOS_dpdhrho_f_hrho_v2_rhoW LANGUAGE Fortran void FUNCTION EOS_Omni_dpdv2_f_hrho_v2_rhoW(CCTK_INT IN eoskey, \ CCTK_INT IN havetemp, \ CCTK_REAL IN rf_precision, \ CCTK_INT IN npoints, \ CCTK_REAL IN ARRAY hrho, \ CCTK_REAL IN ARRAY v2, \ CCTK_REAL IN ARRAY rhoW, \ CCTK_REAL INOUT ARRAY eps, \ CCTK_REAL INOUT ARRAY temp, \ CCTK_REAL IN ARRAY ye, \ CCTK_REAL OUT ARRAY dpdv2, \ CCTK_INT OUT ARRAY keyerr, \ CCTK_INT OUT anyerr) PROVIDES FUNCTION EOS_Omni_dpdv2_f_hrho_v2_rhoW WITH EOS_Omni_EOS_dpdv2_f_hrho_v2_rhoW LANGUAGE Fortran ################################################################################