From 3ffde53b4c166aa8e15348abe433630a7e148ef4 Mon Sep 17 00:00:00 2001 From: Spencer Bryngelson Date: Wed, 2 Sep 2026 14:52:38 -0500 Subject: [PATCH 1/7] Add a Mie-Gruneisen backend as one dispatch over the reference curve Any Mie-Gruneisen EOS p = p_ref + rho Gamma_G (e - e_ref) is MFC's rho e = Gamma p + Pi with Gamma = 1/Gamma_G and Pi = rho e_ref - p_ref/Gamma_G, so the existing operators need only the coefficients and dPi/drho. s_eos_coefficients is the single dispatch: the Mie-Gruneisen case supplies a linear-Hugoniot reference curve (u_s = c0 + s u_p, linear release) and one shared conversion produces Gamma, Pi and dPi/drho; a second family is one more case. Stiffened and ideal gas return the constants resolved at init, and no caller invokes the routine yet, so every existing answer is bit-identical - 27-case gate. Parameters mg_rho0, mg_c0, mg_s, mg_G0 follow the flat per-fluid style; the validator requires all four under mie_gruneisen, forbids them otherwise, and forbids qv there because e_ref carries the formation energy. Thirty pytest checks pin the maths against finite differences and a numerically integrated isentrope. --- src/common/m_constants.fpp | 1 + src/common/m_derived_types.fpp | 4 + src/common/m_global_parameters_common.fpp | 5 ++ src/common/m_variables_conversion.fpp | 61 ++++++++++++- src/post_process/m_global_parameters.fpp | 4 + src/pre_process/m_global_parameters.fpp | 4 + src/simulation/m_global_parameters.fpp | 4 + toolchain/mfc/case_validator.py | 44 +++++++++- toolchain/mfc/params/definitions.py | 8 +- toolchain/mfc/test_case_validator.py | 37 ++++++++ toolchain/mfc/test_eos_mie_gruneisen.py | 100 ++++++++++++++++++++++ 11 files changed, 261 insertions(+), 11 deletions(-) create mode 100644 toolchain/mfc/test_eos_mie_gruneisen.py diff --git a/src/common/m_constants.fpp b/src/common/m_constants.fpp index 5f9088961..f317ef9bf 100644 --- a/src/common/m_constants.fpp +++ b/src/common/m_constants.fpp @@ -118,6 +118,7 @@ module m_constants !! cannot be auto-generated, so these are hand-written. integer, parameter :: eos_stiffened_gas = 1 integer, parameter :: eos_ideal_gas = 2 + integer, parameter :: eos_mie_gruneisen = 3 integer, parameter :: num_synth_shells_max = 50 !< Max energy shells for synthetic turbulence integer, parameter :: num_turb_sources_max = 10 !< Max Gaussian forcing zones for synthetic turbulence diff --git a/src/common/m_derived_types.fpp b/src/common/m_derived_types.fpp index d80c885b4..bca9ca5ee 100644 --- a/src/common/m_derived_types.fpp +++ b/src/common/m_derived_types.fpp @@ -394,6 +394,10 @@ module m_derived_types real(wp) :: qvp !< reference entropy per unit mass for SGEOS, q' (see Le Metayer (2004)) real(wp) :: G integer :: eos !< Equation of state selector (eos_* in m_constants) + real(wp) :: mg_rho0 !< Mie-Gruneisen reference density + real(wp) :: mg_c0 !< Mie-Gruneisen bulk sound speed at mg_rho0 + real(wp) :: mg_s !< Mie-Gruneisen linear Hugoniot slope, u_s = c0 + s u_p + real(wp) :: mg_gruneisen !< Gruneisen coefficient Gamma_G (not the shear modulus G) logical :: non_newtonian !< Enable Herschel-Bulkley non-Newtonian viscosity real(wp) :: K !< HB consistency index real(wp) :: nn !< HB flow behavior index diff --git a/src/common/m_global_parameters_common.fpp b/src/common/m_global_parameters_common.fpp index 3c230ff66..7c46f1458 100644 --- a/src/common/m_global_parameters_common.fpp +++ b/src/common/m_global_parameters_common.fpp @@ -54,6 +54,11 @@ module m_global_parameters_common !! written as p + B = const*rho**n. real(wp), allocatable, dimension(:) :: gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps $:GPU_DECLARE(create='[gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps]') + !> Per-fluid EOS selector and Mie-Gruneisen reference curve, resolved once at init like the arrays above + integer, allocatable, dimension(:) :: eoss + real(wp), allocatable, dimension(:) :: mg_rho0s, mg_c0s, mg_ss, mg_gruneisens + logical :: any_state_dependent_eos !< True when some fluid's coefficients vary with density; set at init + $:GPU_DECLARE(create='[eoss, mg_rho0s, mg_c0s, mg_ss, mg_gruneisens, any_state_dependent_eos]') !> @} !> @name Fluids participating in shear and bulk viscosity diff --git a/src/common/m_variables_conversion.fpp b/src/common/m_variables_conversion.fpp index f8bbd640f..feedc6894 100644 --- a/src/common/m_variables_conversion.fpp +++ b/src/common/m_variables_conversion.fpp @@ -28,8 +28,8 @@ module m_variables_conversion & s_compute_species_fraction, s_compute_mixture_coefficients, s_compute_energy, s_compute_speed_of_sound, f_bulk_modulus, & & f_pressure, f_phase_internal_energy, f_isentrope_exponent, f_isentrope_pressure, f_sg_thermal, f_pressure_on_isentrope, & & s_compute_mixture_coefficients_dt, s_compute_speed_of_sound_avg, s_compute_fast_magnetosonic_speed, f_elastic_energy, & - & f_hypoelastic_energy, f_relativistic_enthalpy, s_finalize_variables_conversion_module, gammas, isentrope_n, pi_infs, & - & isentrope_B, cvs, qvs, qvps + & f_hypoelastic_energy, f_relativistic_enthalpy, s_eos_coefficients, s_finalize_variables_conversion_module, gammas, & + & isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps real(wp), allocatable, dimension(:) :: Gs_vc integer, allocatable, dimension(:) :: bubrs_vc @@ -267,6 +267,8 @@ contains $:GPU_UPDATE(device='[enforce_density_floor_vc, preserve_qbmm_number_vc, lagrange_beta_index_vc]') @:ALLOCATE(gammas (1:num_fluids)) + @:ALLOCATE(eoss (1:num_fluids), mg_rho0s (1:num_fluids), mg_c0s (1:num_fluids), mg_ss (1:num_fluids), & + & mg_gruneisens (1:num_fluids)) @:ALLOCATE(isentrope_n (1:num_fluids)) @:ALLOCATE(pi_infs(1:num_fluids)) @:ALLOCATE(isentrope_B(1:num_fluids)) @@ -275,6 +277,7 @@ contains @:ALLOCATE(qvps (1:num_fluids)) @:ALLOCATE(Gs_vc (1:num_fluids)) + any_state_dependent_eos = .false. do i = 1, num_fluids gammas(i) = fluid_pp(i)%gamma isentrope_n(i) = f_isentrope_exponent(gammas(i)) @@ -292,8 +295,15 @@ contains cvs(i) = fluid_pp(i)%cv qvs(i) = fluid_pp(i)%qv qvps(i) = fluid_pp(i)%qvp + eoss(i) = fluid_pp(i)%eos + mg_rho0s(i) = fluid_pp(i)%mg_rho0 + mg_c0s(i) = fluid_pp(i)%mg_c0 + mg_ss(i) = fluid_pp(i)%mg_s + mg_gruneisens(i) = fluid_pp(i)%mg_gruneisen + if (fluid_pp(i)%eos == eos_mie_gruneisen) any_state_dependent_eos = .true. end do - $:GPU_UPDATE(device='[gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps, Gs_vc]') + $:GPU_UPDATE(device='[gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps, Gs_vc, eoss, mg_rho0s, mg_c0s, mg_ss, & + & mg_gruneisens, any_state_dependent_eos]') @:ALLOCATE(Res_vc(1:2, 1:max(1, Re_size_max))) Res_vc = dflt_real @@ -1173,7 +1183,7 @@ contains if (allocated(rho_sf)) deallocate (rho_sf, gamma_sf, pi_inf_sf) - @:DEALLOCATE(gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps, Gs_vc) + @:DEALLOCATE(gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps, Gs_vc, eoss, mg_rho0s, mg_c0s, mg_ss, mg_gruneisens) if (allocated(bubrs_vc)) then @:DEALLOCATE(bubrs_vc) end if @@ -1284,6 +1294,49 @@ contains end subroutine s_compute_energy + !> Coefficients of fluid i at density rho in the form rho e = Gamma p + Pi that every operator here consumes, with dPi/drho. Any + !! Mie-Gruneisen EOS p = p_ref + rho Gamma_G (e - e_ref) is this form with Gamma = 1/Gamma_G and Pi = rho e_ref - p_ref/Gamma_G; + !! a new family adds one case supplying its reference curve. Gamma_G is constant, so dGamma/drho = 0. Stiffened and ideal gas + !! keep the constants resolved at init, bit for bit. + subroutine s_eos_coefficients(rho, i, gamma, pi_inf, dpi) + + $:GPU_ROUTINE(parallelism='[seq]') + + real(wp), intent(in) :: rho + integer, intent(in) :: i + real(wp), intent(out) :: gamma, pi_inf, dpi + real(wp) :: mu, d, p_ref, e_ref, dp_dmu, de_dmu, G0 + + select case (eoss(i)) + case (eos_mie_gruneisen) + ! Linear-Hugoniot reference curve, u_s = c0 + s u_p: p_H = rho0 c0^2 mu (1 + mu)/(1 - (s - 1) mu)^2 on + ! compression, extended linearly on release, with the Hugoniot energy e_H = p_H mu/(2 rho0 (1 + mu)). + ! Pole at mu = 1/(s - 1); the validator warns when the initial state is near it. + mu = rho/mg_rho0s(i) - 1._wp + if (mu >= 0._wp) then + d = 1._wp - (mg_ss(i) - 1._wp)*mu + p_ref = mg_rho0s(i)*mg_c0s(i)**2*mu*(1._wp + mu)/(d*d) + dp_dmu = mg_rho0s(i)*mg_c0s(i)**2*((1._wp + 2._wp*mu)*d + 2._wp*(mg_ss(i) - 1._wp)*mu*(1._wp + mu))/(d*d*d) + else + p_ref = mg_rho0s(i)*mg_c0s(i)**2*mu + dp_dmu = mg_rho0s(i)*mg_c0s(i)**2 + end if + e_ref = p_ref*mu/(2._wp*mg_rho0s(i)*(1._wp + mu)) + de_dmu = (dp_dmu*mu*(1._wp + mu) + p_ref)/(2._wp*mg_rho0s(i)*(1._wp + mu)**2) + G0 = mg_gruneisens(i) + case default + gamma = gammas(i) + pi_inf = pi_infs(i) + dpi = 0._wp + return + end select + + gamma = 1._wp/G0 + pi_inf = rho*e_ref - p_ref/G0 + dpi = e_ref + (rho*de_dmu - dp_dmu/G0)/mg_rho0s(i) ! d/drho = (1/rho0) d/dmu + + end subroutine s_eos_coefficients + !> Exponent of the stiffened-gas isentrope p + B = const rho**n. Precomputed per fluid as isentrope_n. function f_isentrope_exponent(gamma) result(n) diff --git a/src/post_process/m_global_parameters.fpp b/src/post_process/m_global_parameters.fpp index 34effbcb9..725c92490 100644 --- a/src/post_process/m_global_parameters.fpp +++ b/src/post_process/m_global_parameters.fpp @@ -203,6 +203,10 @@ contains ! Fluids physical parameters (post-specific; G = dflt_real differs from pre/sim) do i = 1, num_fluids_max fluid_pp(i)%eos = eos_stiffened_gas + fluid_pp(i)%mg_rho0 = dflt_real + fluid_pp(i)%mg_c0 = dflt_real + fluid_pp(i)%mg_s = dflt_real + fluid_pp(i)%mg_gruneisen = dflt_real fluid_pp(i)%gamma = dflt_real fluid_pp(i)%pi_inf = dflt_real fluid_pp(i)%cv = 0._wp diff --git a/src/pre_process/m_global_parameters.fpp b/src/pre_process/m_global_parameters.fpp index d4a5c559b..2d75411c7 100644 --- a/src/pre_process/m_global_parameters.fpp +++ b/src/pre_process/m_global_parameters.fpp @@ -387,6 +387,10 @@ contains ! Fluids physical parameters do i = 1, num_fluids_max fluid_pp(i)%eos = eos_stiffened_gas + fluid_pp(i)%mg_rho0 = dflt_real + fluid_pp(i)%mg_c0 = dflt_real + fluid_pp(i)%mg_s = dflt_real + fluid_pp(i)%mg_gruneisen = dflt_real fluid_pp(i)%gamma = dflt_real fluid_pp(i)%pi_inf = dflt_real fluid_pp(i)%cv = 0._wp diff --git a/src/simulation/m_global_parameters.fpp b/src/simulation/m_global_parameters.fpp index 1d8033ae1..ba514a001 100644 --- a/src/simulation/m_global_parameters.fpp +++ b/src/simulation/m_global_parameters.fpp @@ -446,6 +446,10 @@ contains ! Fluids physical parameters (sim-specific; Re(:) and G=0._wp differ from post) do i = 1, num_fluids_max fluid_pp(i)%eos = eos_stiffened_gas + fluid_pp(i)%mg_rho0 = dflt_real + fluid_pp(i)%mg_c0 = dflt_real + fluid_pp(i)%mg_s = dflt_real + fluid_pp(i)%mg_gruneisen = dflt_real fluid_pp(i)%gamma = dflt_real fluid_pp(i)%pi_inf = dflt_real fluid_pp(i)%cv = 0._wp diff --git a/toolchain/mfc/case_validator.py b/toolchain/mfc/case_validator.py index 0dbe510ce..acb10cdcb 100644 --- a/toolchain/mfc/case_validator.py +++ b/toolchain/mfc/case_validator.py @@ -42,10 +42,12 @@ "check_eos_selector": { "title": "Equation of State Selector", "category": "Thermodynamic Constraints", - "math": r"\Pi_\infty = 0 \;\; \text{for an ideal gas}", + "math": r"\rho e = \Gamma\,p + \Pi(\rho), \quad \Gamma = 1/\Gamma_G, \quad \Pi(\rho) = \rho\, e_{\mathrm{ref}}(\rho) - p_{\mathrm{ref}}(\rho)/\Gamma_G", "explanation": ( - "An ideal gas is the stiffened-gas equation of state with no stiffness, so selecting it and also supplying a " - "nonzero pi_inf is contradictory. The selector determines the stiffness, not the input." + "Every backend supplies the same two coefficients. An ideal gas is the stiffened-gas form with no stiffness, so " + "selecting it and also supplying a nonzero pi_inf is contradictory. Mie-Gruneisen supplies a linear-Hugoniot " + "reference curve (mg_rho0, mg_c0, mg_s, mg_gruneisen) whose reference energy already carries the formation energy, so " + "qv must be zero; its parameters are read only when that backend is selected." ), "references": ["Wilfong26"], }, @@ -951,18 +953,52 @@ def check_eos_selector(self): return eos_names = CONSTRAINTS["fluid_pp(1)%eos"]["names"] eos_ideal_gas = eos_names["ideal_gas"] + eos_mg = eos_names["mie_gruneisen"] eos_values = set(eos_names.values()) bub_fac = 1 if self.get("bubbles_euler", "F") == "T" else 0 for i in range(1, num_fluids + 1 + bub_fac): eos = self.get(f"fluid_pp({i})%eos") + mg = {k: self.get(f"fluid_pp({i})%mg_{k}") for k in ("rho0", "c0", "s", "gruneisen")} + # An unset selector is stiffened gas, so stray mg_* parameters must be caught before the early return. + self.prohibit( + (eos if eos is not None else eos_names["stiffened_gas"]) != eos_mg and any(v is not None for v in mg.values()), + f"fluid_pp({i})%mg_* are only read when fluid_pp({i})%eos = 'mie_gruneisen'", + ) if eos is None: continue - self.prohibit(eos not in eos_values, f"fluid_pp({i})%eos must be 'stiffened_gas' or 'ideal_gas'") + self.prohibit(eos not in eos_values, f"fluid_pp({i})%eos must be 'stiffened_gas', 'ideal_gas' or 'mie_gruneisen'") pi_inf = self.get(f"fluid_pp({i})%pi_inf") self.prohibit( eos == eos_ideal_gas and pi_inf is not None and pi_inf != 0, f"fluid_pp({i})%eos = 'ideal_gas' requires fluid_pp({i})%pi_inf = 0 (an ideal gas has no stiffness)", ) + self.prohibit( + eos == eos_mg and any(v is None for v in mg.values()), + f"fluid_pp({i})%eos = 'mie_gruneisen' requires fluid_pp({i})%mg_rho0, mg_c0, mg_s and mg_gruneisen", + ) + if eos == eos_mg and all(v is not None for v in mg.values()): + self.prohibit(mg["rho0"] <= 0 or mg["c0"] <= 0 or mg["gruneisen"] <= 0, f"fluid_pp({i})%mg_rho0, mg_c0 and mg_gruneisen must be positive") + self.prohibit(mg["s"] < 1, f"fluid_pp({i})%mg_s must be >= 1 (u_s = c0 + s u_p; s < 1 gives no shock)") + qv = self.get(f"fluid_pp({i})%qv") + self.prohibit( + qv is not None and qv != 0, + f"fluid_pp({i})%qv must be 0 with eos = 'mie_gruneisen'; the reference energy e_ref(rho) carries it", + ) + # The linear Hugoniot has a pole at mu = 1/(s - 1), its maximum compression. Only the initial + # state can be checked here; the solver does not guard the runtime density. + if mg["s"] > 1: + rho_pole = mg["rho0"] * (1.0 + 1.0 / (mg["s"] - 1.0)) + num_patches = self.get("num_patches", 0) or 0 + for j in range(1, num_patches + 1): + ar = self.get(f"patch_icpp({j})%alpha_rho({i})") + a = self.get(f"patch_icpp({j})%alpha({i})") + if not all(isinstance(v, (int, float)) for v in (ar, a)) or a <= 0: + continue + self.warn( + ar / a > 0.8 * rho_pole, + f"patch_icpp({j}) starts fluid {i} at rho = {ar/a:.4g}, within 20% of the Mie-Gruneisen " + f"Hugoniot pole rho0*s/(s-1) = {rho_pole:.4g}; the reference curve is unphysical beyond it", + ) def check_stiffened_eos(self): """Checks constraints on stiffened equation of state fluids parameters""" diff --git a/toolchain/mfc/params/definitions.py b/toolchain/mfc/params/definitions.py index 15f496211..48a3a0805 100644 --- a/toolchain/mfc/params/definitions.py +++ b/toolchain/mfc/params/definitions.py @@ -896,8 +896,8 @@ def _load(): _r(f"{px}sph_har_coeff({ll},{mm})", REAL) # Values must match the hand-written eos_* constants in src/common/m_constants.fpp. - _EOS_NAMES = {"stiffened_gas": 1, "ideal_gas": 2} - _EOS_VALUE_LABELS = {1: "stiffened-gas", 2: "ideal-gas"} + _EOS_NAMES = {"stiffened_gas": 1, "ideal_gas": 2, "mie_gruneisen": 3} + _EOS_VALUE_LABELS = {1: "stiffened-gas", 2: "ideal-gas", 3: "Mie-Gruneisen"} # fluid_pp (10 fluids) # Members present in physical_parameters: gamma, pi_inf, Re, cv, qv, qvp, G. @@ -905,10 +905,12 @@ def _load(): # by upstream #1085/#1093 — they must NOT be registered (namelist read would crash). for f in range(1, NF + 1): px = f"fluid_pp({f})%" - CONSTRAINTS[f"fluid_pp({f})%eos"] = {"choices": [1, 2], "value_labels": _EOS_VALUE_LABELS, "names": _EOS_NAMES} + CONSTRAINTS[f"fluid_pp({f})%eos"] = {"choices": [1, 2, 3], "value_labels": _EOS_VALUE_LABELS, "names": _EOS_NAMES} for a, sym in [("gamma", r"\f$\gamma_k\f$"), ("pi_inf", r"\f$\pi_{\infty,k}\f$"), ("cv", r"\f$c_{v,k}\f$"), ("qv", r"\f$q_{v,k}\f$"), ("qvp", r"\f$q'_{v,k}\f$")]: _r(f"{px}{a}", REAL, math=sym) _r(f"{px}eos", INT, math=r"\f$\mathrm{EOS}_k\f$") + for a, sym in [("mg_rho0", r"\f$\rho_{0,k}\f$"), ("mg_c0", r"\f$c_{0,k}\f$"), ("mg_s", r"\f$s_k\f$"), ("mg_gruneisen", r"\f$\Gamma_{G,k}\f$")]: + _r(f"{px}{a}", REAL, math=sym) _r(f"{px}G", REAL, {"hypoelasticity"}, math=r"\f$G_k\f$") _r(f"{px}Re(1)", REAL, {"viscosity"}, math=r"\f$\mathrm{Re}_k\f$ (shear)") _r(f"{px}Re(2)", REAL, {"viscosity"}, math=r"\f$\mathrm{Re}_k\f$ (bulk)") diff --git a/toolchain/mfc/test_case_validator.py b/toolchain/mfc/test_case_validator.py index 4cb7fe6c9..ce0304189 100644 --- a/toolchain/mfc/test_case_validator.py +++ b/toolchain/mfc/test_case_validator.py @@ -389,3 +389,40 @@ def test_not_tripped_without_alt_soundspeed(self): if __name__ == "__main__": unittest.main() + + +class TestMieGruneisenSelector(ConstraintTestCase): + """fluid_pp(i)%eos = 'mie_gruneisen' requires its reference curve and forbids what it makes redundant.""" + + MG = {"fluid_pp(1)%eos": 3, "fluid_pp(1)%mg_rho0": 8930.0, "fluid_pp(1)%mg_c0": 3940.0, "fluid_pp(1)%mg_s": 1.49, "fluid_pp(1)%mg_gruneisen": 2.0} + + def warnings_for(self, params): + validator = CaseValidator(dict(params)) + validator.validate("simulation") + return "\n".join(validator.warnings) + + def test_accepts_complete_curve(self): + self.assertAccepts({**BASE, **self.MG, "fluid_pp(1)%qv": 0.0}) + + def test_requires_all_four_parameters(self): + p = {**BASE, **self.MG} + del p["fluid_pp(1)%mg_s"] + self.assertRejects(p, "requires fluid_pp(1)%mg_rho0, mg_c0, mg_s and mg_gruneisen") + + def test_rejects_parameters_under_stiffened_gas(self): + self.assertRejects({**BASE, "fluid_pp(1)%mg_c0": 3940.0}, "only read when fluid_pp(1)%eos = 'mie_gruneisen'") + + def test_rejects_formation_energy(self): + self.assertRejects({**BASE, **self.MG, "fluid_pp(1)%qv": 1.0e5}, "qv must be 0 with eos = 'mie_gruneisen'") + + def test_rejects_slope_below_one(self): + self.assertRejects({**BASE, **self.MG, "fluid_pp(1)%mg_s": 0.9}, "mg_s must be >= 1") + + def test_warns_near_the_hugoniot_pole(self): + # rho_pole = rho0 * s/(s-1) = 8930 * 1.49/0.49 ~ 27157; start at 90% of it + p = {**BASE, **self.MG, "patch_icpp(1)%alpha(1)": 1.0, "patch_icpp(1)%alpha_rho(1)": 0.9 * 8930.0 * 1.49 / 0.49} + self.assertIn("Hugoniot pole", self.warnings_for(p)) + + def test_no_pole_warning_at_reference_density(self): + p = {**BASE, **self.MG, "patch_icpp(1)%alpha(1)": 1.0, "patch_icpp(1)%alpha_rho(1)": 8930.0} + self.assertNotIn("Hugoniot pole", self.warnings_for(p)) diff --git a/toolchain/mfc/test_eos_mie_gruneisen.py b/toolchain/mfc/test_eos_mie_gruneisen.py new file mode 100644 index 000000000..274987b06 --- /dev/null +++ b/toolchain/mfc/test_eos_mie_gruneisen.py @@ -0,0 +1,100 @@ +"""Manufactured checks for the Mie-Gruneisen backend in m_variables_conversion. + +The Fortran is s_eos_coefficients: a linear-Hugoniot reference curve mapped onto MFC's +rho e = Gamma p + Pi form. These tests pin the maths that mapping rests on, without a solver run. +""" + +import pytest + + +def mg_reference(rho, rho0, c0, s): + """p_ref, e_ref and their d/drho for the linear-Hugoniot curve, as the Fortran computes them.""" + mu = rho / rho0 - 1.0 + if mu >= 0.0: + d = 1.0 - (s - 1.0) * mu + p = rho0 * c0**2 * mu * (1.0 + mu) / d**2 + dp_dmu = rho0 * c0**2 * ((1.0 + 2.0 * mu) * d + 2.0 * (s - 1.0) * mu * (1.0 + mu)) / d**3 + else: + p = rho0 * c0**2 * mu + dp_dmu = rho0 * c0**2 + e = p * mu / (2.0 * rho0 * (1.0 + mu)) + de_dmu = (dp_dmu * mu * (1.0 + mu) + p) / (2.0 * rho0 * (1.0 + mu) ** 2) + return p, e, dp_dmu / rho0, de_dmu / rho0 + + +def eos_coefficients(rho, rho0, c0, s, G0): + """Gamma, Pi, dPi/drho - the same three numbers s_eos_coefficients returns.""" + p, e, dp, de = mg_reference(rho, rho0, c0, s) + return 1.0 / G0, rho * e - p / G0, e + rho * de - dp / G0 + + +# Copper-like, no calibrated material: order-of-magnitude values only. +RHO0, C0, S, G0 = 8930.0, 3940.0, 1.49, 2.0 +STATES = [(r, p) for r in (7500.0, 8930.0, 9800.0, 11000.0) for p in (1e8, 5e9, 2e10)] + + +def _fd(f, x, h): + return (f(x + h) - f(x - h)) / (2.0 * h) + + +@pytest.mark.parametrize("rho", [7500.0, 8931.0, 9800.0, 11000.0]) +def test_reference_curve_derivatives(rho): + """The analytic dp_ref/drho and de_ref/drho match central differences of the curve itself.""" + _, _, dp, de = mg_reference(rho, RHO0, C0, S) + h = rho * 1e-6 + dp_fd = _fd(lambda r: mg_reference(r, RHO0, C0, S)[0], rho, h) + de_fd = _fd(lambda r: mg_reference(r, RHO0, C0, S)[1], rho, h) + assert dp == pytest.approx(dp_fd, rel=1e-8) + assert de == pytest.approx(de_fd, rel=1e-8) + + +@pytest.mark.parametrize("rho,pres", STATES) +def test_gamma_pi_form_is_the_mie_gruneisen_pressure(rho, pres): + """rho e = Gamma p + Pi inverts to exactly p = p_ref + rho Gamma_G (e - e_ref).""" + gamma, pi, _ = eos_coefficients(rho, RHO0, C0, S, G0) + e = (gamma * pres + pi) / rho # the energy MFC stores for this p + p_ref, e_ref, _, _ = mg_reference(rho, RHO0, C0, S) + p_mg = p_ref + rho * G0 * (e - e_ref) + assert p_mg == pytest.approx(pres, rel=1e-12) + + +@pytest.mark.parametrize("rho,pres", STATES) +def test_sound_speed_matches_isentrope(rho, pres): + """c^2 = [((Gamma+1)p + Pi)/rho - dPi/drho - p dGamma/drho]/Gamma equals (dp/drho)_s, integrated numerically.""" + gamma, pi, dpi = eos_coefficients(rho, RHO0, C0, S, G0) + c2 = (((gamma + 1.0) * pres + pi) / rho - dpi) / gamma # dGamma/drho = 0 for constant Gamma_G + + # Walk the isentrope: de = p/rho^2 drho, then re-evaluate p at the new state. + e = (gamma * pres + pi) / rho + h = rho * 1e-6 + + def p_at(r, e_): + g, pi_, _ = eos_coefficients(r, RHO0, C0, S, G0) + return (r * e_ - pi_) / g + + c2_fd = (p_at(rho + h, e + pres / rho**2 * h) - p_at(rho - h, e - pres / rho**2 * h)) / (2.0 * h) + assert c2 > 0.0 + assert c2 == pytest.approx(c2_fd, rel=1e-6) + + +def test_stiffened_gas_is_the_degenerate_member(): + """p_ref = -gamma pi_inf, e_ref = 0, Gamma_G = gamma - 1 reproduces MFC's stored gammas and pi_infs.""" + gam, pinf = 4.4, 6.0e8 # water-like stiffened gas + Gamma_G = gam - 1.0 + p_ref, e_ref = -gam * pinf, 0.0 + rho = 1000.0 + Gamma = 1.0 / Gamma_G + Pi = rho * e_ref - p_ref / Gamma_G + assert Gamma == pytest.approx(1.0 / (gam - 1.0), rel=1e-15) # what MFC stores as gammas(i) + assert Pi == pytest.approx(gam * pinf / (gam - 1.0), rel=1e-15) # what MFC stores as pi_infs(i) + + +def test_release_branch_is_c1_at_rho0(): + """Compression and release branches meet with matching p_ref and dp_ref at mu = 0.""" + eps = 1e-9 * RHO0 + p_up, _, dp_up, _ = mg_reference(RHO0 + eps, RHO0, C0, S) + p_dn, _, dp_dn, _ = mg_reference(RHO0 - eps, RHO0, C0, S) + assert p_up == pytest.approx(C0**2 * eps, rel=1e-6) # linear through zero from above ... + assert p_dn == pytest.approx(-(C0**2) * eps, rel=1e-6) # ... and from below, same slope + assert dp_up == pytest.approx(dp_dn, rel=1e-6) + assert dp_up == pytest.approx(C0**2, rel=1e-6) # bulk modulus rho0 c0^2 over rho0 From ebdc35ee636e67354c8a7d30856e8f91f3f11700 Mon Sep 17 00:00:00 2001 From: Spencer Bryngelson Date: Wed, 2 Sep 2026 20:57:11 -0500 Subject: [PATCH 2/7] Cases set only the parameters their equation of state reads A Mie-Gruneisen fluid has neither gamma, pi_inf nor qv, and an ideal gas has no pi_inf: the validator now refuses them, and the suite's base fluid and every example drop the dead values. The ideal-gas half duplicates #1808 and drops out once it merges. --- examples/1D_advection_convergence/case.py | 2 -- examples/1D_brio_wu/case.py | 1 - examples/1D_brio_wu_hlld/case.py | 1 - examples/1D_brio_wu_rmhd/case.py | 1 - examples/1D_convergence/case.py | 2 -- examples/1D_dai_woodward/case.py | 1 - examples/1D_dai_woodward_hlld/case.py | 1 - examples/1D_euler_convergence/case.py | 1 - examples/1D_hypo_2materials/case.py | 1 - examples/1D_kapilashocktube/case.py | 1 - examples/1D_laxshocktube/case.py | 1 - examples/1D_mhd_smooth_alfven_wave/case.py | 1 - examples/1D_shuosher_analytical/case.py | 1 - examples/1D_shuosher_old/case.py | 1 - examples/1D_shuosher_teno5/case.py | 1 - examples/1D_shuosher_teno7/case.py | 1 - examples/1D_shuosher_wenojs5/case.py | 1 - examples/1D_shuosher_wenom5/case.py | 1 - examples/1D_shuosher_wenoz5/case.py | 1 - examples/1D_sod_convergence/case.py | 1 - examples/1D_sodshocktube/case.py | 1 - examples/1D_sodshocktube_muscl/case.py | 1 - examples/1D_titarevtorro/case.py | 1 - examples/1D_titarevtorro_analytical/case.py | 1 - examples/1D_vacuum/case.py | 1 - examples/1D_vacuum_restart/case.py | 1 - examples/2D_GreshoVortex/case.py | 1 - examples/2D_IGR_2fluid/case.py | 2 -- examples/2D_IGR_triple_point/case.py | 2 -- examples/2D_TaylorGreenVortex/case.py | 1 - examples/2D_acoustic_broadband/case.py | 1 - examples/2D_acoustic_pulse/case.py | 1 - examples/2D_acoustic_pulse_analytical/case.py | 1 - examples/2D_advection/case.py | 1 - examples/2D_advection_convergence/case.py | 1 - examples/2D_advection_muscl/case.py | 1 - examples/2D_axisym_shockbubble/case.py | 2 -- examples/2D_backward_facing_step/case.py | 1 - examples/2D_bingham_poiseuille_nn/case.py | 1 - examples/2D_forward_facing_step/case.py | 1 - examples/2D_hardcoded_ic/case.py | 1 - .../2D_herschel_bulkley_poiseuille_nn/case.py | 1 - examples/2D_hypo_shear_contact/case.py | 2 -- examples/2D_ibm/case.py | 1 - examples/2D_ibm_airfoil/case.py | 2 -- examples/2D_ibm_cfl_dt/case.py | 1 - examples/2D_ibm_ellipse/case.py | 1 - examples/2D_ibm_multiphase/case.py | 2 -- examples/2D_ibm_poiseuille_nn/case.py | 1 - examples/2D_ibm_stl_MFCCharacter/case.py | 1 - examples/2D_ibm_stl_test/case.py | 1 - examples/2D_ibm_stl_wedge/case.py | 1 - .../2D_ibm_viscous_drag_over_cylinder/case.py | 1 - examples/2D_icpp_stl_circle/case.py | 1 - examples/2D_isentropicvortex/case.py | 1 - .../2D_isentropicvortex_analytical/case.py | 1 - examples/2D_jet/case.py | 2 -- examples/2D_kelvin_helmholtz/case.py | 2 -- examples/2D_lagrange_bubblescreen/case.py | 1 - examples/2D_lagrange_in_crossflow/case.py | 1 - examples/2D_lagrange_rising_bubble/case.py | 1 - examples/2D_laplace_pressure_jump/case.py | 1 - examples/2D_lid_driven_cavity/case.py | 2 -- examples/2D_lid_driven_cavity_nn/case.py | 2 -- examples/2D_mhd_magnetic_vortex/case.py | 1 - examples/2D_mhd_rotor/case.py | 1 - .../2D_mibm_cylinder_in_cross_flow/case.py | 1 - examples/2D_mibm_particle_cloud/case.py | 1 - examples/2D_mibm_shock_cylinder/case.py | 1 - examples/2D_moving_lag_bubs/case.py | 1 - examples/2D_orszag_tang/case.py | 1 - .../2D_orszag_tang_hyper_cleaning/case.py | 1 - examples/2D_patch_modal_shape/case.py | 2 -- examples/2D_patch_modal_shape_exp/case.py | 2 -- examples/2D_poiseuille_nn/case.py | 1 - examples/2D_poiseuille_thickening_nn/case.py | 1 - examples/2D_rayleigh_taylor/case.py | 2 -- examples/2D_richtmyer_meshkov/case.py | 2 -- examples/2D_riemann_test/case.py | 1 - examples/2D_riemann_test_muscl/case.py | 1 - examples/2D_shock_cloud_rmhd/case.py | 1 - examples/2D_shockbubble/case.py | 2 -- examples/2D_shockdroplet/case.py | 1 - examples/2D_shockdroplet_muscl/case.py | 1 - examples/2D_synthetic_turbulence/case.py | 2 -- examples/2D_triple_point/case.py | 2 -- examples/2D_tumbling_rectangle/case.py | 1 - examples/2D_viscous_shock_tube/case.py | 2 -- examples/2D_zero_circ_vortex/case.py | 1 - .../2D_zero_circ_vortex_analytical/case.py | 1 - examples/3D_IGR_33jet/case.py | 1 - examples/3D_IGR_TaylorGreenVortex/case.py | 1 - .../3D_IGR_TaylorGreenVortex_nvidia/case.py | 1 - examples/3D_IGR_jet/case.py | 2 -- examples/3D_IGR_jet_1fluid/case.py | 1 - examples/3D_TaylorGreenVortex/case.py | 1 - .../3D_TaylorGreenVortex_analytical/case.py | 1 - examples/3D_advection_convergence/case.py | 1 - examples/3D_brio_wu/case.py | 1 - examples/3D_ibm_bowshock/case.py | 1 - examples/3D_ibm_stl_ellipsoid/case.py | 1 - examples/3D_ibm_stl_pyramid/case.py | 1 - examples/3D_ibm_stl_test/case.py | 1 - examples/3D_icpp_stl_cube/case.py | 1 - examples/3D_lagrange_bubblescreen/case.py | 1 - examples/3D_lagrange_shbubcollapse/case.py | 1 - examples/3D_mibm_periodic_collision/case.py | 1 - .../3D_mibm_sphere_head_on_collision/case.py | 1 - examples/3D_moving_lag_particles/case.py | 1 - examples/3D_patch_spherical_harmonic/case.py | 2 -- examples/3D_performance_test/case.py | 1 - examples/3D_rayleigh_taylor/case.py | 2 -- examples/3D_rayleigh_taylor_muscl/case.py | 2 -- examples/3D_recovering_sphere/case.py | 1 - examples/3D_rotating_sphere/case.py | 1 - examples/3D_sphbubcollapse/case.py | 1 - examples/3D_turb_mixing/case.py | 1 - toolchain/mfc/case_validator.py | 21 +++++++++-------- .../mfc/params_tests/test_eos_selector.py | 6 +++-- toolchain/mfc/test/case.py | 1 - toolchain/mfc/test/cases.py | 23 +------------------ toolchain/mfc/test_case_validator.py | 20 +++++++++++++--- 122 files changed, 33 insertions(+), 179 deletions(-) diff --git a/examples/1D_advection_convergence/case.py b/examples/1D_advection_convergence/case.py index 8da9db09d..d661dc887 100644 --- a/examples/1D_advection_convergence/case.py +++ b/examples/1D_advection_convergence/case.py @@ -95,10 +95,8 @@ "patch_icpp(1)%alpha(2)": "0.5 - 0.2 * sin(2.0 * pi * x / lx)", "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, **scheme_params, } ) diff --git a/examples/1D_brio_wu/case.py b/examples/1D_brio_wu/case.py index f94ed1350..b8639f924 100644 --- a/examples/1D_brio_wu/case.py +++ b/examples/1D_brio_wu/case.py @@ -74,7 +74,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (2.0e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_brio_wu_hlld/case.py b/examples/1D_brio_wu_hlld/case.py index 1dc2fbd2d..da26c45d1 100644 --- a/examples/1D_brio_wu_hlld/case.py +++ b/examples/1D_brio_wu_hlld/case.py @@ -75,7 +75,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (2.0e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_brio_wu_rmhd/case.py b/examples/1D_brio_wu_rmhd/case.py index 73020d18d..989ddb842 100644 --- a/examples/1D_brio_wu_rmhd/case.py +++ b/examples/1D_brio_wu_rmhd/case.py @@ -76,7 +76,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (2.0e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_convergence/case.py b/examples/1D_convergence/case.py index 5be7a4f13..140c3ed3e 100755 --- a/examples/1D_convergence/case.py +++ b/examples/1D_convergence/case.py @@ -74,10 +74,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_dai_woodward/case.py b/examples/1D_dai_woodward/case.py index 8b0ae4e6f..acab1b119 100644 --- a/examples/1D_dai_woodward/case.py +++ b/examples/1D_dai_woodward/case.py @@ -83,7 +83,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / ((5.0 / 3.0) - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, }, ) ) diff --git a/examples/1D_dai_woodward_hlld/case.py b/examples/1D_dai_woodward_hlld/case.py index 1b51af0f8..aa068f3bb 100644 --- a/examples/1D_dai_woodward_hlld/case.py +++ b/examples/1D_dai_woodward_hlld/case.py @@ -84,7 +84,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / ((5.0 / 3.0) - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, }, ) ) diff --git a/examples/1D_euler_convergence/case.py b/examples/1D_euler_convergence/case.py index eacb56661..7d84d611f 100644 --- a/examples/1D_euler_convergence/case.py +++ b/examples/1D_euler_convergence/case.py @@ -100,7 +100,6 @@ "patch_icpp(1)%alpha(1)": 1.0, "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, **scheme_params, } ) diff --git a/examples/1D_hypo_2materials/case.py b/examples/1D_hypo_2materials/case.py index 86a81365f..a6920ce36 100755 --- a/examples/1D_hypo_2materials/case.py +++ b/examples/1D_hypo_2materials/case.py @@ -83,7 +83,6 @@ "fluid_pp(1)%G": 1.0e09, "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%G": 0.0, } ) diff --git a/examples/1D_kapilashocktube/case.py b/examples/1D_kapilashocktube/case.py index aa43b5f36..00f35288f 100755 --- a/examples/1D_kapilashocktube/case.py +++ b/examples/1D_kapilashocktube/case.py @@ -69,7 +69,6 @@ "fluid_pp(1)%pi_inf": 4.4e00 * 6.0e08 / (4.4e00 - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/1D_laxshocktube/case.py b/examples/1D_laxshocktube/case.py index 4d5ab6413..8612c099f 100644 --- a/examples/1D_laxshocktube/case.py +++ b/examples/1D_laxshocktube/case.py @@ -68,7 +68,6 @@ # air: an ideal gas, so it carries no stiffness and pi_inf is not read "fluid_pp(1)%eos": "ideal_gas", "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_mhd_smooth_alfven_wave/case.py b/examples/1D_mhd_smooth_alfven_wave/case.py index ab19a23eb..52bae0383 100644 --- a/examples/1D_mhd_smooth_alfven_wave/case.py +++ b/examples/1D_mhd_smooth_alfven_wave/case.py @@ -62,7 +62,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (5.0 / 3.0 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_shuosher_analytical/case.py b/examples/1D_shuosher_analytical/case.py index 36c360e8c..77470f16b 100644 --- a/examples/1D_shuosher_analytical/case.py +++ b/examples/1D_shuosher_analytical/case.py @@ -69,7 +69,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_shuosher_old/case.py b/examples/1D_shuosher_old/case.py index b07243a48..be0d226f0 100644 --- a/examples/1D_shuosher_old/case.py +++ b/examples/1D_shuosher_old/case.py @@ -70,7 +70,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_shuosher_teno5/case.py b/examples/1D_shuosher_teno5/case.py index 3c2e9fe75..b2bc388d4 100644 --- a/examples/1D_shuosher_teno5/case.py +++ b/examples/1D_shuosher_teno5/case.py @@ -72,7 +72,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_shuosher_teno7/case.py b/examples/1D_shuosher_teno7/case.py index 1eb9b88ca..3fdc2d03e 100644 --- a/examples/1D_shuosher_teno7/case.py +++ b/examples/1D_shuosher_teno7/case.py @@ -72,7 +72,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_shuosher_wenojs5/case.py b/examples/1D_shuosher_wenojs5/case.py index 9ca624bdb..f833c6592 100644 --- a/examples/1D_shuosher_wenojs5/case.py +++ b/examples/1D_shuosher_wenojs5/case.py @@ -71,7 +71,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_shuosher_wenom5/case.py b/examples/1D_shuosher_wenom5/case.py index 1fca5b958..af8f76c64 100644 --- a/examples/1D_shuosher_wenom5/case.py +++ b/examples/1D_shuosher_wenom5/case.py @@ -71,7 +71,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_shuosher_wenoz5/case.py b/examples/1D_shuosher_wenoz5/case.py index 990ba033e..323806701 100644 --- a/examples/1D_shuosher_wenoz5/case.py +++ b/examples/1D_shuosher_wenoz5/case.py @@ -71,7 +71,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_sod_convergence/case.py b/examples/1D_sod_convergence/case.py index ee0338229..43021676a 100644 --- a/examples/1D_sod_convergence/case.py +++ b/examples/1D_sod_convergence/case.py @@ -99,7 +99,6 @@ "patch_icpp(2)%alpha(1)": 1.0, "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, **scheme_params, } ) diff --git a/examples/1D_sodshocktube/case.py b/examples/1D_sodshocktube/case.py index 6c33032b6..02b85761f 100755 --- a/examples/1D_sodshocktube/case.py +++ b/examples/1D_sodshocktube/case.py @@ -70,7 +70,6 @@ # air: an ideal gas, so it carries no stiffness and pi_inf is not read "fluid_pp(1)%eos": "ideal_gas", "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_sodshocktube_muscl/case.py b/examples/1D_sodshocktube_muscl/case.py index 30387944c..e4e6724d7 100755 --- a/examples/1D_sodshocktube_muscl/case.py +++ b/examples/1D_sodshocktube_muscl/case.py @@ -65,7 +65,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_titarevtorro/case.py b/examples/1D_titarevtorro/case.py index 29cbeff6d..2d9bc2f25 100644 --- a/examples/1D_titarevtorro/case.py +++ b/examples/1D_titarevtorro/case.py @@ -68,7 +68,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_titarevtorro_analytical/case.py b/examples/1D_titarevtorro_analytical/case.py index fef323f01..e743e979f 100644 --- a/examples/1D_titarevtorro_analytical/case.py +++ b/examples/1D_titarevtorro_analytical/case.py @@ -67,7 +67,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/1D_vacuum/case.py b/examples/1D_vacuum/case.py index f9e688d9f..1cf87170f 100644 --- a/examples/1D_vacuum/case.py +++ b/examples/1D_vacuum/case.py @@ -69,7 +69,6 @@ "fluid_pp(1)%pi_inf": 4.4e00 * 6.0e08 / (4.4e00 - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/1D_vacuum_restart/case.py b/examples/1D_vacuum_restart/case.py index 067b9fbc0..2a2d4de0c 100644 --- a/examples/1D_vacuum_restart/case.py +++ b/examples/1D_vacuum_restart/case.py @@ -69,7 +69,6 @@ "fluid_pp(1)%pi_inf": 4.4e00 * 6.0e08 / (4.4e00 - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_GreshoVortex/case.py b/examples/2D_GreshoVortex/case.py index 0b9240504..1d730f6ab 100644 --- a/examples/2D_GreshoVortex/case.py +++ b/examples/2D_GreshoVortex/case.py @@ -81,7 +81,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_IGR_2fluid/case.py b/examples/2D_IGR_2fluid/case.py index b4967a056..a0451aeef 100644 --- a/examples/2D_IGR_2fluid/case.py +++ b/examples/2D_IGR_2fluid/case.py @@ -69,11 +69,9 @@ # Fluid Parameters (Gas) "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0e00, "fluid_pp(1)%Re(1)": 1e5, "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1e5, # Ambient pressure "patch_icpp(1)%geometry": 3, diff --git a/examples/2D_IGR_triple_point/case.py b/examples/2D_IGR_triple_point/case.py index 6efbb9cf6..ff78d73e9 100755 --- a/examples/2D_IGR_triple_point/case.py +++ b/examples/2D_IGR_triple_point/case.py @@ -96,10 +96,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0 / (1.5 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(2)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_TaylorGreenVortex/case.py b/examples/2D_TaylorGreenVortex/case.py index e82cf7089..231a30028 100644 --- a/examples/2D_TaylorGreenVortex/case.py +++ b/examples/2D_TaylorGreenVortex/case.py @@ -71,7 +71,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, # Shear viscosity of STD air "fluid_pp(1)%Re(1)": 1 / Mu, } diff --git a/examples/2D_acoustic_broadband/case.py b/examples/2D_acoustic_broadband/case.py index b61aa6e86..ef7e4db43 100644 --- a/examples/2D_acoustic_broadband/case.py +++ b/examples/2D_acoustic_broadband/case.py @@ -78,7 +78,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, } ) ) diff --git a/examples/2D_acoustic_pulse/case.py b/examples/2D_acoustic_pulse/case.py index 86239faf0..f0abf8007 100644 --- a/examples/2D_acoustic_pulse/case.py +++ b/examples/2D_acoustic_pulse/case.py @@ -98,7 +98,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_acoustic_pulse_analytical/case.py b/examples/2D_acoustic_pulse_analytical/case.py index 2a513a1e0..676c9f297 100644 --- a/examples/2D_acoustic_pulse_analytical/case.py +++ b/examples/2D_acoustic_pulse_analytical/case.py @@ -97,7 +97,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_advection/case.py b/examples/2D_advection/case.py index 351e4e64e..3af58db8a 100644 --- a/examples/2D_advection/case.py +++ b/examples/2D_advection/case.py @@ -81,7 +81,6 @@ "fluid_pp(1)%pi_inf": 2.35e00 * 1.0e09 / (2.35e00 - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_advection_convergence/case.py b/examples/2D_advection_convergence/case.py index 8fffaad60..75ecfcdf0 100644 --- a/examples/2D_advection_convergence/case.py +++ b/examples/2D_advection_convergence/case.py @@ -111,7 +111,6 @@ "patch_icpp(1)%alpha(1)": 1.0, "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, **scheme_params, } ) diff --git a/examples/2D_advection_muscl/case.py b/examples/2D_advection_muscl/case.py index 5cedea627..e53b83cce 100644 --- a/examples/2D_advection_muscl/case.py +++ b/examples/2D_advection_muscl/case.py @@ -79,7 +79,6 @@ "fluid_pp(1)%pi_inf": 2.35e00 * 1.0e09 / (2.35e00 - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_axisym_shockbubble/case.py b/examples/2D_axisym_shockbubble/case.py index 0ad63dbb1..9d148dd60 100644 --- a/examples/2D_axisym_shockbubble/case.py +++ b/examples/2D_axisym_shockbubble/case.py @@ -112,10 +112,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0e00 / (1.6666e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_backward_facing_step/case.py b/examples/2D_backward_facing_step/case.py index f7ac307bf..574d631b0 100644 --- a/examples/2D_backward_facing_step/case.py +++ b/examples/2D_backward_facing_step/case.py @@ -82,7 +82,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0 / (gam_a - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 1 / mu, }, indent=4, diff --git a/examples/2D_bingham_poiseuille_nn/case.py b/examples/2D_bingham_poiseuille_nn/case.py index f457c30c0..61b243d80 100644 --- a/examples/2D_bingham_poiseuille_nn/case.py +++ b/examples/2D_bingham_poiseuille_nn/case.py @@ -119,7 +119,6 @@ # Fluids Physical Parameters: single Bingham (HB with n = 1, tau0 > 0) fluid "fluid_pp(1)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 1.0 / K, "fluid_pp(1)%non_newtonian": "T", "fluid_pp(1)%K": K, diff --git a/examples/2D_forward_facing_step/case.py b/examples/2D_forward_facing_step/case.py index df12918d4..015b643f9 100644 --- a/examples/2D_forward_facing_step/case.py +++ b/examples/2D_forward_facing_step/case.py @@ -79,7 +79,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0 / (gam_a - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "viscous": "T", "fluid_pp(1)%Re(1)": 1 / mu, }, diff --git a/examples/2D_hardcoded_ic/case.py b/examples/2D_hardcoded_ic/case.py index 7626817ed..af51250d2 100644 --- a/examples/2D_hardcoded_ic/case.py +++ b/examples/2D_hardcoded_ic/case.py @@ -74,7 +74,6 @@ "fluid_pp(1)%pi_inf": 2.35e00 * 1.0e09 / (2.35e00 - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_herschel_bulkley_poiseuille_nn/case.py b/examples/2D_herschel_bulkley_poiseuille_nn/case.py index 96ac84ba8..b0bb7f336 100644 --- a/examples/2D_herschel_bulkley_poiseuille_nn/case.py +++ b/examples/2D_herschel_bulkley_poiseuille_nn/case.py @@ -126,7 +126,6 @@ # Fluids Physical Parameters: single Herschel-Bulkley (n != 1, tau0 > 0) fluid "fluid_pp(1)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 1.0 / K, "fluid_pp(1)%non_newtonian": "T", "fluid_pp(1)%K": K, diff --git a/examples/2D_hypo_shear_contact/case.py b/examples/2D_hypo_shear_contact/case.py index 0593b205d..5c70959dd 100644 --- a/examples/2D_hypo_shear_contact/case.py +++ b/examples/2D_hypo_shear_contact/case.py @@ -83,11 +83,9 @@ "fd_order": 4, "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%G": G, "fluid_pp(2)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%G": G, # Left/background state. "patch_icpp(1)%geometry": 3, diff --git a/examples/2D_ibm/case.py b/examples/2D_ibm/case.py index 70b224d7b..f2ddf16fd 100644 --- a/examples/2D_ibm/case.py +++ b/examples/2D_ibm/case.py @@ -91,7 +91,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 2500000, } ) diff --git a/examples/2D_ibm_airfoil/case.py b/examples/2D_ibm_airfoil/case.py index 06c16caf4..9ccbd7129 100644 --- a/examples/2D_ibm_airfoil/case.py +++ b/examples/2D_ibm_airfoil/case.py @@ -101,10 +101,8 @@ # Use the same stiffness as the air bubble "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50 (Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(2)%gamma": 1.0e00 / (gam_b - 1.0e00), # 2.50 (Not 1.40) "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0, } ) ) diff --git a/examples/2D_ibm_cfl_dt/case.py b/examples/2D_ibm_cfl_dt/case.py index c4fd26987..3db9e70f0 100644 --- a/examples/2D_ibm_cfl_dt/case.py +++ b/examples/2D_ibm_cfl_dt/case.py @@ -94,7 +94,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 250000, } ) diff --git a/examples/2D_ibm_ellipse/case.py b/examples/2D_ibm_ellipse/case.py index 20e46f04d..bf8c0e03e 100644 --- a/examples/2D_ibm_ellipse/case.py +++ b/examples/2D_ibm_ellipse/case.py @@ -92,7 +92,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 2500000, } ) diff --git a/examples/2D_ibm_multiphase/case.py b/examples/2D_ibm_multiphase/case.py index 6006606da..221aff57e 100644 --- a/examples/2D_ibm_multiphase/case.py +++ b/examples/2D_ibm_multiphase/case.py @@ -91,10 +91,8 @@ # Specify 2 fluids "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(2)%gamma": 1.0e00 / (gam_b - 1.0e00), # 2.50(Not 1.40) "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0, } ) ) diff --git a/examples/2D_ibm_poiseuille_nn/case.py b/examples/2D_ibm_poiseuille_nn/case.py index 5e6f69e58..72fc40834 100644 --- a/examples/2D_ibm_poiseuille_nn/case.py +++ b/examples/2D_ibm_poiseuille_nn/case.py @@ -131,7 +131,6 @@ # Fluids Physical Parameters (EOS shared by all modes) "fluid_pp(1)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } if MODE == "powerlaw": diff --git a/examples/2D_ibm_stl_MFCCharacter/case.py b/examples/2D_ibm_stl_MFCCharacter/case.py index c404fbf82..120cb0272 100644 --- a/examples/2D_ibm_stl_MFCCharacter/case.py +++ b/examples/2D_ibm_stl_MFCCharacter/case.py @@ -80,7 +80,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 10000, } ) diff --git a/examples/2D_ibm_stl_test/case.py b/examples/2D_ibm_stl_test/case.py index 0230d5f36..0518549d0 100644 --- a/examples/2D_ibm_stl_test/case.py +++ b/examples/2D_ibm_stl_test/case.py @@ -81,7 +81,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, } ) ) diff --git a/examples/2D_ibm_stl_wedge/case.py b/examples/2D_ibm_stl_wedge/case.py index bd2da045d..a0e90fb14 100644 --- a/examples/2D_ibm_stl_wedge/case.py +++ b/examples/2D_ibm_stl_wedge/case.py @@ -81,7 +81,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 7535533.2, } ) diff --git a/examples/2D_ibm_viscous_drag_over_cylinder/case.py b/examples/2D_ibm_viscous_drag_over_cylinder/case.py index 91fabc921..de54bf699 100644 --- a/examples/2D_ibm_viscous_drag_over_cylinder/case.py +++ b/examples/2D_ibm_viscous_drag_over_cylinder/case.py @@ -78,7 +78,6 @@ # --- Fluid properties (calorically perfect air) --- "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), # MFC: 1/(gamma-1) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": Re_p / (d_cyl * U_inf), # --- Boundary conditions --- "bc_x%beg": -7, diff --git a/examples/2D_icpp_stl_circle/case.py b/examples/2D_icpp_stl_circle/case.py index afca9089d..a68406be4 100644 --- a/examples/2D_icpp_stl_circle/case.py +++ b/examples/2D_icpp_stl_circle/case.py @@ -88,7 +88,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, } ) ) diff --git a/examples/2D_isentropicvortex/case.py b/examples/2D_isentropicvortex/case.py index 9ca22b4e0..378a4c62b 100644 --- a/examples/2D_isentropicvortex/case.py +++ b/examples/2D_isentropicvortex/case.py @@ -110,7 +110,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_isentropicvortex_analytical/case.py b/examples/2D_isentropicvortex_analytical/case.py index 3c2b768bc..792c642c6 100644 --- a/examples/2D_isentropicvortex_analytical/case.py +++ b/examples/2D_isentropicvortex_analytical/case.py @@ -110,7 +110,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_jet/case.py b/examples/2D_jet/case.py index 93e8ea948..6cf73d72f 100644 --- a/examples/2D_jet/case.py +++ b/examples/2D_jet/case.py @@ -109,10 +109,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_kelvin_helmholtz/case.py b/examples/2D_kelvin_helmholtz/case.py index 861490890..2de4acaf5 100644 --- a/examples/2D_kelvin_helmholtz/case.py +++ b/examples/2D_kelvin_helmholtz/case.py @@ -81,10 +81,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (5.0 / 3.0 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0e00, "fluid_pp(2)%gamma": 1.0e00 / (5.0 / 3.0 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_lagrange_bubblescreen/case.py b/examples/2D_lagrange_bubblescreen/case.py index 3771df419..adb3c7c19 100644 --- a/examples/2D_lagrange_bubblescreen/case.py +++ b/examples/2D_lagrange_bubblescreen/case.py @@ -242,7 +242,6 @@ def generate_bubble_cloud(): # Bubble gas state "fluid_pp(2)%gamma": 1.0 / (gam_g - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1.0 / (mu_g / (rho0 * c0 * x0)), }, indent=4, diff --git a/examples/2D_lagrange_in_crossflow/case.py b/examples/2D_lagrange_in_crossflow/case.py index 4682e3c63..8d15478de 100644 --- a/examples/2D_lagrange_in_crossflow/case.py +++ b/examples/2D_lagrange_in_crossflow/case.py @@ -182,7 +182,6 @@ def write_lag_bubbles_file(): # Bubble gas state "fluid_pp(2)%gamma": 1.0 / (gam_g - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1.0 / (mu_g / (rho0 * c0 * x0)), } ) diff --git a/examples/2D_lagrange_rising_bubble/case.py b/examples/2D_lagrange_rising_bubble/case.py index f2c134add..0273e63a3 100644 --- a/examples/2D_lagrange_rising_bubble/case.py +++ b/examples/2D_lagrange_rising_bubble/case.py @@ -185,7 +185,6 @@ # Bubble gas state "fluid_pp(2)%gamma": 1.0 / (gam_g - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1.0 / (mu_g / (rho0 * c0 * x0)), }, indent=4, diff --git a/examples/2D_laplace_pressure_jump/case.py b/examples/2D_laplace_pressure_jump/case.py index b6a8f8ab7..46a8fd000 100644 --- a/examples/2D_laplace_pressure_jump/case.py +++ b/examples/2D_laplace_pressure_jump/case.py @@ -78,7 +78,6 @@ # Fluid Parameters (Gas) "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, # Air Patch "patch_icpp(1)%geometry": 3, "patch_icpp(1)%x_centroid": 0, diff --git a/examples/2D_lid_driven_cavity/case.py b/examples/2D_lid_driven_cavity/case.py index ae9a957db..9a4ae1eee 100644 --- a/examples/2D_lid_driven_cavity/case.py +++ b/examples/2D_lid_driven_cavity/case.py @@ -66,11 +66,9 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 1e4, "fluid_pp(2)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%Re(1)": 1e4, } ) diff --git a/examples/2D_lid_driven_cavity_nn/case.py b/examples/2D_lid_driven_cavity_nn/case.py index fdbdd8c7f..a6e27a3a5 100644 --- a/examples/2D_lid_driven_cavity_nn/case.py +++ b/examples/2D_lid_driven_cavity_nn/case.py @@ -90,7 +90,6 @@ # mu_eff at each cell via the Papanastasiou-regularized formula. "fluid_pp(1)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 1.0 / K, "fluid_pp(1)%non_newtonian": "T", "fluid_pp(1)%tau0": 0.0, @@ -101,7 +100,6 @@ "fluid_pp(1)%hb_m": 1000.0, "fluid_pp(2)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%Re(1)": 1.0 / K, "fluid_pp(2)%non_newtonian": "T", "fluid_pp(2)%tau0": 0.0, diff --git a/examples/2D_mhd_magnetic_vortex/case.py b/examples/2D_mhd_magnetic_vortex/case.py index 3118767de..1cd2e4d2c 100644 --- a/examples/2D_mhd_magnetic_vortex/case.py +++ b/examples/2D_mhd_magnetic_vortex/case.py @@ -72,7 +72,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (5.0 / 3.0 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_mhd_rotor/case.py b/examples/2D_mhd_rotor/case.py index 011e0241c..5aa001e52 100644 --- a/examples/2D_mhd_rotor/case.py +++ b/examples/2D_mhd_rotor/case.py @@ -79,7 +79,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_mibm_cylinder_in_cross_flow/case.py b/examples/2D_mibm_cylinder_in_cross_flow/case.py index 62ccc83fe..0c984be6e 100644 --- a/examples/2D_mibm_cylinder_in_cross_flow/case.py +++ b/examples/2D_mibm_cylinder_in_cross_flow/case.py @@ -100,7 +100,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 2500000, } ) diff --git a/examples/2D_mibm_particle_cloud/case.py b/examples/2D_mibm_particle_cloud/case.py index a503eb260..d9e73a022 100644 --- a/examples/2D_mibm_particle_cloud/case.py +++ b/examples/2D_mibm_particle_cloud/case.py @@ -133,7 +133,6 @@ # Fluid properties: air "fluid_pp(1)%gamma": 1.0 / (gam_a - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 2500000, } ) diff --git a/examples/2D_mibm_shock_cylinder/case.py b/examples/2D_mibm_shock_cylinder/case.py index a7bdc8617..4b904332c 100644 --- a/examples/2D_mibm_shock_cylinder/case.py +++ b/examples/2D_mibm_shock_cylinder/case.py @@ -134,7 +134,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 2500000, } ) diff --git a/examples/2D_moving_lag_bubs/case.py b/examples/2D_moving_lag_bubs/case.py index 09710c2ae..adaf4e5c0 100644 --- a/examples/2D_moving_lag_bubs/case.py +++ b/examples/2D_moving_lag_bubs/case.py @@ -125,7 +125,6 @@ # Fluid Parameters Gas "fluid_pp(2)%gamma": 1.0 / (gamma_g - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, # Bubble parameters "bub_pp%R0ref": 1.0, "bub_pp%p0ref": 1.0, diff --git a/examples/2D_orszag_tang/case.py b/examples/2D_orszag_tang/case.py index 6f34d3f29..123c9018b 100644 --- a/examples/2D_orszag_tang/case.py +++ b/examples/2D_orszag_tang/case.py @@ -71,7 +71,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (5.0 / 3.0 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_orszag_tang_hyper_cleaning/case.py b/examples/2D_orszag_tang_hyper_cleaning/case.py index c5440ad6b..a85a5c021 100644 --- a/examples/2D_orszag_tang_hyper_cleaning/case.py +++ b/examples/2D_orszag_tang_hyper_cleaning/case.py @@ -75,7 +75,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (5.0 / 3.0 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_patch_modal_shape/case.py b/examples/2D_patch_modal_shape/case.py index e28164c5b..ab726ccd1 100644 --- a/examples/2D_patch_modal_shape/case.py +++ b/examples/2D_patch_modal_shape/case.py @@ -106,10 +106,8 @@ "bc_y%pres_out": p_inf, "fluid_pp(1)%gamma": 1.0 / (gam - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0 / (gam - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, # Acoustic source (similar to 2D_acoustic_support5) "acoustic_source": "T", "num_source": 1, diff --git a/examples/2D_patch_modal_shape_exp/case.py b/examples/2D_patch_modal_shape_exp/case.py index 14b00ef12..5795a7eeb 100644 --- a/examples/2D_patch_modal_shape_exp/case.py +++ b/examples/2D_patch_modal_shape_exp/case.py @@ -108,10 +108,8 @@ "bc_y%pres_out": p_inf, "fluid_pp(1)%gamma": 1.0 / (gam - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0 / (gam - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, # Acoustic source (similar to 2D_acoustic_support5) "acoustic_source": "T", "num_source": 1, diff --git a/examples/2D_poiseuille_nn/case.py b/examples/2D_poiseuille_nn/case.py index 252089772..4b93eb85e 100644 --- a/examples/2D_poiseuille_nn/case.py +++ b/examples/2D_poiseuille_nn/case.py @@ -124,7 +124,6 @@ # Fluids Physical Parameters: single power-law (HB with tau0 = 0) fluid "fluid_pp(1)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 1.0 / K, "fluid_pp(1)%non_newtonian": "T", "fluid_pp(1)%K": K, diff --git a/examples/2D_poiseuille_thickening_nn/case.py b/examples/2D_poiseuille_thickening_nn/case.py index f459f8f6e..223b9cd14 100644 --- a/examples/2D_poiseuille_thickening_nn/case.py +++ b/examples/2D_poiseuille_thickening_nn/case.py @@ -118,7 +118,6 @@ # Fluids Physical Parameters: single power-law (HB with tau0 = 0) fluid "fluid_pp(1)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 1.0 / K, "fluid_pp(1)%non_newtonian": "T", "fluid_pp(1)%K": K, diff --git a/examples/2D_rayleigh_taylor/case.py b/examples/2D_rayleigh_taylor/case.py index c37a280c7..da6d1ec57 100644 --- a/examples/2D_rayleigh_taylor/case.py +++ b/examples/2D_rayleigh_taylor/case.py @@ -73,12 +73,10 @@ # Fluid Parameters (Heavy Gas) "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0e00, "fluid_pp(1)%Re(1)": 1 / 0.0219, # Fluid Parameters (Light Gas) "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1 / 0.0073, # Body Forces "bf_y": "T", diff --git a/examples/2D_richtmyer_meshkov/case.py b/examples/2D_richtmyer_meshkov/case.py index b9bfdad0b..f06b5c797 100644 --- a/examples/2D_richtmyer_meshkov/case.py +++ b/examples/2D_richtmyer_meshkov/case.py @@ -86,10 +86,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.093 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0e00, "fluid_pp(2)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "viscous": "T", "fluid_pp(1)%Re(1)": 1 / mu, "fluid_pp(2)%Re(1)": 1 / mu, diff --git a/examples/2D_riemann_test/case.py b/examples/2D_riemann_test/case.py index b3af4e557..d6e5f566a 100644 --- a/examples/2D_riemann_test/case.py +++ b/examples/2D_riemann_test/case.py @@ -93,7 +93,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_riemann_test_muscl/case.py b/examples/2D_riemann_test_muscl/case.py index 79c1a24fd..b386ba708 100644 --- a/examples/2D_riemann_test_muscl/case.py +++ b/examples/2D_riemann_test_muscl/case.py @@ -93,7 +93,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_shock_cloud_rmhd/case.py b/examples/2D_shock_cloud_rmhd/case.py index 26445bad1..52636a009 100644 --- a/examples/2D_shock_cloud_rmhd/case.py +++ b/examples/2D_shock_cloud_rmhd/case.py @@ -102,7 +102,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (4.0 / 3.0 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_shockbubble/case.py b/examples/2D_shockbubble/case.py index 00c8894ae..d80846915 100644 --- a/examples/2D_shockbubble/case.py +++ b/examples/2D_shockbubble/case.py @@ -107,10 +107,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0e00 / (1.6666e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_shockdroplet/case.py b/examples/2D_shockdroplet/case.py index cf778a3bd..95160ab9b 100755 --- a/examples/2D_shockdroplet/case.py +++ b/examples/2D_shockdroplet/case.py @@ -159,7 +159,6 @@ "fluid_pp(1)%pi_inf": pi_w * gam_w / (gam_w - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_shockdroplet_muscl/case.py b/examples/2D_shockdroplet_muscl/case.py index 67767cbe1..61b904ec8 100755 --- a/examples/2D_shockdroplet_muscl/case.py +++ b/examples/2D_shockdroplet_muscl/case.py @@ -119,7 +119,6 @@ "fluid_pp(1)%pi_inf": pi_w * gam_w / (gam_w - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/2D_synthetic_turbulence/case.py b/examples/2D_synthetic_turbulence/case.py index 9f3a9803e..a52bccb46 100644 --- a/examples/2D_synthetic_turbulence/case.py +++ b/examples/2D_synthetic_turbulence/case.py @@ -122,10 +122,8 @@ # Use the same stiffness as the air bubble "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50 (Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(2)%gamma": 1.0e00 / (gam_b - 1.0e00), # 2.50 (Not 1.40) "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0, # -- Synthetic turbulence -- "synthetic_turbulence": "T", "synth_seed": 42, diff --git a/examples/2D_triple_point/case.py b/examples/2D_triple_point/case.py index 65da52f2a..96ee052da 100755 --- a/examples/2D_triple_point/case.py +++ b/examples/2D_triple_point/case.py @@ -99,10 +99,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0 / (1.5 - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(2)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_tumbling_rectangle/case.py b/examples/2D_tumbling_rectangle/case.py index 0eddad239..a28a55bb3 100644 --- a/examples/2D_tumbling_rectangle/case.py +++ b/examples/2D_tumbling_rectangle/case.py @@ -100,7 +100,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 2500000, } ) diff --git a/examples/2D_viscous_shock_tube/case.py b/examples/2D_viscous_shock_tube/case.py index ead361d30..a839c8b4e 100644 --- a/examples/2D_viscous_shock_tube/case.py +++ b/examples/2D_viscous_shock_tube/case.py @@ -82,11 +82,9 @@ "fluid_pp(1)%gamma": 1.0e00 / ((7.0 / 5.0) - 1.0e00), "fluid_pp(1)%Re(1)": 1 / mu, "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0e00 / ((7.0 / 5.0) - 1.0e00), "fluid_pp(2)%Re(1)": 1 / mu, "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_zero_circ_vortex/case.py b/examples/2D_zero_circ_vortex/case.py index 87974f48e..a891751c3 100644 --- a/examples/2D_zero_circ_vortex/case.py +++ b/examples/2D_zero_circ_vortex/case.py @@ -103,7 +103,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/2D_zero_circ_vortex_analytical/case.py b/examples/2D_zero_circ_vortex_analytical/case.py index 81ac639b2..c56cbe74f 100644 --- a/examples/2D_zero_circ_vortex_analytical/case.py +++ b/examples/2D_zero_circ_vortex_analytical/case.py @@ -104,7 +104,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/3D_IGR_33jet/case.py b/examples/3D_IGR_33jet/case.py index e30ffd75b..8845d839b 100644 --- a/examples/3D_IGR_33jet/case.py +++ b/examples/3D_IGR_33jet/case.py @@ -111,7 +111,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "viscous": "T", "fluid_pp(1)%Re(1)": 5e5, }, diff --git a/examples/3D_IGR_TaylorGreenVortex/case.py b/examples/3D_IGR_TaylorGreenVortex/case.py index fec431e35..5ca2b9099 100644 --- a/examples/3D_IGR_TaylorGreenVortex/case.py +++ b/examples/3D_IGR_TaylorGreenVortex/case.py @@ -91,7 +91,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 1 / mu, } ) diff --git a/examples/3D_IGR_TaylorGreenVortex_nvidia/case.py b/examples/3D_IGR_TaylorGreenVortex_nvidia/case.py index e2dd18f92..72838e8a1 100644 --- a/examples/3D_IGR_TaylorGreenVortex_nvidia/case.py +++ b/examples/3D_IGR_TaylorGreenVortex_nvidia/case.py @@ -96,7 +96,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 1 / mu, # NVIDIA UVM Options "nv_uvm_out_of_core": "T", diff --git a/examples/3D_IGR_jet/case.py b/examples/3D_IGR_jet/case.py index e94a654e8..7fabd9248 100644 --- a/examples/3D_IGR_jet/case.py +++ b/examples/3D_IGR_jet/case.py @@ -118,10 +118,8 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "viscous": "T", "fluid_pp(1)%Re(1)": 5e4, "fluid_pp(2)%Re(1)": 5e4, diff --git a/examples/3D_IGR_jet_1fluid/case.py b/examples/3D_IGR_jet_1fluid/case.py index 06931c6d5..a495f81f1 100644 --- a/examples/3D_IGR_jet_1fluid/case.py +++ b/examples/3D_IGR_jet_1fluid/case.py @@ -93,7 +93,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "viscous": "T", "fluid_pp(1)%Re(1)": 5e4, }, diff --git a/examples/3D_TaylorGreenVortex/case.py b/examples/3D_TaylorGreenVortex/case.py index a46dcf670..4896230e9 100644 --- a/examples/3D_TaylorGreenVortex/case.py +++ b/examples/3D_TaylorGreenVortex/case.py @@ -95,7 +95,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 1 / mu, } ) diff --git a/examples/3D_TaylorGreenVortex_analytical/case.py b/examples/3D_TaylorGreenVortex_analytical/case.py index 9339f0e7f..2d6bcf65c 100644 --- a/examples/3D_TaylorGreenVortex_analytical/case.py +++ b/examples/3D_TaylorGreenVortex_analytical/case.py @@ -94,7 +94,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 1 / mu, } ) diff --git a/examples/3D_advection_convergence/case.py b/examples/3D_advection_convergence/case.py index 768f3e672..c983d5aeb 100644 --- a/examples/3D_advection_convergence/case.py +++ b/examples/3D_advection_convergence/case.py @@ -113,7 +113,6 @@ "patch_icpp(1)%alpha(1)": 1.0, "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, **scheme_params, } ) diff --git a/examples/3D_brio_wu/case.py b/examples/3D_brio_wu/case.py index 136ad35b4..c25484238 100644 --- a/examples/3D_brio_wu/case.py +++ b/examples/3D_brio_wu/case.py @@ -90,7 +90,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (2.0e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, } ) ) diff --git a/examples/3D_ibm_bowshock/case.py b/examples/3D_ibm_bowshock/case.py index 656964d71..78814d5f5 100644 --- a/examples/3D_ibm_bowshock/case.py +++ b/examples/3D_ibm_bowshock/case.py @@ -102,7 +102,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 7535533.2, } ) diff --git a/examples/3D_ibm_stl_ellipsoid/case.py b/examples/3D_ibm_stl_ellipsoid/case.py index 40932f1a0..85d2da0e3 100644 --- a/examples/3D_ibm_stl_ellipsoid/case.py +++ b/examples/3D_ibm_stl_ellipsoid/case.py @@ -93,7 +93,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 7535533.2, } ) diff --git a/examples/3D_ibm_stl_pyramid/case.py b/examples/3D_ibm_stl_pyramid/case.py index b8d3cd56a..94dc1cb43 100644 --- a/examples/3D_ibm_stl_pyramid/case.py +++ b/examples/3D_ibm_stl_pyramid/case.py @@ -93,7 +93,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 7535533.2, } ) diff --git a/examples/3D_ibm_stl_test/case.py b/examples/3D_ibm_stl_test/case.py index 0c28eb63a..83fae2efe 100644 --- a/examples/3D_ibm_stl_test/case.py +++ b/examples/3D_ibm_stl_test/case.py @@ -93,7 +93,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, } ) ) diff --git a/examples/3D_icpp_stl_cube/case.py b/examples/3D_icpp_stl_cube/case.py index c4cea9a09..1a72d2fab 100644 --- a/examples/3D_icpp_stl_cube/case.py +++ b/examples/3D_icpp_stl_cube/case.py @@ -97,7 +97,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, } ) ) diff --git a/examples/3D_lagrange_bubblescreen/case.py b/examples/3D_lagrange_bubblescreen/case.py index db0c8a683..d2fb323b7 100644 --- a/examples/3D_lagrange_bubblescreen/case.py +++ b/examples/3D_lagrange_bubblescreen/case.py @@ -230,7 +230,6 @@ def generate_bubble_cloud(): # Bubble gas state "fluid_pp(2)%gamma": 1.0 / (gam_g - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1.0 / (mu_g / (rho0 * c0 * x0)), }, indent=4, diff --git a/examples/3D_lagrange_shbubcollapse/case.py b/examples/3D_lagrange_shbubcollapse/case.py index 0ee96f8ef..8d637ee3f 100644 --- a/examples/3D_lagrange_shbubcollapse/case.py +++ b/examples/3D_lagrange_shbubcollapse/case.py @@ -184,7 +184,6 @@ # Bubble gas state "fluid_pp(2)%gamma": 1.0 / (gam_g - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1.0 / (mu_g / (rho0 * c0 * x0)), } ) diff --git a/examples/3D_mibm_periodic_collision/case.py b/examples/3D_mibm_periodic_collision/case.py index 8e0e85436..e6f499c6c 100644 --- a/examples/3D_mibm_periodic_collision/case.py +++ b/examples/3D_mibm_periodic_collision/case.py @@ -152,7 +152,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 1.0 / mu, "collision_model": 1, # soft-sphere collision model "ib_coefficient_of_friction": 0.1, diff --git a/examples/3D_mibm_sphere_head_on_collision/case.py b/examples/3D_mibm_sphere_head_on_collision/case.py index a14b0815c..86a70bb00 100644 --- a/examples/3D_mibm_sphere_head_on_collision/case.py +++ b/examples/3D_mibm_sphere_head_on_collision/case.py @@ -125,7 +125,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, } ) ) diff --git a/examples/3D_moving_lag_particles/case.py b/examples/3D_moving_lag_particles/case.py index b185e8fd1..137726618 100644 --- a/examples/3D_moving_lag_particles/case.py +++ b/examples/3D_moving_lag_particles/case.py @@ -120,7 +120,6 @@ # Fluid Parameters Gas "fluid_pp(2)%gamma": 1.0 / (gamma_g - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, # Bubble parameters "bub_pp%R0ref": 1.0, "bub_pp%p0ref": 1.0, diff --git a/examples/3D_patch_spherical_harmonic/case.py b/examples/3D_patch_spherical_harmonic/case.py index 3efa3a1e2..3db6c2370 100644 --- a/examples/3D_patch_spherical_harmonic/case.py +++ b/examples/3D_patch_spherical_harmonic/case.py @@ -126,10 +126,8 @@ "patch_icpp(2)%alter_patch(1)": "T", "fluid_pp(1)%gamma": 1.0 / (gam - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(2)%gamma": 1.0 / (gam - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, # Acoustic source (similar to 3D_acoustic_support7) "acoustic_source": "T", "num_source": 1, diff --git a/examples/3D_performance_test/case.py b/examples/3D_performance_test/case.py index ffad84ee6..6749ab35e 100644 --- a/examples/3D_performance_test/case.py +++ b/examples/3D_performance_test/case.py @@ -103,7 +103,6 @@ "fluid_pp(1)%pi_inf": 4.4e00 * 6.0e08 / (4.4e00 - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/3D_rayleigh_taylor/case.py b/examples/3D_rayleigh_taylor/case.py index 3c273651e..489aea867 100644 --- a/examples/3D_rayleigh_taylor/case.py +++ b/examples/3D_rayleigh_taylor/case.py @@ -80,12 +80,10 @@ # Fluid Parameters (Heavy Gas) "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0e00, "fluid_pp(1)%Re(1)": 1 / 0.0219, # Fluid Parameters (Light Gas) "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1 / 0.0073, # Body Forces "bf_y": "T", diff --git a/examples/3D_rayleigh_taylor_muscl/case.py b/examples/3D_rayleigh_taylor_muscl/case.py index f8e7324db..4161ec6c3 100644 --- a/examples/3D_rayleigh_taylor_muscl/case.py +++ b/examples/3D_rayleigh_taylor_muscl/case.py @@ -78,12 +78,10 @@ # Fluid Parameters (Heavy Gas) "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0e00, "fluid_pp(1)%Re(1)": 1 / 0.0219, # Fluid Parameters (Light Gas) "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%Re(1)": 1 / 0.0073, # Body Forces "bf_y": "T", diff --git a/examples/3D_recovering_sphere/case.py b/examples/3D_recovering_sphere/case.py index ada09cf9f..6a964adc8 100644 --- a/examples/3D_recovering_sphere/case.py +++ b/examples/3D_recovering_sphere/case.py @@ -86,7 +86,6 @@ # Fluid Parameters (Gas) "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, # Air Patch "patch_icpp(1)%geometry": 9, "patch_icpp(1)%x_centroid": 0, diff --git a/examples/3D_rotating_sphere/case.py b/examples/3D_rotating_sphere/case.py index 141e10f19..18b790331 100644 --- a/examples/3D_rotating_sphere/case.py +++ b/examples/3D_rotating_sphere/case.py @@ -105,7 +105,6 @@ # Fluids Physical Parameters "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "fluid_pp(1)%Re(1)": 2500000, } ) diff --git a/examples/3D_sphbubcollapse/case.py b/examples/3D_sphbubcollapse/case.py index b57230f2f..3d6e0df42 100644 --- a/examples/3D_sphbubcollapse/case.py +++ b/examples/3D_sphbubcollapse/case.py @@ -129,7 +129,6 @@ "fluid_pp(1)%pi_inf": 4.4e00 * 6.0e08 / (4.4e00 - 1.0e00), "fluid_pp(2)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, } ) ) diff --git a/examples/3D_turb_mixing/case.py b/examples/3D_turb_mixing/case.py index 81f0e4476..a617c76d2 100644 --- a/examples/3D_turb_mixing/case.py +++ b/examples/3D_turb_mixing/case.py @@ -118,7 +118,6 @@ # Surrounding liquid "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": Re0, } ) diff --git a/toolchain/mfc/case_validator.py b/toolchain/mfc/case_validator.py index acb10cdcb..7d641a408 100644 --- a/toolchain/mfc/case_validator.py +++ b/toolchain/mfc/case_validator.py @@ -44,10 +44,12 @@ "category": "Thermodynamic Constraints", "math": r"\rho e = \Gamma\,p + \Pi(\rho), \quad \Gamma = 1/\Gamma_G, \quad \Pi(\rho) = \rho\, e_{\mathrm{ref}}(\rho) - p_{\mathrm{ref}}(\rho)/\Gamma_G", "explanation": ( - "Every backend supplies the same two coefficients. An ideal gas is the stiffened-gas form with no stiffness, so " - "selecting it and also supplying a nonzero pi_inf is contradictory. Mie-Gruneisen supplies a linear-Hugoniot " + "Every backend supplies the same two coefficients, and a case may only set the parameters its backend reads: an " + "ideal gas has no pi_inf, and a Mie-Gruneisen fluid has neither gamma, pi_inf nor qv. Mie-Gruneisen supplies a linear-Hugoniot " "reference curve (mg_rho0, mg_c0, mg_s, mg_gruneisen) whose reference energy already carries the formation energy, so " "qv must be zero; its parameters are read only when that backend is selected." + "The Mie-Gruneisen backend is evaluated per phase along the 5-equation Riemann and time-step paths; " + "the features it is refused with still read stiffened-gas coefficients directly." ), "references": ["Wilfong26"], }, @@ -967,10 +969,9 @@ def check_eos_selector(self): if eos is None: continue self.prohibit(eos not in eos_values, f"fluid_pp({i})%eos must be 'stiffened_gas', 'ideal_gas' or 'mie_gruneisen'") - pi_inf = self.get(f"fluid_pp({i})%pi_inf") self.prohibit( - eos == eos_ideal_gas and pi_inf is not None and pi_inf != 0, - f"fluid_pp({i})%eos = 'ideal_gas' requires fluid_pp({i})%pi_inf = 0 (an ideal gas has no stiffness)", + eos == eos_ideal_gas and self.get(f"fluid_pp({i})%pi_inf") is not None, + f"fluid_pp({i})%eos = 'ideal_gas' has no stiffness; do not set fluid_pp({i})%pi_inf", ) self.prohibit( eos == eos_mg and any(v is None for v in mg.values()), @@ -979,11 +980,11 @@ def check_eos_selector(self): if eos == eos_mg and all(v is not None for v in mg.values()): self.prohibit(mg["rho0"] <= 0 or mg["c0"] <= 0 or mg["gruneisen"] <= 0, f"fluid_pp({i})%mg_rho0, mg_c0 and mg_gruneisen must be positive") self.prohibit(mg["s"] < 1, f"fluid_pp({i})%mg_s must be >= 1 (u_s = c0 + s u_p; s < 1 gives no shock)") - qv = self.get(f"fluid_pp({i})%qv") - self.prohibit( - qv is not None and qv != 0, - f"fluid_pp({i})%qv must be 0 with eos = 'mie_gruneisen'; the reference energy e_ref(rho) carries it", - ) + for k in ("gamma", "pi_inf", "qv"): + self.prohibit( + self.get(f"fluid_pp({i})%{k}") is not None, + f"fluid_pp({i})%{k} is not read with eos = 'mie_gruneisen'; the reference curve replaces it", + ) # The linear Hugoniot has a pole at mu = 1/(s - 1), its maximum compression. Only the initial # state can be checked here; the solver does not guard the runtime density. if mg["s"] > 1: diff --git a/toolchain/mfc/params_tests/test_eos_selector.py b/toolchain/mfc/params_tests/test_eos_selector.py index 418481dbc..02554b556 100644 --- a/toolchain/mfc/params_tests/test_eos_selector.py +++ b/toolchain/mfc/params_tests/test_eos_selector.py @@ -30,8 +30,10 @@ def test_stiffened_gas_accepts_stiffness(): assert _errors(**{"fluid_pp(1)%eos": EOS["stiffened_gas"], "fluid_pp(1)%pi_inf": 1.0e5}) == [] -def test_ideal_gas_accepts_zero_stiffness(): - assert _errors(**{"fluid_pp(1)%eos": EOS["ideal_gas"], "fluid_pp(1)%pi_inf": 0.0}) == [] +def test_ideal_gas_owns_no_stiffness_parameter(): + assert _errors(**{"fluid_pp(1)%eos": EOS["ideal_gas"], "fluid_pp(1)%pi_inf": None}) == [] + errors = _errors(**{"fluid_pp(1)%eos": EOS["ideal_gas"], "fluid_pp(1)%pi_inf": 0.0}) + assert len(errors) == 1 and "do not set fluid_pp(1)%pi_inf" in errors[0] def test_ideal_gas_rejects_nonzero_stiffness(): diff --git a/toolchain/mfc/test/case.py b/toolchain/mfc/test/case.py index 14dfc4ef9..2d9f241b3 100644 --- a/toolchain/mfc/test/case.py +++ b/toolchain/mfc/test/case.py @@ -101,7 +101,6 @@ def get_post_process_mods(case_params: dict) -> dict: "patch_icpp(3)%alpha(1)": 1.0, "fluid_pp(1)%gamma": 1.0e00 / (1.4 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%cv": 0.0, "fluid_pp(1)%qv": 0.0, "fluid_pp(1)%qvp": 0.0, diff --git a/toolchain/mfc/test/cases.py b/toolchain/mfc/test/cases.py index d86ceea63..34a8c4bc5 100644 --- a/toolchain/mfc/test/cases.py +++ b/toolchain/mfc/test/cases.py @@ -531,9 +531,7 @@ def alter_muscl(): stack.pop() def alter_eos(): - # BASE_CFG already sets fluid_pp(1)%pi_inf = 0, so the fluid is an ideal gas either way and - # naming it one must not change a single digit. That is the point: it exercises the selector - # end to end without moving the physics. + # BASE_CFG's fluid is already an ideal gas, so this re-selection must not change a single digit. cases.append(define_case_d(stack, "eos=ideal_gas", {"fluid_pp(1)%eos": "ideal_gas"})) def alter_riemann_solvers(num_fluids): @@ -647,7 +645,6 @@ def alter_num_fluids(dimInfo): { "fluid_pp(2)%gamma": 2.5, "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "patch_icpp(1)%alpha_rho(1)": 0.81, "patch_icpp(1)%alpha(1)": 0.9, "patch_icpp(1)%alpha_rho(2)": 0.19, @@ -804,7 +801,6 @@ def alter_2d(): "cyl_coord": "T", "fluid_pp(2)%gamma": 2.5, "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "patch_icpp(1)%alpha_rho(1)": 0.81, "patch_icpp(1)%alpha(1)": 0.9, "patch_icpp(1)%alpha_rho(2)": 0.19, @@ -883,7 +879,6 @@ def alter_3d(): "num_fluids": 2, "fluid_pp(2)%gamma": 2.5, "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "patch_icpp(1)%alpha_rho(1)": 0.81, "patch_icpp(1)%alpha(1)": 0.9, "patch_icpp(1)%alpha_rho(2)": 0.19, @@ -1672,7 +1667,6 @@ def alter_mixlayer_perturb(dimInfo): "wenoz": "T", "fluid_pp(1)%gamma": 2.5, "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 1.6881644098979287, "viscous": "T", "patch_icpp(1)%geometry": 9, @@ -1743,7 +1737,6 @@ def alter_phasechange(dimInfo): "fluid_pp(1)%qvp": 0.0, "fluid_pp(2)%gamma": 2.3266, "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0e00, "fluid_pp(2)%cv": 1040, "fluid_pp(2)%qv": 2030000, "fluid_pp(2)%qvp": -23400, @@ -1771,7 +1764,6 @@ def alter_phasechange(dimInfo): { "fluid_pp(3)%gamma": 2.4870, "fluid_pp(3)%eos": "ideal_gas", - "fluid_pp(3)%pi_inf": 0.0e00, "fluid_pp(3)%cv": 717.5, "fluid_pp(3)%qv": 0.0e00, "fluid_pp(3)%qvp": 0.0, @@ -1923,7 +1915,6 @@ def alter_lag_bubbles(dimInfo): "fluid_pp(1)%pi_inf": 3515.0, "fluid_pp(2)%gamma": 2.5, "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "patch_icpp(1)%alpha_rho(1)": 0.96, "patch_icpp(1)%alpha(1)": 4e-02, "patch_icpp(1)%alpha_rho(2)": 0.0, @@ -2464,11 +2455,9 @@ def apply_solver(case: dict, base_cfg: dict, solver_mods: dict, alt_soundspeed: "dt": 0.2 * dx / c_outer, "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%G": G_solid, "fluid_pp(2)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%G": 0.0, "patch_icpp(1)%geometry": 3, "patch_icpp(1)%x_centroid": 0.5, @@ -2537,11 +2526,9 @@ def make_shear_guard_cfg(regime): "dt": 0.2 * dx / c_outer, "fluid_pp(1)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%G": G, "fluid_pp(2)%gamma": 1.0 / (gamma - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%G": G, "patch_icpp(1)%geometry": 3, "patch_icpp(1)%x_centroid": 0.5, @@ -2613,11 +2600,9 @@ def make_axisym_fallback_cfg(adc): "dt": 2.0e-3, "fluid_pp(1)%gamma": 2.5, "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%G": G, "fluid_pp(2)%gamma": 2.5, "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%G": G, "patch_icpp(1)%geometry": 3, "patch_icpp(1)%x_centroid": 0.5, @@ -2696,7 +2681,6 @@ def make_cbc_uniform_cfg(alt_soundspeed): "fluid_pp(1)%G": 0.0, "fluid_pp(2)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%G": 0.0, "patch_icpp(1)%geometry": 3, "patch_icpp(1)%x_centroid": 0.5, @@ -2779,7 +2763,6 @@ def make_cbc_uniform_cfg(alt_soundspeed): "fluid_pp(1)%G": 1.0e6, "fluid_pp(2)%gamma": 1.0 / (1.4 - 1.0), "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, "fluid_pp(2)%G": 1.0e6, "patch_icpp(1)%geometry": 3, "patch_icpp(1)%x_centroid": 0.5, @@ -3093,7 +3076,6 @@ def chemistry_cases(): "viscous": "T", "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 100000, "patch_icpp(1)%geometry": 1, "patch_icpp(1)%hcid": 191, @@ -3147,7 +3129,6 @@ def chemistry_cases(): "viscous": "T", "fluid_pp(1)%gamma": 1.0e00 / (1.4e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0.0, "fluid_pp(1)%Re(1)": 100000, "patch_icpp(1)%geometry": 3, "patch_icpp(1)%hcid": 291, @@ -3201,7 +3182,6 @@ def chemistry_cases(): "patch_icpp(1)%alpha(1)": 1, "fluid_pp(1)%gamma": 1.0e00 / (1.9326e00 - 1.0e00), "fluid_pp(1)%eos": "ideal_gas", - "fluid_pp(1)%pi_inf": 0, "cantera_file": "h2o2.yaml", "t_step_start": 0, "t_step_stop": 50, @@ -3669,7 +3649,6 @@ def kernel_golden_tests(): "num_fluids": 2, "fluid_pp(2)%gamma": 2.5, "fluid_pp(2)%eos": "ideal_gas", - "fluid_pp(2)%pi_inf": 0.0, # Patch 1: fluid 1 background rectangle; length covers stretched extent (~1.39). # vel(1)=0.5 provides advection so MTHINC reconstruction affects the solution. "patch_icpp(1)%geometry": 3, diff --git a/toolchain/mfc/test_case_validator.py b/toolchain/mfc/test_case_validator.py index ce0304189..1835a8a24 100644 --- a/toolchain/mfc/test_case_validator.py +++ b/toolchain/mfc/test_case_validator.py @@ -394,7 +394,16 @@ def test_not_tripped_without_alt_soundspeed(self): class TestMieGruneisenSelector(ConstraintTestCase): """fluid_pp(i)%eos = 'mie_gruneisen' requires its reference curve and forbids what it makes redundant.""" - MG = {"fluid_pp(1)%eos": 3, "fluid_pp(1)%mg_rho0": 8930.0, "fluid_pp(1)%mg_c0": 3940.0, "fluid_pp(1)%mg_s": 1.49, "fluid_pp(1)%mg_gruneisen": 2.0} + MG = { + "fluid_pp(1)%eos": 3, + "fluid_pp(1)%gamma": None, + "fluid_pp(1)%pi_inf": None, + "fluid_pp(1)%qv": None, + "fluid_pp(1)%mg_rho0": 8930.0, + "fluid_pp(1)%mg_c0": 3940.0, + "fluid_pp(1)%mg_s": 1.49, + "fluid_pp(1)%mg_gruneisen": 2.0, + } def warnings_for(self, params): validator = CaseValidator(dict(params)) @@ -412,8 +421,13 @@ def test_requires_all_four_parameters(self): def test_rejects_parameters_under_stiffened_gas(self): self.assertRejects({**BASE, "fluid_pp(1)%mg_c0": 3940.0}, "only read when fluid_pp(1)%eos = 'mie_gruneisen'") - def test_rejects_formation_energy(self): - self.assertRejects({**BASE, **self.MG, "fluid_pp(1)%qv": 1.0e5}, "qv must be 0 with eos = 'mie_gruneisen'") + def test_rejects_the_stiffened_gas_parameters(self): + for k in ("gamma", "pi_inf", "qv"): + self.assertRejects({**BASE, **self.MG, f"fluid_pp(1)%{k}": 1.0}, f"fluid_pp(1)%{k} is not read with eos = 'mie_gruneisen'") + + def test_ideal_gas_may_not_set_pi_inf(self): + self.assertRejects({**BASE, "fluid_pp(1)%eos": 2, "fluid_pp(1)%pi_inf": 0.0}, "has no stiffness; do not set fluid_pp(1)%pi_inf") + self.assertAccepts({**BASE, "fluid_pp(1)%eos": 2, "fluid_pp(1)%pi_inf": None, "fluid_pp(1)%qv": None}) def test_rejects_slope_below_one(self): self.assertRejects({**BASE, **self.MG, "fluid_pp(1)%mg_s": 0.9}, "mg_s must be >= 1") From a85d354c457ae2a04ea90f302cd423cc5c19deff Mon Sep 17 00:00:00 2001 From: Spencer Bryngelson Date: Wed, 2 Sep 2026 20:57:12 -0500 Subject: [PATCH 3/7] Evaluate Mie-Gruneisen coefficients per cell along the 5-equation path The mixture loop calls s_eos_coefficients per phase when any fluid's EOS is state dependent; the stiffened-gas arithmetic is untouched (27/27 bit-identical on the gate). The sound speed takes the partial densities as an optional argument and mixes frozen per-phase moduli, with the derivative term applied at that one site. Callers that cannot supply them are refused by the validator: 5-equation, HLL/HLLC/LF only, no bubbles, hypoelasticity, IBM, IGR, relativity, MHD, chemistry, acoustic source, probes, post-process c, characteristic BCs or Wood's law. Validation: symmetric-impact shock speed and plateau density match the Hugoniot to 1.4e-3, and a small pulse travels at the analytic sound speed to 1.9e-4 (the missing derivative term would give 24%). --- examples/1D_mg_acoustic/case.py | 70 +++++++++ examples/1D_mg_impact/case.py | 71 +++++++++ src/common/m_variables_conversion.fpp | 48 ++++-- src/post_process/m_data_output.fpp | 2 +- src/simulation/m_data_output.fpp | 16 +- src/simulation/m_riemann_solver_hll.fpp | 6 +- src/simulation/m_riemann_solver_hllc.fpp | 19 +-- src/simulation/m_riemann_solver_lf.fpp | 4 +- src/simulation/m_sim_helpers.fpp | 10 +- src/simulation/m_time_steppers.fpp | 20 +-- tests/5AC2F65D/golden-metadata.txt | 191 +++++++++++++++++++++++ tests/5AC2F65D/golden.txt | 24 +++ toolchain/mfc/case_validator.py | 12 ++ toolchain/mfc/eos.py | 34 ++++ toolchain/mfc/test/cases.py | 33 +++- toolchain/mfc/test/convergence.py | 80 +++++++++- toolchain/mfc/test_case_validator.py | 8 +- toolchain/mfc/test_eos_mie_gruneisen.py | 22 +-- 18 files changed, 599 insertions(+), 71 deletions(-) create mode 100644 examples/1D_mg_acoustic/case.py create mode 100644 examples/1D_mg_impact/case.py create mode 100644 tests/5AC2F65D/golden-metadata.txt create mode 100644 tests/5AC2F65D/golden.txt create mode 100644 toolchain/mfc/eos.py diff --git a/examples/1D_mg_acoustic/case.py b/examples/1D_mg_acoustic/case.py new file mode 100644 index 000000000..c14071434 --- /dev/null +++ b/examples/1D_mg_acoustic/case.py @@ -0,0 +1,70 @@ +""" +Right-moving acoustic pulse in a single Mie-Gruneisen fluid at its reference state. +The pulse is a simple wave (drho, dp = c^2 drho, du = c drho/rho0) so only the right-going +characteristic carries it; the harness measures its speed against the general analytic c. +""" + +import argparse +import json +import math + +parser = argparse.ArgumentParser(description="1D Mie-Gruneisen acoustic pulse") +parser.add_argument("--mfc", type=json.loads, default="{}", metavar="DICT") +parser.add_argument("-N", type=int, default=200) +parser.add_argument("--cfl", type=float, default=0.4) +args = parser.parse_args() + +rho0, p0, c0, s, gruneisen = 1.0, 1.0, 1.0, 1.5, 0.4 +c = math.sqrt(c0**2 + (1.0 + gruneisen) * p0 / rho0) # the frozen speed at the reference state +amp, x0, width = 1.0e-4, 0.3, 0.05 +N, L, T_end = args.N, 1.0, 0.4 +dt = args.cfl * (L / N) / c +Nt = math.ceil(T_end / dt) +dt = T_end / Nt +pulse = f"{amp}*exp(-((x - {x0})/{width})**2)" + +print( + json.dumps( + { + "run_time_info": "F", + "x_domain%beg": 0.0, + "x_domain%end": L, + "m": N - 1, + "n": 0, + "p": 0, + "dt": dt, + "t_step_start": 0, + "t_step_stop": Nt, + "t_step_save": Nt, + "num_patches": 1, + "model_eqns": 2, + "num_fluids": 1, + "time_stepper": 3, + "recon_type": "weno", + "weno_order": 5, + "weno_eps": 1.0e-16, + "mapped_weno": "T", + "riemann_solver": 2, + "wave_speeds": 1, + "avg_state": 2, + "bc_x%beg": -3, + "bc_x%end": -3, + "format": 1, + "precision": 2, + "prim_vars_wrt": "T", + "parallel_io": "F", + "patch_icpp(1)%geometry": 1, + "patch_icpp(1)%x_centroid": 0.5, + "patch_icpp(1)%length_x": L, + "patch_icpp(1)%alpha_rho(1)": f"{rho0} + {pulse}", + "patch_icpp(1)%alpha(1)": 1.0, + "patch_icpp(1)%vel(1)": f"{c}/{rho0}*{pulse}", + "patch_icpp(1)%pres": f"{p0} + {c}**2*{pulse}", + "fluid_pp(1)%eos": "mie_gruneisen", + "fluid_pp(1)%mg_rho0": rho0, + "fluid_pp(1)%mg_c0": c0, + "fluid_pp(1)%mg_s": s, + "fluid_pp(1)%mg_gruneisen": gruneisen, + } + ) +) diff --git a/examples/1D_mg_impact/case.py b/examples/1D_mg_impact/case.py new file mode 100644 index 000000000..619a966a7 --- /dev/null +++ b/examples/1D_mg_impact/case.py @@ -0,0 +1,71 @@ +""" +Symmetric impact of two Mie-Gruneisen slabs approaching at relative speed U. +Each slab is brought to rest by a shock with particle-velocity jump U/2, so the shock state +lies exactly on the Hugoniot u_s = c0 + s u_p; the harness checks the shock speed and the +plateau density against that relation. +""" + +import argparse +import json +import math + +parser = argparse.ArgumentParser(description="1D Mie-Gruneisen symmetric impact") +parser.add_argument("--mfc", type=json.loads, default="{}", metavar="DICT") +parser.add_argument("-N", type=int, default=800) +parser.add_argument("--U", type=float, default=1.0, help="closing speed of the two slabs") +parser.add_argument("--cfl", type=float, default=0.4) +args = parser.parse_args() + +rho0, p0, c0, s, gruneisen = 1.0, 1.0e-3, 1.0, 1.5, 0.4 +N, L, T_end = args.N, 1.0, 0.2 +dt = args.cfl * (L / N) / (c0 + (s + 1.0) * args.U) +Nt = math.ceil(T_end / dt) +dt = T_end / Nt + +case = { + "run_time_info": "F", + "x_domain%beg": 0.0, + "x_domain%end": L, + "m": N - 1, + "n": 0, + "p": 0, + "dt": dt, + "t_step_start": 0, + "t_step_stop": Nt, + "t_step_save": Nt, + "num_patches": 2, + "model_eqns": 2, + "num_fluids": 1, + "time_stepper": 3, + "recon_type": "weno", + "weno_order": 5, + "weno_eps": 1.0e-16, + "mapped_weno": "T", + "riemann_solver": 2, + "wave_speeds": 1, + "avg_state": 2, + "bc_x%beg": -3, + "bc_x%end": -3, + "format": 1, + "precision": 2, + "prim_vars_wrt": "T", + "parallel_io": "F", + "fluid_pp(1)%eos": "mie_gruneisen", + "fluid_pp(1)%mg_rho0": rho0, + "fluid_pp(1)%mg_c0": c0, + "fluid_pp(1)%mg_s": s, + "fluid_pp(1)%mg_gruneisen": gruneisen, +} +for pid, (x_c, vel) in enumerate([(0.25, 0.5 * args.U), (0.75, -0.5 * args.U)], start=1): + case.update( + { + f"patch_icpp({pid})%geometry": 1, + f"patch_icpp({pid})%x_centroid": x_c, + f"patch_icpp({pid})%length_x": 0.5 * L, + f"patch_icpp({pid})%alpha_rho(1)": rho0, + f"patch_icpp({pid})%alpha(1)": 1.0, + f"patch_icpp({pid})%vel(1)": vel, + f"patch_icpp({pid})%pres": p0, + } + ) +print(json.dumps(case)) diff --git a/src/common/m_variables_conversion.fpp b/src/common/m_variables_conversion.fpp index feedc6894..75e548c54 100644 --- a/src/common/m_variables_conversion.fpp +++ b/src/common/m_variables_conversion.fpp @@ -1206,6 +1206,7 @@ contains real(wp), dimension(num_fluids), intent(in) :: alpha_rho_K, alpha_K #:endif real(wp), intent(out) :: rho_K, gamma_K, pi_inf_K, qv_K + real(wp) :: gamma_i, pi_inf_i, dpi_i integer :: i !< Loop iterator over fluids ! The bubbly closure is written for one carrier liquid, which keeps its own coefficients @@ -1227,8 +1228,14 @@ contains $:GPU_LOOP(parallelism='[seq]') do i = 1, num_fluids rho_K = rho_K + alpha_rho_K(i) - gamma_K = gamma_K + alpha_K(i)*gammas(i) - pi_inf_K = pi_inf_K + alpha_K(i)*pi_infs(i) + if (any_state_dependent_eos) then + call s_eos_coefficients(alpha_rho_K(i)/max(alpha_K(i), sgm_eps), i, gamma_i, pi_inf_i, dpi_i) + else + gamma_i = gammas(i) + pi_inf_i = pi_infs(i) + end if + gamma_K = gamma_K + alpha_K(i)*gamma_i + pi_inf_K = pi_inf_K + alpha_K(i)*pi_inf_i qv_K = qv_K + alpha_rho_K(i)*qvs(i) end do end if @@ -1473,7 +1480,7 @@ contains !> Speed of sound of a thermodynamic state. Enthalpy is not an argument: for a real state H, |u|^2 and qv all cancel out of c^2 !! = ((Gamma + 1)p + Pi)/(Gamma rho). Averaged states, whose enthalpy is a free input, use the _avg variant. - subroutine s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c) + subroutine s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c, alpha_rho) $:GPU_ROUTINE(parallelism='[seq]') @@ -1484,8 +1491,14 @@ contains real(wp), dimension(num_fluids), intent(in) :: adv #:endif real(wp), intent(out) :: c - real(wp) :: alf !< Subgrid void fraction; dilute by construction - integer :: q + #:if not MFC_CASE_OPTIMIZATION and USING_AMD + real(wp), dimension(3), intent(in), optional :: alpha_rho + #:else + real(wp), dimension(num_fluids), intent(in), optional :: alpha_rho + #:endif + real(wp) :: alf !< Subgrid void fraction; dilute by construction + real(wp) :: rho_q, gamma_q, pi_inf_q, dpi_q + integer :: q if (chemistry) then ! Reacting mixture sound speed c = sqrt((1.0_wp + 1.0_wp/gamma)*pres/rho) @@ -1494,7 +1507,16 @@ contains else ! Every case below is a bulk modulus over a density. The equation of state enters ! only through f_bulk_modulus; the cases differ in how the phases are mixed. - if (alt_soundspeed) then ! Wood's law: volume-weighted harmonic mean + if (any_state_dependent_eos .and. present(alpha_rho)) then ! frozen mixing: each phase's modulus at its own density + c = 0._wp + $:GPU_LOOP(parallelism='[seq]') + do q = 1, num_fluids + rho_q = alpha_rho(q)/max(adv(q), sgm_eps) + call s_eos_coefficients(rho_q, q, gamma_q, pi_inf_q, dpi_q) + c = c + adv(q)*(f_bulk_modulus(pres, gamma_q, pi_inf_q) - rho_q*dpi_q/gamma_q) + end do + c = c/rho + else if (alt_soundspeed) then ! Wood's law: volume-weighted harmonic mean c = 1._wp/(rho*(adv(1)/f_bulk_modulus(pres, gammas(1), pi_infs(1)) + adv(2)/f_bulk_modulus(pres, gammas(2), & & pi_infs(2)))) else if (model_eqns == model_eqns_6eq) then ! volume-weighted arithmetic mean @@ -1528,7 +1550,7 @@ contains !> Speed of sound of an interface-averaged state. An average of two states is not a state - its enthalpy is not the one its !! pressure and density imply - so the caller supplies H, |u|^2 and qv. Only the enthalpy-reading branches differ from !! s_compute_speed_of_sound; keep the condition below in step with the branch list there. - subroutine s_compute_speed_of_sound_avg(pres, rho, gamma, pi_inf, qv, vel_sum, H, c_c, adv, c) + subroutine s_compute_speed_of_sound_avg(pres, rho, gamma, pi_inf, qv, vel_sum, H, c_c, adv, c, alpha_rho) $:GPU_ROUTINE(parallelism='[seq]') @@ -1539,17 +1561,23 @@ contains real(wp), dimension(num_fluids), intent(in) :: adv #:endif real(wp), intent(out) :: c + #:if not MFC_CASE_OPTIMIZATION and USING_AMD + real(wp), dimension(3), intent(in), optional :: alpha_rho + #:else + real(wp), dimension(num_fluids), intent(in), optional :: alpha_rho + #:endif if (chemistry) then ! Reacting mixture sound speed if (avg_state == avg_state_roe .and. abs(c_c) > verysmall) then c = sqrt(c_c - (gamma - 1.0_wp)*(vel_sum - H)) else - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c) + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c, alpha_rho) end if else if (relativity) then ! Relativistic sound speed c = sqrt((1._wp + 1._wp/gamma)*pres/rho/H) - else if (alt_soundspeed .or. model_eqns == model_eqns_6eq .or. (model_eqns == model_eqns_5eq .and. bubbles_euler)) then - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c) + else if (alt_soundspeed .or. model_eqns == model_eqns_6eq .or. (model_eqns == model_eqns_5eq .and. bubbles_euler) & + & .or. any_state_dependent_eos) then + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c, alpha_rho) else ! Stiffened-gas mixture, the one branch where the averaged enthalpy survives c = (H - 5.e-1*vel_sum - qv/rho)/gamma diff --git a/src/post_process/m_data_output.fpp b/src/post_process/m_data_output.fpp index 1542f161a..67f0bc3f6 100644 --- a/src/post_process/m_data_output.fpp +++ b/src/post_process/m_data_output.fpp @@ -1281,7 +1281,7 @@ contains call s_compute_mixture_coefficients(alpha_rho, adv, rho, gamma, pi_inf, qv) - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c) + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c, alpha_rho) Ma = maxvel/c if (Ma > MaxMa .and. (adv(1) > (1.0_wp - 1.0e-10_wp))) then diff --git a/src/simulation/m_data_output.fpp b/src/simulation/m_data_output.fpp index 6c923b334..22abe1b16 100644 --- a/src/simulation/m_data_output.fpp +++ b/src/simulation/m_data_output.fpp @@ -163,11 +163,11 @@ contains real(wp) :: rho !< Cell-avg. density #:if not MFC_CASE_OPTIMIZATION and USING_AMD - real(wp), dimension(3) :: alpha !< Cell-avg. volume fraction - real(wp), dimension(3) :: vel !< Cell-avg. velocity + real(wp), dimension(3) :: alpha, alpha_rho !< Cell-avg. volume fraction, partial density + real(wp), dimension(3) :: vel !< Cell-avg. velocity #:else - real(wp), dimension(num_fluids) :: alpha !< Cell-avg. volume fraction - real(wp), dimension(num_vels) :: vel !< Cell-avg. velocity + real(wp), dimension(num_fluids) :: alpha, alpha_rho !< Cell-avg. volume fraction, partial density + real(wp), dimension(num_vels) :: vel !< Cell-avg. velocity #:endif real(wp) :: vel_sum !< Cell-avg. velocity sum real(wp) :: pres !< Cell-avg. pressure @@ -189,15 +189,15 @@ contains ccfl_max_loc = 0._wp Rc_min_loc = huge(1.0_wp) ! Computing Stability Criteria at Current Time-step - $:GPU_PARALLEL_LOOP(collapse=3, private='[j, k, l, vel, alpha, Re, rho, vel_sum, pres, gamma, pi_inf, c, qv, icfl, vcfl, & - & Rc, ccfl, fl]', reduction='[[icfl_max_loc, vcfl_max_loc, ccfl_max_loc], [Rc_min_loc]]', & + $:GPU_PARALLEL_LOOP(collapse=3, private='[j, k, l, vel, alpha, alpha_rho, Re, rho, vel_sum, pres, gamma, pi_inf, c, qv, & + & icfl, vcfl, Rc, ccfl, fl]', reduction='[[icfl_max_loc, vcfl_max_loc, ccfl_max_loc], [Rc_min_loc]]', & & reductionOp='[max, min]') do l = 0, p do k = 0, n do j = 0, m - call s_compute_cell_state(q_prim_vf, pres, rho, gamma, pi_inf, Re, alpha, vel, vel_sum, qv, j, k, l) + call s_compute_cell_state(q_prim_vf, pres, rho, gamma, pi_inf, Re, alpha, alpha_rho, vel, vel_sum, qv, j, k, l) - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c) + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c, alpha_rho) if (any_non_newtonian) then Re(1) = 0._wp diff --git a/src/simulation/m_riemann_solver_hll.fpp b/src/simulation/m_riemann_solver_hll.fpp index a6413217e..6267e074c 100644 --- a/src/simulation/m_riemann_solver_hll.fpp +++ b/src/simulation/m_riemann_solver_hll.fpp @@ -333,13 +333,13 @@ contains end if end if - call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L) + call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L, alpha_rho_L) - call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R) + call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R, alpha_rho_R) if (wave_speeds == wave_speeds_pressure) then call s_compute_speed_of_sound_avg(pres_R, rho_avg, gamma_avg, pi_inf_R, qv_avg, vel_avg_rms, & - & H_avg, c_sum_Yi_Phi, alpha_R, c_avg) + & H_avg, c_sum_Yi_Phi, alpha_R, c_avg, alpha_rho_R) end if if (mhd) then diff --git a/src/simulation/m_riemann_solver_hllc.fpp b/src/simulation/m_riemann_solver_hllc.fpp index 6d4710a10..671e81f4e 100644 --- a/src/simulation/m_riemann_solver_hllc.fpp +++ b/src/simulation/m_riemann_solver_hllc.fpp @@ -276,15 +276,15 @@ contains & qv_R, rho_avg, vel_avg_rms, H_avg, gamma_avg, qv_avg) end if - call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L) + call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L, alpha_rho_L) - call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R) + call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R, alpha_rho_R) ! Only the pressure-based wave-speed estimate reads the averaged state, and building it ! costs eight square roots per face under the Roe average. if (wave_speeds == wave_speeds_pressure) then call s_compute_speed_of_sound_avg(pres_R, rho_avg, gamma_avg, pi_inf_R, qv_avg, vel_avg_rms, & - & H_avg, c_sum_Yi_Phi, alpha_R, c_avg) + & H_avg, c_sum_Yi_Phi, alpha_R, c_avg, alpha_rho_R) end if if (viscous) then @@ -630,9 +630,9 @@ contains end do end if - call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L) + call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L, alpha_rho_L) - call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R) + call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R, alpha_rho_R) ! Only the pressure-based wave-speed estimate reads the averaged state, and building it ! costs eight square roots per face under the Roe average. @@ -640,7 +640,7 @@ contains ! Zero, not c_sum_Yi_Phi: this loop never forms the chemistry average, and ! chemistry with bubbles_euler/qbmm is prohibited, so the branch is unreachable. call s_compute_speed_of_sound_avg(pres_R, rho_avg, gamma_avg, pi_inf_R, qv_avg, vel_avg_rms, & - & H_avg, 0._wp, alpha_R, c_avg) + & H_avg, 0._wp, alpha_R, c_avg, alpha_rho_R) end if if (viscous) then @@ -1058,15 +1058,16 @@ contains end if end if - call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L) + call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L, alpha_rho_L) - call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R) + call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R, alpha_rho_R) ! Only the pressure-based wave-speed estimate reads the averaged state, and building it ! costs eight square roots per face under the Roe average. if (wave_speeds == wave_speeds_pressure) then call s_compute_speed_of_sound_avg(pres_R, rho_avg, gamma_avg, pi_inf_R, qv_avg, & - & vel_avg_rms, H_avg, c_sum_Yi_Phi, alpha_R, c_avg) + & vel_avg_rms, H_avg, c_sum_Yi_Phi, alpha_R, c_avg, & + & alpha_rho_R) end if if (viscous) then diff --git a/src/simulation/m_riemann_solver_lf.fpp b/src/simulation/m_riemann_solver_lf.fpp index 627466678..37822dc08 100644 --- a/src/simulation/m_riemann_solver_lf.fpp +++ b/src/simulation/m_riemann_solver_lf.fpp @@ -211,9 +211,9 @@ contains call s_compute_energy(pres_R, alpha_rho_R, alpha_R, vel_R_rms, E_R) end if - call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L) + call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, alpha_L, c_L, alpha_rho_L) - call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R) + call s_compute_speed_of_sound(pres_R, rho_R, gamma_R, pi_inf_R, alpha_R, c_R, alpha_rho_R) s_L = 0._wp; s_R = 0._wp diff --git a/src/simulation/m_sim_helpers.fpp b/src/simulation/m_sim_helpers.fpp index 37892266a..913838c8d 100644 --- a/src/simulation/m_sim_helpers.fpp +++ b/src/simulation/m_sim_helpers.fpp @@ -42,16 +42,16 @@ contains end function f_compute_filtered_dtheta !> Computes the mixture coefficients, velocity and pressure of one cell - subroutine s_compute_cell_state(q_prim_vf, pres, rho, gamma, pi_inf, Re, alpha, vel, vel_sum, qv, j, k, l) + subroutine s_compute_cell_state(q_prim_vf, pres, rho, gamma, pi_inf, Re, alpha, alpha_rho, vel, vel_sum, qv, j, k, l) $:GPU_ROUTINE(function_name='s_compute_cell_state',parallelism='[seq]', cray_inline=True) type(scalar_field), intent(in), dimension(sys_size) :: q_prim_vf #:if not MFC_CASE_OPTIMIZATION and USING_AMD - real(wp), intent(inout), dimension(3) :: alpha + real(wp), intent(inout), dimension(3) :: alpha, alpha_rho real(wp), intent(inout), dimension(3) :: vel #:else - real(wp), intent(inout), dimension(num_fluids) :: alpha + real(wp), intent(inout), dimension(num_fluids) :: alpha, alpha_rho real(wp), intent(inout), dimension(num_vels) :: vel #:endif real(wp), intent(inout) :: rho, gamma, pi_inf, vel_sum, pres @@ -59,9 +59,9 @@ contains integer, intent(in) :: j, k, l real(wp), dimension(2), intent(inout) :: Re #:if not MFC_CASE_OPTIMIZATION and USING_AMD - real(wp), dimension(3) :: alpha_rho, Gs + real(wp), dimension(3) :: Gs #:else - real(wp), dimension(num_fluids) :: alpha_rho, Gs + real(wp), dimension(num_fluids) :: Gs #:endif real(wp) :: G_local integer :: i diff --git a/src/simulation/m_time_steppers.fpp b/src/simulation/m_time_steppers.fpp index 9a04225b0..b680be87e 100644 --- a/src/simulation/m_time_steppers.fpp +++ b/src/simulation/m_time_steppers.fpp @@ -641,11 +641,11 @@ contains real(wp) :: rho !< Cell-avg. density #:if not MFC_CASE_OPTIMIZATION and USING_AMD - real(wp), dimension(3) :: vel !< Cell-avg. velocity - real(wp), dimension(3) :: alpha !< Cell-avg. volume fraction + real(wp), dimension(3) :: vel !< Cell-avg. velocity + real(wp), dimension(3) :: alpha, alpha_rho !< Cell-avg. volume fraction, partial density #:else - real(wp), dimension(num_vels) :: vel !< Cell-avg. velocity - real(wp), dimension(num_fluids) :: alpha !< Cell-avg. volume fraction + real(wp), dimension(num_vels) :: vel !< Cell-avg. velocity + real(wp), dimension(num_fluids) :: alpha, alpha_rho !< Cell-avg. volume fraction, partial density #:endif real(wp) :: vel_sum !< Cell-avg. velocity sum real(wp) :: pres !< Cell-avg. pressure @@ -664,19 +664,21 @@ contains end if dt_local = huge(1.0_wp) - $:GPU_PARALLEL_LOOP(collapse=3, private='[vel, alpha, Re, rho, vel_sum, pres, gamma, pi_inf, c, qv, fl, max_dt]', & - & reduction='[[dt_local]]', reductionOp='[min]') + $:GPU_PARALLEL_LOOP(collapse=3, private='[vel, alpha, alpha_rho, Re, rho, vel_sum, pres, gamma, pi_inf, c, qv, fl, & + & max_dt]', reduction='[[dt_local]]', reductionOp='[min]') do l = 0, p do k = 0, n do j = 0, m if (igr) then - call s_compute_cell_state(q_cons_ts(1)%vf, pres, rho, gamma, pi_inf, Re, alpha, vel, vel_sum, qv, j, k, l) + call s_compute_cell_state(q_cons_ts(1)%vf, pres, rho, gamma, pi_inf, Re, alpha, alpha_rho, vel, vel_sum, & + & qv, j, k, l) else - call s_compute_cell_state(q_prim_vf, pres, rho, gamma, pi_inf, Re, alpha, vel, vel_sum, qv, j, k, l) + call s_compute_cell_state(q_prim_vf, pres, rho, gamma, pi_inf, Re, alpha, alpha_rho, vel, vel_sum, qv, j, & + & k, l) end if ! Compute mixture sound speed - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c) + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c, alpha_rho) if (any_non_newtonian) then Re(1) = 0._wp diff --git a/tests/5AC2F65D/golden-metadata.txt b/tests/5AC2F65D/golden-metadata.txt new file mode 100644 index 000000000..3a66558f5 --- /dev/null +++ b/tests/5AC2F65D/golden-metadata.txt @@ -0,0 +1,191 @@ +This file was created on 2026-09-02 20:24:12.370246. + +mfc.sh: + + Invocation: test -j 1 --gpu mp --generate --only 5AC2F65D + Lock: mpi=Yes & gpu=Mp & debug=No & reldebug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No + Git: 3ffde53b4c166aa8e15348abe433630a7e148ef4 on feature/mie-gruneisen-solver (dirty) + +syscheck: + + CMake Configuration: + + CMake v3.25.2 on k006-004-v7.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : ON + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc + CXX : /opt/ohpc/pub/compiler/gcc/12.2.0/bin/c++ + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +simulation: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : ON + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +pre_process: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : ON + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +post_process: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : ON + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +CPU: + + CPU Info: + From lscpu + Architecture: x86_64 + CPU op-mode(s): 32-bit, 64-bit + Address sizes: 48 bits physical, 48 bits virtual + Byte Order: Little Endian + CPU(s): 16 + On-line CPU(s) list: 0-15 + Vendor ID: AuthenticAMD + Model name: AMD EPYC 7V13 64-Core Processor + CPU family: 25 + Model: 1 + Thread(s) per core: 1 + Core(s) per socket: 1 + Socket(s): 16 + Stepping: 1 + BogoMIPS: 4890.81 + Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean flushbyasid pausefilter pfthreshold v_vmsave_vmload vgif umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor arch_capabilities + Virtualization: AMD-V + Hypervisor vendor: KVM + Virtualization type: full + L1d cache: 1 MiB (16 instances) + L1i cache: 1 MiB (16 instances) + L2 cache: 8 MiB (16 instances) + L3 cache: 256 MiB (16 instances) + NUMA node(s): 1 + NUMA node0 CPU(s): 0-15 + Vulnerability Gather data sampling: Not affected + Vulnerability Indirect target selection: Not affected + Vulnerability Itlb multihit: Not affected + Vulnerability L1tf: Not affected + Vulnerability Mds: Not affected + Vulnerability Meltdown: Not affected + Vulnerability Mmio stale data: Not affected + Vulnerability Reg file data sampling: Not affected + Vulnerability Retbleed: Not affected + Vulnerability Spec rstack overflow: Vulnerable: Safe RET, no microcode + Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl + Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization + Vulnerability Spectre v2: Mitigation; Retpolines; IBPB conditional; IBRS_FW; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected + Vulnerability Srbds: Not affected + Vulnerability Tsa: Vulnerable: No microcode + Vulnerability Tsx async abort: Not affected + Vulnerability Vmscape: Not affected + diff --git a/tests/5AC2F65D/golden.txt b/tests/5AC2F65D/golden.txt new file mode 100644 index 000000000..9658540c4 --- /dev/null +++ b/tests/5AC2F65D/golden.txt @@ -0,0 +1,24 @@ +D/cons.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/cons.1.00.000050.dat 0.81000000000105 0.81000000000473 0.80999999999401 0.80999999996407 0.81000000000449 0.81000000016452 0.80999999981514 0.8099999967751 0.80999998141795 0.80999990100208 0.80999949546846 0.8099975588105 0.80998882699222 0.80995172941667 0.80980352403798 0.80924797225729 0.80730831776682 0.80075942533141 0.78233387677271 0.75588175253221 0.73483290471555 0.71614988442417 0.70241463686298 0.70205934354209 0.69503702803707 0.69342821894165 0.69501935538136 0.69512815632082 0.69361001154088 0.69408521778969 0.6707512794281 0.52516839918889 0.34219691096305 0.29772883960781 0.28876143447198 0.2884605431297 0.28807531149753 0.28815517098807 0.28701819240252 0.28859239274965 0.28413541042879 0.28340274424475 0.27460427844021 0.26210426197247 0.25296423960551 0.25065925679242 0.25014529379589 0.25003097586269 0.25000638261896 0.25000126864968 0.25000024292396 0.25000004482362 0.25000000799052 0.25000000131017 0.25000000008082 0.24999999993363 0.24999999999883 0.25000000001463 0.25000000000223 0.24999999999803 0.24999999999956 0.25000000000028 0.25000000000008 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999996 0.24999999999973 0.25000000000012 0.25000000000179 0.24999999999994 0.24999999998804 0.24999999998992 0.25000000005015 0.25000000002667 0.24999999932688 0.24999999570048 0.24999997733626 0.24999988618782 0.24999945721195 0.24999755548974 0.24998964114632 0.24995884616444 0.24984741610064 0.24947518055954 0.24834304184915 0.24518456060669 0.23771038458238 0.22630310173052 0.21339612764364 0.20406091387051 0.19532039231634 0.18998694302767 0.1879656297177 0.18508322428614 0.1840754282524 0.18577307269787 0.18484779825405 0.18423423535055 0.18478502416963 0.18343194454611 0.16929362227557 0.13572387472256 0.10967685324411 0.10377754352862 0.10206739439582 0.10185399320593 0.10166403227817 0.10147942942983 0.10131047914388 0.10173444008987 0.10094280213316 0.10206133926594 0.09879577564787 0.09690739495738 0.08962966823484 0.08266732699432 0.08051431750828 0.08010432426208 0.08002065485065 0.0800040168818 0.08000076512497 0.08000014247418 0.08000002590658 0.08000000456683 0.08000000067584 0.08000000002915 0.07999999998024 0.08000000000398 0.08000000000626 0.0800000000004 0.07999999999908 0.07999999999988 0.08000000000015 0.08000000000003 0.07999999999998 0.07999999999999 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/cons.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/cons.2.00.000050.dat 0.19000000000025 0.19000000000111 0.1899999999986 0.18999999999157 0.19000000000105 0.19000000003859 0.18999999995664 0.18999999924354 0.18999999564125 0.18999997677827 0.1899998816531 0.1899994273753 0.18999737917101 0.18998867727058 0.18995391304595 0.18982359843072 0.18936861774777 0.18783245779379 0.18351041553929 0.17730559626994 0.1723682122439 0.16798577477913 0.16476392965425 0.16468057091568 0.16303344600589 0.16265568956305 0.16303019460191 0.16305073240852 0.16270144745718 0.16281160689485 0.17013011454079 0.21497356268213 0.26681275625691 0.28701131283212 0.28768718567725 0.28817839050568 0.28830717536174 0.28822609458879 0.28713870024394 0.28857719208347 0.28417355725006 0.28340664506638 0.27460387202306 0.26210418586311 0.25296423976117 0.25065925678732 0.25014529379589 0.25003097586269 0.25000638261896 0.25000126864968 0.25000024292396 0.25000004482362 0.25000000799052 0.25000000131017 0.25000000008082 0.24999999993363 0.24999999999883 0.25000000001463 0.25000000000223 0.24999999999803 0.24999999999956 0.25000000000028 0.25000000000008 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999996 0.24999999999973 0.25000000000012 0.25000000000179 0.24999999999994 0.24999999998804 0.24999999998992 0.25000000005015 0.25000000002667 0.24999999932688 0.24999999570048 0.24999997733626 0.24999988618782 0.24999945721195 0.24999755548974 0.24998964114632 0.24995884616444 0.24984741610064 0.24947518055954 0.24834304184915 0.24518456060602 0.23771038466488 0.22630310005793 0.21339620634691 0.20406050231277 0.19532650055959 0.18997055155394 0.1880171991449 0.18494202219434 0.18426045859518 0.18556449988766 0.18482398305435 0.18442509204953 0.18461020240768 0.18142631549458 0.15861150695561 0.09815591755868 0.04573431949285 0.03195804958427 0.02912336957079 0.02878325492241 0.02861399174212 0.02854510399969 0.0284742628043 0.02860880963653 0.02837702767502 0.02870478049695 0.02778235117261 0.02725466992345 0.0252086218109 0.02325019063049 0.02264465181162 0.02252934119872 0.02250580917675 0.02250112974801 0.0225002151914 0.02250004007086 0.02250000728623 0.02250000128442 0.02250000019008 0.0225000000082 0.02249999999444 0.02250000000112 0.02250000000176 0.02250000000011 0.02249999999974 0.02249999999997 0.02250000000004 0.02250000000001 0.02249999999999 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/cons.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/cons.3.00.000050.dat -1.93e-12 -8.68e-12 1.1e-11 6.589e-11 -7.71e-12 -2.9786e-10 3.5394e-10 5.74758e-09 3.402522e-08 1.8167785e-07 9.2596039e-07 4.48034622e-06 2.05058768e-05 8.858906243e-05 0.00036055040814 0.00137955028644 0.00493166149875 0.01684669184666 0.05000144199825 0.09352349591282 0.13457802036663 0.16017177238021 0.17251106843883 0.19282924791141 0.18964047716135 0.1917434592698 0.19579487615641 0.19436027362994 0.19216276928983 0.19335986867506 0.19099904809838 0.16745060648514 0.13669605232212 0.13165692959926 0.13116610456639 0.13101744337351 0.12947334031707 0.12897396657155 0.12949346531537 0.12375989906637 0.12642820095657 0.10424969204749 0.08349832740146 0.0388974720629 0.00929918003281 0.00205646406425 0.00045263621532 9.647084119e-05 1.987662753e-05 3.95075105e-06 7.5650166e-07 1.3958994e-07 2.491564e-08 4.15483e-09 2.4574e-10 -2.0856e-10 -3.89e-12 4.56e-11 6.93e-12 -6.14e-12 -1.36e-12 8.8e-13 2.6e-13 -1.1e-13 -4e-14 1e-14 1e-14 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 2e-14 -2e-14 -1.2e-13 1.2e-13 8.5e-13 -3.8e-13 -5.59e-12 1.8e-13 3.725e-11 3.124e-11 -1.5628e-10 -9.457e-11 2.15488e-09 1.342214e-08 7.060683e-08 3.5443598e-07 1.69030241e-06 7.61246457e-06 3.225804637e-05 0.00012814689263 0.00047501014823 0.00163249361478 0.00514117019023 0.01484969091201 0.03706485282088 0.06975677777979 0.10235570915869 0.13064120043485 0.14308901390357 0.15613723560419 0.16862906493687 0.16498236245308 0.16825280754807 0.17108839977785 0.16870853399508 0.16763936744753 0.16902838390221 0.1674299785145 0.14994581182637 0.10646471753827 0.07051250354644 0.06205508752626 0.06058140801432 0.06032165666191 0.05947203046611 0.05899307934088 0.05916236971218 0.05847081170925 0.05984762355369 0.0561708829033 0.05465774417312 0.04359544860831 0.02469829578075 0.00644967603782 0.00122126740972 0.00024683519949 4.883367963e-05 9.49555628e-06 1.80863434e-06 3.3679341e-07 6.128884e-08 1.090297e-08 1.81759e-09 6.825e-11 -5.307e-11 8.86e-12 1.489e-11 9.3e-13 -2.17e-12 -2.7e-13 3.5e-13 7e-14 -5e-14 -1e-14 1e-14 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 +D/cons.4.00.000000.dat 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 +D/cons.4.00.000050.dat 2.50000000000454 2.50000000002043 2.49999999997413 2.49999999984474 2.50000000001941 2.50000000071091 2.49999999920123 2.49999998606523 2.49999991970717 2.49999957223127 2.49999781992669 2.49998945167825 2.49995172213944 2.49979143370112 2.49915119544517 2.4967528567253 2.48839858170219 2.46041492942671 2.38331724228801 2.27630524710102 2.19554929540433 2.12524215896009 2.0738035741938 2.07685921311746 2.04912756836397 2.04322331502971 2.05138614680461 2.04785573157922 2.04718543777935 2.0482722555776 2.05234243203676 2.08840650846582 2.16323761608239 2.16906680383295 2.17718935317326 2.17552251251586 2.17825807972824 2.17590779026632 2.16616166128837 2.17750363478678 2.1354146786191 2.12281073816574 2.03360971262453 1.90902485812864 1.82188235301559 1.80050641936285 1.79577848372874 1.79472876013775 1.79450302383195 1.79445608787473 1.7944466739483 1.79444485582574 1.79444451777962 1.79444445646891 1.79444444518622 1.79444444383527 1.79444444443368 1.79444444457876 1.79444444446489 1.79444444442636 1.79444444444044 1.79444444444703 1.7944444444452 1.79444444444411 1.79444444444432 1.79444444444449 1.79444444444446 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444445 1.79444444444445 1.79444444444443 1.7944444444444 1.79444444444451 1.79444444444479 1.7944444444441 1.79444444444194 1.79444444444557 1.7944444444609 1.79444444444391 1.79444444433468 1.79444444435196 1.79444444490472 1.79444444468923 1.79444443826666 1.79444440498436 1.79444423644166 1.79444339990191 1.79443946286427 1.79442200942756 1.79434937588646 1.79406678495725 1.79304461264412 1.78963406031647 1.7792979034799 1.75075094895182 1.68476375074385 1.58821375391779 1.48464001555593 1.41557655124407 1.35006654561488 1.31295242612592 1.30493834831349 1.27553398330751 1.28036280659909 1.28292288671433 1.27985649858138 1.27717762404129 1.27755677304824 1.26364020321158 1.18574941700837 0.96478004983766 0.78712848759005 0.73644627775421 0.72947187916884 0.7286599688487 0.7276811893064 0.72481956959847 0.72358911686263 0.72587385661699 0.71987513721717 0.72740601099551 0.69817035496179 0.67717114549128 0.60951601131881 0.54926722194352 0.53183442907785 0.52859728666688 0.52793989465871 0.52780930042835 0.52778378193063 0.527778895806 0.52777798107252 0.52777781361472 0.52777778308124 0.52777777800653 0.52777777762269 0.52777777780899 0.52777777782688 0.52777777778092 0.52777777777056 0.52777777777688 0.52777777777893 0.52777777777801 0.52777777777761 0.52777777777773 0.5277777777778 0.52777777777779 0.52777777777777 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 +D/cons.5.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/cons.5.00.000050.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.87548479251571 0.72967224236376 0.55537713832821 0.50710264386236 0.50078553204384 0.50007097186444 0.50000534443764 0.50000033791608 0.50000001823989 0.50000000088384 0.49999999991387 0.49999999999592 0.50000000000424 0.49999999999994 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49920834538201 0.49127332794032 0.44767194141776 0.32874918238154 0.23234903107108 0.20584022348196 0.20095186797927 0.20013341159197 0.20001627616279 0.20000174730049 0.20000016722647 0.20000001424383 0.20000000109008 0.19999999986005 0.19999999998423 0.2000000000108 0.20000000000013 0.19999999999994 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/cons.6.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/cons.6.00.000050.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.12451520748429 0.27032775763624 0.44462286167179 0.49289735613764 0.49921446795616 0.49992902813556 0.49999465556236 0.49999966208392 0.49999998176011 0.49999999911617 0.50000000008613 0.50000000000408 0.49999999999576 0.50000000000007 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.50079165461799 0.50872667205968 0.55232805858224 0.67125081761846 0.76765096892892 0.79415977651804 0.79904813202073 0.79986658840803 0.79998372383721 0.79999825269951 0.79999983277353 0.79999998575617 0.79999999890992 0.80000000013995 0.80000000001577 0.7999999999892 0.79999999999987 0.80000000000006 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/prim.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/prim.1.00.000050.dat 0.81000000000105 0.81000000000473 0.80999999999401 0.80999999996407 0.81000000000449 0.81000000016452 0.80999999981514 0.8099999967751 0.80999998141795 0.80999990100208 0.80999949546846 0.8099975588105 0.80998882699222 0.80995172941667 0.80980352403798 0.80924797225729 0.80730831776682 0.80075942533141 0.78233387677271 0.75588175253221 0.73483290471555 0.71614988442417 0.70241463686298 0.70205934354209 0.69503702803707 0.69342821894165 0.69501935538136 0.69512815632082 0.69361001154088 0.69408521778969 0.6707512794281 0.52516839918889 0.34219691096305 0.29772883960781 0.28876143447198 0.2884605431297 0.28807531149753 0.28815517098807 0.28701819240252 0.28859239274965 0.28413541042879 0.28340274424475 0.27460427844021 0.26210426197247 0.25296423960551 0.25065925679242 0.25014529379589 0.25003097586269 0.25000638261896 0.25000126864968 0.25000024292396 0.25000004482362 0.25000000799052 0.25000000131017 0.25000000008082 0.24999999993363 0.24999999999883 0.25000000001463 0.25000000000223 0.24999999999803 0.24999999999956 0.25000000000028 0.25000000000008 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999996 0.24999999999973 0.25000000000012 0.25000000000179 0.24999999999994 0.24999999998804 0.24999999998992 0.25000000005015 0.25000000002667 0.24999999932688 0.24999999570048 0.24999997733626 0.24999988618782 0.24999945721195 0.24999755548974 0.24998964114632 0.24995884616444 0.24984741610064 0.24947518055954 0.24834304184915 0.24518456060669 0.23771038458238 0.22630310173052 0.21339612764364 0.20406091387051 0.19532039231634 0.18998694302767 0.1879656297177 0.18508322428614 0.1840754282524 0.18577307269787 0.18484779825405 0.18423423535055 0.18478502416963 0.18343194454611 0.16929362227557 0.13572387472256 0.10967685324411 0.10377754352862 0.10206739439582 0.10185399320593 0.10166403227817 0.10147942942983 0.10131047914388 0.10173444008987 0.10094280213316 0.10206133926594 0.09879577564787 0.09690739495738 0.08962966823484 0.08266732699432 0.08051431750828 0.08010432426208 0.08002065485065 0.0800040168818 0.08000076512497 0.08000014247418 0.08000002590658 0.08000000456683 0.08000000067584 0.08000000002915 0.07999999998024 0.08000000000398 0.08000000000626 0.0800000000004 0.07999999999908 0.07999999999988 0.08000000000015 0.08000000000003 0.07999999999998 0.07999999999999 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/prim.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/prim.2.00.000050.dat 0.19000000000025 0.19000000000111 0.1899999999986 0.18999999999157 0.19000000000105 0.19000000003859 0.18999999995664 0.18999999924354 0.18999999564125 0.18999997677827 0.1899998816531 0.1899994273753 0.18999737917101 0.18998867727058 0.18995391304595 0.18982359843072 0.18936861774777 0.18783245779379 0.18351041553929 0.17730559626994 0.1723682122439 0.16798577477913 0.16476392965425 0.16468057091568 0.16303344600589 0.16265568956305 0.16303019460191 0.16305073240852 0.16270144745718 0.16281160689485 0.17013011454079 0.21497356268213 0.26681275625691 0.28701131283212 0.28768718567725 0.28817839050568 0.28830717536174 0.28822609458879 0.28713870024394 0.28857719208347 0.28417355725006 0.28340664506638 0.27460387202306 0.26210418586311 0.25296423976117 0.25065925678732 0.25014529379589 0.25003097586269 0.25000638261896 0.25000126864968 0.25000024292396 0.25000004482362 0.25000000799052 0.25000000131017 0.25000000008082 0.24999999993363 0.24999999999883 0.25000000001463 0.25000000000223 0.24999999999803 0.24999999999956 0.25000000000028 0.25000000000008 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999996 0.24999999999973 0.25000000000012 0.25000000000179 0.24999999999994 0.24999999998804 0.24999999998992 0.25000000005015 0.25000000002667 0.24999999932688 0.24999999570048 0.24999997733626 0.24999988618782 0.24999945721195 0.24999755548974 0.24998964114632 0.24995884616444 0.24984741610064 0.24947518055954 0.24834304184915 0.24518456060602 0.23771038466488 0.22630310005793 0.21339620634691 0.20406050231277 0.19532650055959 0.18997055155394 0.1880171991449 0.18494202219434 0.18426045859518 0.18556449988766 0.18482398305435 0.18442509204953 0.18461020240768 0.18142631549458 0.15861150695561 0.09815591755868 0.04573431949285 0.03195804958427 0.02912336957079 0.02878325492241 0.02861399174212 0.02854510399969 0.0284742628043 0.02860880963653 0.02837702767502 0.02870478049695 0.02778235117261 0.02725466992345 0.0252086218109 0.02325019063049 0.02264465181162 0.02252934119872 0.02250580917675 0.02250112974801 0.0225002151914 0.02250004007086 0.02250000728623 0.02250000128442 0.02250000019008 0.0225000000082 0.02249999999444 0.02250000000112 0.02250000000176 0.02250000000011 0.02249999999974 0.02249999999997 0.02250000000004 0.02250000000001 0.02249999999999 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/prim.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/prim.3.00.000050.dat -1.93e-12 -8.68e-12 1.1e-11 6.589e-11 -7.71e-12 -2.9786e-10 3.5394e-10 5.74758e-09 3.402522e-08 1.8167787e-07 9.2596096e-07 4.48035972e-06 2.050615966e-05 8.859434206e-05 0.00036063788552 0.00138083229162 0.00494810436864 0.01704109869222 0.05176967177449 0.10021942114075 0.14834419606721 0.18116198652653 0.19893373187448 0.22247648307745 0.22100804409202 0.22397741315418 0.22818597849066 0.22647990550981 0.22440756487677 0.22565128391769 0.22714148448081 0.22624120116341 0.22445629302752 0.22515459054744 0.22754170967126 0.22720880559958 0.22463094085765 0.22376502199889 0.22553672519457 0.21442553855667 0.22246385003027 0.18392372111935 0.15203402813856 0.07420229914933 0.01838042413514 0.00410211075105 0.00090474661436 0.00019291777919 3.975224016e-05 7.901462e-06 1.51300186e-06 2.7917983e-07 4.983128e-08 8.30966e-09 4.9149e-10 -4.1712e-10 -7.78e-12 9.12e-11 1.387e-11 -1.227e-11 -2.72e-12 1.75e-12 5.1e-13 -2.3e-13 -8e-14 3e-14 1e-14 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 1e-14 3e-14 -5e-14 -2.3e-13 2.3e-13 1.7e-12 -7.6e-13 -1.117e-11 3.6e-13 7.45e-11 6.249e-11 -3.1256e-10 -1.8914e-10 4.30976e-09 2.684429e-08 1.4121367e-07 7.0887229e-07 3.38061217e-06 1.5225078e-05 6.45187661e-05 0.0002563359821 0.00095060048178 0.0032718557636 0.01035094470928 0.03028267945438 0.07796220783448 0.15412245237505 0.23982555685022 0.32010376141639 0.36628734673953 0.41093342763544 0.44850203783773 0.44586785367302 0.45679178585629 0.4607354935473 0.45637384979171 0.45472704740657 0.45758139721612 0.45889047022211 0.4572841302542 0.45521127113985 0.45371579343132 0.45717623582084 0.46178104450814 0.46174929069734 0.45650086354435 0.45370729496105 0.45584996220748 0.44859102279547 0.46278767643344 0.42955226480033 0.43181034153431 0.35111729697918 0.21507021543869 0.06089338366734 0.01183869340466 0.00240501202394 0.00047630316806 9.263492214e-05 1.764504436e-05 3.28578353e-06 5.9793975e-07 1.0637039e-07 1.773256e-08 6.659e-10 -5.1774e-10 8.643e-11 1.4527e-10 9.05e-12 -2.121e-11 -2.65e-12 3.4e-12 6.9e-13 -4.8e-13 -1.4e-13 7e-14 2e-14 -1e-14 -0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 +D/prim.4.00.000000.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 +D/prim.4.00.000050.dat 1.00000000000287 1.0000000000129 0.99999999998366 0.99999999990196 1.00000000001225 1.00000000044889 0.99999999949563 0.99999999120119 0.99999994930082 0.99999972989458 0.99999862343891 0.99999333947631 0.99996951573307 0.9998683007521 0.99946396667887 0.99794859432097 0.99266108104581 0.97484689636325 0.92495407083625 0.85380612052966 0.7976647647322 0.74826856437013 0.71221448392939 0.71134619832648 0.69304231158453 0.68877300041619 0.6933739520266 0.69220855153039 0.69051478406059 0.69135015017854 0.69158953231122 0.69097983815468 0.69157241682048 0.69200276168445 0.69132316910697 0.69104670771917 0.69190326431733 0.69110430851344 0.6858359234196 0.69270753776087 0.67044900239644 0.66635684320214 0.62183650867798 0.55944592291062 0.51442828918191 0.50319936763442 0.5007046482312 0.50015020481142 0.50003094888565 0.50000615155255 0.50000117791174 0.50000021734478 0.50000003874512 0.50000000635288 0.5000000003919 0.49999999967816 0.49999999999431 0.50000000007096 0.5000000000108 0.49999999999044 0.49999999999789 0.50000000000137 0.5000000000004 0.49999999999982 0.49999999999993 0.50000000000002 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49999999999999 0.49999999999998 0.50000000000003 0.50000000000018 0.49999999999982 0.49999999999868 0.50000000000059 0.5000000000087 0.49999999999972 0.49999999994201 0.49999999995114 0.50000000024318 0.50000000012933 0.49999999673609 0.49999997915208 0.49999989010603 0.49999944813747 0.49999736808296 0.49998814687755 0.4999497716852 0.49980045880967 0.49926025669749 0.49745653500201 0.49197799170492 0.47675084062861 0.44100822852182 0.38719825181189 0.32746201202618 0.28504510462101 0.24603724814783 0.22228804946476 0.21429842376419 0.19939324099447 0.19941997175649 0.20214765256055 0.20014459168254 0.1984675022006 0.19990803510248 0.20109921961222 0.19988472147928 0.19873164887287 0.19955877467624 0.20025870634696 0.20053956586403 0.2008255522636 0.20047169776999 0.19920181872341 0.19847207680634 0.20003196318441 0.19640901789271 0.20144870577267 0.18601675508783 0.17704289546898 0.14329948046627 0.11176939032515 0.10224808525196 0.10045518016591 0.10009008644388 0.10001751838858 0.10000333680684 0.10000062134616 0.10000011298149 0.10000001991646 0.10000000294741 0.10000000012713 0.09999999991381 0.10000000001735 0.10000000002729 0.10000000000175 0.09999999999599 0.0999999999995 0.10000000000064 0.10000000000013 0.09999999999991 0.09999999999997 0.10000000000001 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 +D/prim.5.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/prim.5.00.000050.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.87548479251571 0.72967224236376 0.55537713832821 0.50710264386236 0.50078553204384 0.50007097186444 0.50000534443764 0.50000033791608 0.50000001823989 0.50000000088384 0.49999999991387 0.49999999999592 0.50000000000424 0.49999999999994 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49920834538201 0.49127332794032 0.44767194141776 0.32874918238154 0.23234903107108 0.20584022348196 0.20095186797927 0.20013341159197 0.20001627616279 0.20000174730049 0.20000016722647 0.20000001424383 0.20000000109008 0.19999999986005 0.19999999998423 0.2000000000108 0.20000000000013 0.19999999999994 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/prim.6.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/prim.6.00.000050.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.12451520748429 0.27032775763624 0.44462286167179 0.49289735613764 0.49921446795616 0.49992902813556 0.49999465556236 0.49999966208392 0.49999998176011 0.49999999911617 0.50000000008613 0.50000000000408 0.49999999999576 0.50000000000007 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.50079165461799 0.50872667205968 0.55232805858224 0.67125081761846 0.76765096892892 0.79415977651804 0.79904813202073 0.79986658840803 0.79998372383721 0.79999825269951 0.79999983277353 0.79999998575617 0.79999999890992 0.80000000013995 0.80000000001577 0.7999999999892 0.79999999999987 0.80000000000006 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 \ No newline at end of file diff --git a/toolchain/mfc/case_validator.py b/toolchain/mfc/case_validator.py index 7d641a408..6cc91a9db 100644 --- a/toolchain/mfc/case_validator.py +++ b/toolchain/mfc/case_validator.py @@ -1000,6 +1000,18 @@ def check_eos_selector(self): f"patch_icpp({j}) starts fluid {i} at rho = {ar/a:.4g}, within 20% of the Mie-Gruneisen " f"Hugoniot pole rho0*s/(s-1) = {rho_pole:.4g}; the reference curve is unphysical beyond it", ) + if not any(self.get(f"fluid_pp({i})%eos") == eos_mg for i in range(1, num_fluids + 1)): + return + # The per-phase evaluation is wired through the 5-equation Riemann and time-step paths only; every + # feature below still reads the stiffened-gas coefficients directly or mixes without partial densities. + self.prohibit(self.get("model_eqns") != 2, "eos = 'mie_gruneisen' requires model_eqns = 2") + self.prohibit(self.get("riemann_solver") not in (1, 2, 5), "eos = 'mie_gruneisen' requires riemann_solver = 1, 2 or 5") + for flag in ("bubbles_euler", "bubbles_lagrange", "alt_soundspeed", "hypoelasticity", "ib", "igr", "relativity", "mhd", "chemistry", "acoustic_source", "probe_wrt", "c_wrt"): + self.prohibit(self.get(flag, "F") == "T", f"eos = 'mie_gruneisen' is not supported with {flag} = T") + for dir in "xyz": + for bound in ("beg", "end"): + bc = self.get(f"bc_{dir}%{bound}") + self.prohibit(isinstance(bc, int) and -12 <= bc <= -5, f"eos = 'mie_gruneisen' is not supported with characteristic boundary condition bc_{dir}%{bound}") def check_stiffened_eos(self): """Checks constraints on stiffened equation of state fluids parameters""" diff --git a/toolchain/mfc/eos.py b/toolchain/mfc/eos.py new file mode 100644 index 000000000..b77ac254b --- /dev/null +++ b/toolchain/mfc/eos.py @@ -0,0 +1,34 @@ +"""The Mie-Gruneisen reference curve as m_variables_conversion computes it, for tests and validation cases.""" + + +def mg_reference(rho, rho0, c0, s): + """p_ref, e_ref and their d/drho for the linear-Hugoniot curve u_s = c0 + s u_p.""" + mu = rho / rho0 - 1.0 + if mu >= 0.0: + d = 1.0 - (s - 1.0) * mu + p = rho0 * c0**2 * mu * (1.0 + mu) / d**2 + dp_dmu = rho0 * c0**2 * ((1.0 + 2.0 * mu) * d + 2.0 * (s - 1.0) * mu * (1.0 + mu)) / d**3 + else: + p = rho0 * c0**2 * mu + dp_dmu = rho0 * c0**2 + e = p * mu / (2.0 * rho0 * (1.0 + mu)) + de_dmu = (dp_dmu * mu * (1.0 + mu) + p) / (2.0 * rho0 * (1.0 + mu) ** 2) + return p, e, dp_dmu / rho0, de_dmu / rho0 + + +def eos_coefficients(rho, rho0, c0, s, gruneisen): + """Gamma, Pi, dPi/drho: the three numbers s_eos_coefficients returns.""" + p, e, dp, de = mg_reference(rho, rho0, c0, s) + return 1.0 / gruneisen, rho * e - p / gruneisen, e + rho * de - dp / gruneisen + + +def sound_speed(rho, pres, rho0, c0, s, gruneisen): + """c^2 = [((Gamma + 1) p + Pi)/rho - dPi/drho]/Gamma, the frozen single-phase speed the solver uses.""" + gamma, pi, dpi = eos_coefficients(rho, rho0, c0, s, gruneisen) + return ((((gamma + 1.0) * pres + pi) / rho - dpi) / gamma) ** 0.5 + + +def hugoniot_state(u_p, rho0, c0, s): + """Shock speed and density behind a shock of particle velocity u_p driven into the reference state.""" + u_s = c0 + s * u_p + return u_s, rho0 * u_s / (u_s - u_p) diff --git a/toolchain/mfc/test/cases.py b/toolchain/mfc/test/cases.py index 34a8c4bc5..f0f460fb1 100644 --- a/toolchain/mfc/test/cases.py +++ b/toolchain/mfc/test/cases.py @@ -7,7 +7,7 @@ from ..state import ARG from .case import CaseGeneratorStack, Nt, TestCaseBuilder, define_case_d, define_case_f, define_convergence_case -from .convergence import ConvergenceSpec, run_amp_sweep, run_dt_sweep, run_h_sweep, run_sod_l1 +from .convergence import ConvergenceSpec, run_amp_sweep, run_dt_sweep, run_h_sweep, run_mg_hugoniot, run_mg_wave_speed, run_sod_l1 # Convergence test specs. # One TestCase per (problem, scheme) pair. Trace prefix "Convergence ->" is @@ -125,6 +125,18 @@ def _h_sweep(case_path, ndim, cons_vars, extra_args, expected, tol, resolutions, ) ) + cases.append( + define_convergence_case( + "Convergence -> Mie-Gruneisen -> acoustic speed", + spec=ConvergenceSpec(runner=run_mg_wave_speed, case_path="examples/1D_mg_acoustic/case.py", expected_order=0.0, tol=1.0e-3, resolutions=[100, 200, 400]), + ) + ) + cases.append( + define_convergence_case( + "Convergence -> Mie-Gruneisen -> Hugoniot", + spec=ConvergenceSpec(runner=run_mg_hugoniot, case_path="examples/1D_mg_impact/case.py", expected_order=0.0, tol=0.005, amps=[0.2, 0.5, 1.0, 1.5]), + ) + ) for label, extra_args, expected, tol, min_N in _CONVERGENCE_SOD_SCHEMES: resolutions = [N for N in _RES_SOD_DEFAULT if min_N is None or N >= min_N] cases.append( @@ -659,6 +671,23 @@ def alter_num_fluids(dimInfo): "patch_icpp(3)%alpha(2)": 0.8, }, ) + if dimInfo[0] == ["x"]: + # Fluid 1 on its own reference curve beside an ideal gas, so one kernel carries both EOS paths. + cases.append( + define_case_d( + stack, + "eos=mie_gruneisen", + { + "fluid_pp(1)%eos": "mie_gruneisen", + "fluid_pp(1)%gamma": None, + "fluid_pp(1)%qv": None, + "fluid_pp(1)%mg_rho0": 0.9, + "fluid_pp(1)%mg_c0": 1.0, + "fluid_pp(1)%mg_s": 1.5, + "fluid_pp(1)%mg_gruneisen": 0.4, + }, + ) + ) if len(dimInfo[0]) > 1: alter_capillary() @@ -2862,6 +2891,8 @@ def foreach_example(): "2D_advection_convergence", "3D_advection_convergence", "2D_hypo_shear_contact", # exercised by the convergence suite + "1D_mg_acoustic", # exercised by the convergence suite + "1D_mg_impact", # exercised by the convergence suite "2D_zero_circ_vortex_analytical", "3D_TaylorGreenVortex_analytical", "3D_IGR_TaylorGreenVortex_nvidia", diff --git a/toolchain/mfc/test/convergence.py b/toolchain/mfc/test/convergence.py index c5a8df8b4..b6fe644b2 100644 --- a/toolchain/mfc/test/convergence.py +++ b/toolchain/mfc/test/convergence.py @@ -38,7 +38,7 @@ import numpy as np -from .. import common +from .. import common, eos CONS_TOL = 1e-10 MFC = ".\\mfc.bat" if os.name == "nt" else "./mfc.sh" @@ -394,6 +394,84 @@ def run_amp_sweep(spec: ConvergenceSpec) -> typing.Tuple[bool, str]: return passed, "\n".join(lines) +def _mg_params(cfg: dict): + return tuple(float(cfg[f"fluid_pp(1)%mg_{k}"]) for k in ("rho0", "c0", "s", "gruneisen")) + + +def run_mg_wave_speed(spec: ConvergenceSpec) -> typing.Tuple[bool, str]: + """Sweep N; the measured speed of a small acoustic pulse must match the analytic Mie-Gruneisen c. + + The derivative term dPi/drho enters the sound speed but not the pressure, so a pulse is the one + observable that isolates it: without that term the speed is off by tens of percent. The residual + is the finite-amplitude correction O(drho/rho) of a simple wave, so the check is absolute, not a rate. + """ + errors = [] + with tempfile.TemporaryDirectory() as tmpdir: + for N in spec.resolutions: + cfg, run_dir = _run_mfc(spec.case_path, tmpdir, f"N{N}", ["-N", str(N)] + spec.extra_args, 1) + rho0, c0, s, gruneisen = _mg_params(cfg) + c_exact = eos.sound_speed(rho0, float(cfg["patch_icpp(1)%pres"].split("+")[0]), rho0, c0, s, gruneisen) + Nt = int(cfg["t_step_stop"]) + T = Nt * float(cfg["dt"]) + x_cc = (np.arange(N) + 0.5) / N + peaks = [] + for step in (0, Nt): + rho = _read_field(run_dir, step, 1, 1, N) + i = int(np.argmax(rho)) + if not 0 < i < N - 1: + raise common.MFCException(f"N={N}: pulse peak at the boundary after step {step}") + a, b, c = rho[i - 1], rho[i], rho[i + 1] # parabolic sub-cell peak + peaks.append(x_cc[i] + 0.5 * (a - c) / (a - 2.0 * b + c) / N) + errors.append(abs((peaks[1] - peaks[0]) / T - c_exact) / c_exact) + widths = [6, 16] + lines = [ + f" analytic c = {c_exact:.6f} (need every relative error <= {spec.tol:.1e})", + "", + _table_line(["N", "rel. speed err"], widths), + _table_line(["-" * w for w in widths], widths), + ] + for i, N in enumerate(spec.resolutions): + lines.append(_table_line([str(N), f"{errors[i]:.4e}"], widths)) + lines.append(f"\n Worst relative error: {max(errors):.4e}") + return max(errors) <= spec.tol, "\n".join(lines) + + +def run_mg_hugoniot(spec: ConvergenceSpec) -> typing.Tuple[bool, str]: + """Sweep the closing speed U of a symmetric impact; shock speed and plateau density must sit on the Hugoniot. + + The shock state is set by the jump conditions with the full EOS, so it lands on u_s = c0 + s u_p + only if p_ref and e_ref are the curve the parameters describe. The front position comes from the + integral of the density excess, which is sub-cell accurate. + """ + rows = [] + with tempfile.TemporaryDirectory() as tmpdir: + for U in spec.amps: + tag = f"U{U:.3f}".replace(".", "p") + cfg, run_dir = _run_mfc(spec.case_path, tmpdir, tag, ["--U", str(U)] + spec.extra_args, 1) + rho0, c0, s, gruneisen = _mg_params(cfg) + N, Nt = int(cfg["m"]) + 1, int(cfg["t_step_stop"]) + T = Nt * float(cfg["dt"]) + rho = _read_field(run_dir, Nt, 1, 1, N) + x_cc = (np.arange(N) + 0.5) / N + rho_s = float(np.median(rho[np.abs(x_cc - 0.5) < 0.02])) + x_s = 0.5 + float(np.sum((rho[x_cc > 0.5] - rho0)) / N) / (rho_s - rho0) + u_s, rho_h = eos.hugoniot_state(0.5 * U, rho0, c0, s) + rows.append((U, (x_s - 0.5) / T, u_s - 0.5 * U, rho_s, rho_h)) + widths = [7, 11, 11, 11, 11] + lines = [ + f" (need every relative error <= {spec.tol:.3f})", + "", + _table_line(["U", "D measured", "D Hugoniot", "rho_s meas.", "rho_s Hug."], widths), + _table_line(["-" * w for w in widths], widths), + ] + worst = 0.0 + for U, d_m, d_h, r_m, r_h in rows: + worst = max(worst, abs(d_m - d_h) / d_h, abs(r_m - r_h) / r_h) + lines.append(_table_line([f"{U:.3f}", f"{d_m:.5f}", f"{d_h:.5f}", f"{r_m:.5f}", f"{r_h:.5f}"], widths)) + lines.append(f"\n Worst relative error: {worst:.4e}") + return worst <= spec.tol, "\n".join(lines) + + # Entry point used by test.py. diff --git a/toolchain/mfc/test_case_validator.py b/toolchain/mfc/test_case_validator.py index 1835a8a24..a72d09808 100644 --- a/toolchain/mfc/test_case_validator.py +++ b/toolchain/mfc/test_case_validator.py @@ -411,7 +411,13 @@ def warnings_for(self, params): return "\n".join(validator.warnings) def test_accepts_complete_curve(self): - self.assertAccepts({**BASE, **self.MG, "fluid_pp(1)%qv": 0.0}) + self.assertAccepts({**BASE, **self.MG}) + + def test_scope_is_the_five_equation_riemann_path(self): + base = {**BASE, **self.MG} + self.assertRejects({**base, "model_eqns": 3}, "requires model_eqns = 2") + self.assertRejects({**base, "alt_soundspeed": "T"}, "not supported with alt_soundspeed = T") + self.assertRejects({**base, "bc_x%beg": -5}, "characteristic boundary condition bc_x%beg") def test_requires_all_four_parameters(self): p = {**BASE, **self.MG} diff --git a/toolchain/mfc/test_eos_mie_gruneisen.py b/toolchain/mfc/test_eos_mie_gruneisen.py index 274987b06..d0374769a 100644 --- a/toolchain/mfc/test_eos_mie_gruneisen.py +++ b/toolchain/mfc/test_eos_mie_gruneisen.py @@ -6,27 +6,7 @@ import pytest - -def mg_reference(rho, rho0, c0, s): - """p_ref, e_ref and their d/drho for the linear-Hugoniot curve, as the Fortran computes them.""" - mu = rho / rho0 - 1.0 - if mu >= 0.0: - d = 1.0 - (s - 1.0) * mu - p = rho0 * c0**2 * mu * (1.0 + mu) / d**2 - dp_dmu = rho0 * c0**2 * ((1.0 + 2.0 * mu) * d + 2.0 * (s - 1.0) * mu * (1.0 + mu)) / d**3 - else: - p = rho0 * c0**2 * mu - dp_dmu = rho0 * c0**2 - e = p * mu / (2.0 * rho0 * (1.0 + mu)) - de_dmu = (dp_dmu * mu * (1.0 + mu) + p) / (2.0 * rho0 * (1.0 + mu) ** 2) - return p, e, dp_dmu / rho0, de_dmu / rho0 - - -def eos_coefficients(rho, rho0, c0, s, G0): - """Gamma, Pi, dPi/drho - the same three numbers s_eos_coefficients returns.""" - p, e, dp, de = mg_reference(rho, rho0, c0, s) - return 1.0 / G0, rho * e - p / G0, e + rho * de - dp / G0 - +from mfc.eos import eos_coefficients, mg_reference # Copper-like, no calibrated material: order-of-magnitude values only. RHO0, C0, S, G0 = 8930.0, 3940.0, 1.49, 2.0 From 2bf3f0dbaaaad317be9ff5e25ca09b79c2faa0f6 Mon Sep 17 00:00:00 2001 From: Spencer Bryngelson Date: Wed, 2 Sep 2026 20:57:12 -0500 Subject: [PATCH 4/7] Delete the dead fluid-1 EOS shortcuts in the output routines gamma = gammas(1) and friends were assigned and never read; lit_gamma was assigned in both output routines and read in neither. --- src/pre_process/m_data_output.fpp | 5 +---- src/simulation/m_data_output.fpp | 6 ------ 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/src/pre_process/m_data_output.fpp b/src/pre_process/m_data_output.fpp index 80aeb4573..e3d89de06 100644 --- a/src/pre_process/m_data_output.fpp +++ b/src/pre_process/m_data_output.fpp @@ -67,7 +67,7 @@ contains integer :: t_step real(wp), dimension(nb) :: nRtmp real(wp) :: nbub - real(wp) :: gamma, lit_gamma, pi_inf, qv + real(wp) :: gamma, pi_inf, qv real(wp) :: rho real(wp) :: pres, T real(wp) :: rhoYks(1:num_species) @@ -165,7 +165,6 @@ contains end if gamma = gammas(1) - lit_gamma = isentrope_n(1) pi_inf = pi_infs(1) qv = qvs(1) @@ -199,8 +198,6 @@ contains call s_convert_to_mixture_variables(q_cons_vf, j, 0, 0, rho, gamma, pi_inf, qv) - lit_gamma = f_isentrope_exponent(gamma) - if ((i >= eqn_idx%species%beg) .and. (i <= eqn_idx%species%end)) then write (2, FMT) x_cb(j), q_cons_vf(i)%sf(j, 0, 0)/rho else if (((i >= eqn_idx%cont%beg) .and. (i <= eqn_idx%cont%end)) .or. ((i >= eqn_idx%adv%beg) & diff --git a/src/simulation/m_data_output.fpp b/src/simulation/m_data_output.fpp index 22abe1b16..3467de31b 100644 --- a/src/simulation/m_data_output.fpp +++ b/src/simulation/m_data_output.fpp @@ -303,7 +303,6 @@ contains logical :: file_exist !< Logical used to check existence of current time-step directory character(LEN=15) :: FMT integer :: i, j, k, l, r - real(wp) :: gamma, lit_gamma, pi_inf, qv !< Temporary EOS params write (t_step_dir, '(A,I0,A,I0)') trim(case_dir) // '/p_all' write (t_step_dir, '(a,i0,a,i0)') trim(case_dir) // '/p_all/p', proc_rank, '/', t_step @@ -377,11 +376,6 @@ contains call s_write_serial_ib_data(t_step) end if - gamma = gammas(1) - lit_gamma = isentrope_n(1) - pi_inf = pi_infs(1) - qv = qvs(1) - if (precision == precision_single) then FMT = "(2F30.3)" else From f11722b175622eee4533148f9ba6b3a79ad56de3 Mon Sep 17 00:00:00 2001 From: Spencer Bryngelson Date: Wed, 2 Sep 2026 16:33:19 -0500 Subject: [PATCH 5/7] toolchain: keep coverage git calls out of the hook's GIT_DIR so precheck passes from worktrees (cherry picked from commit 5ad5c85d2231d4b4ec0f5975a9af0bf95724593e) --- .github/scripts/check_coverage_map_health.py | 9 ++++----- toolchain/mfc/test/coverage.py | 8 +++++++- toolchain/mfc/test/test_coverage_unit.py | 13 +------------ 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/.github/scripts/check_coverage_map_health.py b/.github/scripts/check_coverage_map_health.py index f4dddc983..f8307b524 100644 --- a/.github/scripts/check_coverage_map_health.py +++ b/.github/scripts/check_coverage_map_health.py @@ -1,11 +1,10 @@ """Fail loudly if the committed coverage map is stale or under-covers. Used by coverage-health.yml.""" import datetime -import subprocess import sys from pathlib import Path sys.path.insert(0, str(Path(__file__).resolve().parents[2] / "toolchain")) -from mfc.test.coverage import COVERAGE_MAP_PATH, load_map, map_health # noqa: E402 +from mfc.test.coverage import COVERAGE_MAP_PATH, _git, load_map, map_health # noqa: E402 from mfc.test.cases import list_cases # noqa: E402 (returns the current test list) MAX_AGE_DAYS = 10 @@ -40,7 +39,7 @@ def verified_sha(cwd=None): caller must read that as undeterminable and fall back to the wall-clock age rule, not as a failure -- an absent ref is not evidence of a broken refresh. """ - rev = subprocess.run(["git", "rev-parse", "--verify", "--quiet", f"{VERIFIED_REF}^{{commit}}"], capture_output=True, text=True, check=False, cwd=cwd) + rev = _git(["rev-parse", "--verify", "--quiet", f"{VERIFIED_REF}^{{commit}}"], cwd) return rev.stdout.strip() or None @@ -53,10 +52,10 @@ def verified_after_last_change(git_sha, cwd=None): """ if not git_sha: return None - last = subprocess.run(["git", "log", "-1", "--format=%H", "--", *COVERAGE_RELEVANT_PATHS], capture_output=True, text=True, check=False, cwd=cwd) + last = _git(["log", "-1", "--format=%H", "--", *COVERAGE_RELEVANT_PATHS], cwd) if last.returncode != 0 or not last.stdout.strip(): return None # shallow clone or no such commit -> fall back to the age rule - ancestor = subprocess.run(["git", "merge-base", "--is-ancestor", last.stdout.strip(), git_sha], capture_output=True, check=False, cwd=cwd) + ancestor = _git(["merge-base", "--is-ancestor", last.stdout.strip(), git_sha], cwd) return {0: True, 1: False}.get(ancestor.returncode) # anything else -> None (unknown sha, shallow history) diff --git a/toolchain/mfc/test/coverage.py b/toolchain/mfc/test/coverage.py index 26d664aff..e279fc4b9 100644 --- a/toolchain/mfc/test/coverage.py +++ b/toolchain/mfc/test/coverage.py @@ -216,8 +216,14 @@ def select_tests(cases, coverage_map, changed_files): return to_run, skipped, f"selected {len(to_run)}/{len(cases)} by coverage overlap" +def _env_without_git(): + # Git exports GIT_DIR and GIT_INDEX_FILE to hooks, and neither cwd nor `git -C` overrides them: + # under the pre-commit hook every call below would otherwise act on the committing repository. + return {k: v for k, v in os.environ.items() if not k.startswith("GIT_")} + + def _git(args, cwd, timeout=60): - return subprocess.run(["git", *args], capture_output=True, text=True, cwd=cwd, timeout=timeout, check=False) + return subprocess.run(["git", *args], capture_output=True, text=True, cwd=cwd, timeout=timeout, check=False, env=_env_without_git()) def _merge_base(cwd, branch): diff --git a/toolchain/mfc/test/test_coverage_unit.py b/toolchain/mfc/test/test_coverage_unit.py index 24f52ec1a..5e9ad49e3 100644 --- a/toolchain/mfc/test/test_coverage_unit.py +++ b/toolchain/mfc/test/test_coverage_unit.py @@ -6,7 +6,7 @@ from pathlib import Path from unittest.mock import patch -from mfc.test.coverage import canonicalize_param_paths, entries_equal, format_summary, get_changed_files, is_always_run_all, load_map, map_health, param_hash, save_map, select_tests +from mfc.test.coverage import _env_without_git, canonicalize_param_paths, entries_equal, format_summary, get_changed_files, is_always_run_all, load_map, map_health, param_hash, save_map, select_tests def test_param_hash_is_order_independent(): @@ -462,17 +462,6 @@ def test_health_fails_immediately_when_no_refresh_ran_since_last_source_change() CHANGED_SCRIPT = Path(__file__).resolve().parents[3] / ".github" / "scripts" / "coverage_map_changed.py" -def _env_without_git(): - """The environment minus every GIT_* variable. - - `git -C ` changes directory but does NOT override an inherited GIT_DIR or - GIT_INDEX_FILE. Git exports both when it runs a hook, and MFC's pre-commit hook runs - precheck, which runs this suite -- so without this scrub the commits below are made - against the real repository instead of the throwaway one. - """ - return {k: v for k, v in os.environ.items() if not k.startswith("GIT_")} - - def _repo_with_committed_map(d, entries): """A throwaway git repo whose HEAD holds `entries` as the coverage map.""" repo = Path(d) From 635b00e0a4be17fddc3d1e8b41da9379c5e37ebe Mon Sep 17 00:00:00 2001 From: Spencer Bryngelson Date: Wed, 2 Sep 2026 21:09:16 -0500 Subject: [PATCH 6/7] Add JWL and evaluate state-dependent EOS through Wood's law, characteristic BCs, probes and post-process c --- src/common/m_constants.fpp | 1 + src/common/m_derived_types.fpp | 6 ++ src/common/m_global_parameters_common.fpp | 3 +- src/common/m_variables_conversion.fpp | 78 +++++++++++++++++------ src/post_process/m_global_parameters.fpp | 6 ++ src/post_process/m_start_up.fpp | 13 ++-- src/pre_process/m_global_parameters.fpp | 6 ++ src/simulation/m_cbc.fpp | 5 +- src/simulation/m_data_output.fpp | 11 ++-- src/simulation/m_global_parameters.fpp | 6 ++ toolchain/mfc/case_validator.py | 75 ++++++++++++---------- toolchain/mfc/eos.py | 36 +++++++++-- toolchain/mfc/params/definitions.py | 15 ++++- toolchain/mfc/test/convergence.py | 3 +- toolchain/mfc/test_case_validator.py | 38 ++++++++++- toolchain/mfc/test_eos_mie_gruneisen.py | 49 +++++++++++++- 16 files changed, 275 insertions(+), 76 deletions(-) diff --git a/src/common/m_constants.fpp b/src/common/m_constants.fpp index f317ef9bf..362cc5a47 100644 --- a/src/common/m_constants.fpp +++ b/src/common/m_constants.fpp @@ -119,6 +119,7 @@ module m_constants integer, parameter :: eos_stiffened_gas = 1 integer, parameter :: eos_ideal_gas = 2 integer, parameter :: eos_mie_gruneisen = 3 + integer, parameter :: eos_jwl = 4 integer, parameter :: num_synth_shells_max = 50 !< Max energy shells for synthetic turbulence integer, parameter :: num_turb_sources_max = 10 !< Max Gaussian forcing zones for synthetic turbulence diff --git a/src/common/m_derived_types.fpp b/src/common/m_derived_types.fpp index bca9ca5ee..7920388a3 100644 --- a/src/common/m_derived_types.fpp +++ b/src/common/m_derived_types.fpp @@ -398,6 +398,12 @@ module m_derived_types real(wp) :: mg_c0 !< Mie-Gruneisen bulk sound speed at mg_rho0 real(wp) :: mg_s !< Mie-Gruneisen linear Hugoniot slope, u_s = c0 + s u_p real(wp) :: mg_gruneisen !< Gruneisen coefficient Gamma_G (not the shear modulus G) + real(wp) :: jwl_a !< JWL A + real(wp) :: jwl_b !< JWL B + real(wp) :: jwl_r1 !< JWL R1 + real(wp) :: jwl_r2 !< JWL R2 + real(wp) :: jwl_omega !< JWL omega (its Gruneisen coefficient) + real(wp) :: jwl_rho0 !< JWL reference density logical :: non_newtonian !< Enable Herschel-Bulkley non-Newtonian viscosity real(wp) :: K !< HB consistency index real(wp) :: nn !< HB flow behavior index diff --git a/src/common/m_global_parameters_common.fpp b/src/common/m_global_parameters_common.fpp index 7c46f1458..7d983a73e 100644 --- a/src/common/m_global_parameters_common.fpp +++ b/src/common/m_global_parameters_common.fpp @@ -57,8 +57,9 @@ module m_global_parameters_common !> Per-fluid EOS selector and Mie-Gruneisen reference curve, resolved once at init like the arrays above integer, allocatable, dimension(:) :: eoss real(wp), allocatable, dimension(:) :: mg_rho0s, mg_c0s, mg_ss, mg_gruneisens + real(wp), allocatable, dimension(:) :: jwl_as, jwl_bs, jwl_r1s, jwl_r2s, jwl_omegas, jwl_rho0s logical :: any_state_dependent_eos !< True when some fluid's coefficients vary with density; set at init - $:GPU_DECLARE(create='[eoss, mg_rho0s, mg_c0s, mg_ss, mg_gruneisens, any_state_dependent_eos]') + $:GPU_DECLARE(create='[eoss, mg_rho0s, mg_c0s, mg_ss, mg_gruneisens, jwl_as, jwl_bs, jwl_r1s, jwl_r2s, jwl_omegas, jwl_rho0s, any_state_dependent_eos]') !> @} !> @name Fluids participating in shear and bulk viscosity diff --git a/src/common/m_variables_conversion.fpp b/src/common/m_variables_conversion.fpp index 75e548c54..179cb0d74 100644 --- a/src/common/m_variables_conversion.fpp +++ b/src/common/m_variables_conversion.fpp @@ -268,7 +268,8 @@ contains @:ALLOCATE(gammas (1:num_fluids)) @:ALLOCATE(eoss (1:num_fluids), mg_rho0s (1:num_fluids), mg_c0s (1:num_fluids), mg_ss (1:num_fluids), & - & mg_gruneisens (1:num_fluids)) + & mg_gruneisens (1:num_fluids), jwl_as (1:num_fluids), jwl_bs (1:num_fluids), jwl_r1s (1:num_fluids), & + & jwl_r2s (1:num_fluids), jwl_omegas (1:num_fluids), jwl_rho0s (1:num_fluids)) @:ALLOCATE(isentrope_n (1:num_fluids)) @:ALLOCATE(pi_infs(1:num_fluids)) @:ALLOCATE(isentrope_B(1:num_fluids)) @@ -300,10 +301,16 @@ contains mg_c0s(i) = fluid_pp(i)%mg_c0 mg_ss(i) = fluid_pp(i)%mg_s mg_gruneisens(i) = fluid_pp(i)%mg_gruneisen - if (fluid_pp(i)%eos == eos_mie_gruneisen) any_state_dependent_eos = .true. + jwl_as(i) = fluid_pp(i)%jwl_a + jwl_bs(i) = fluid_pp(i)%jwl_b + jwl_r1s(i) = fluid_pp(i)%jwl_r1 + jwl_r2s(i) = fluid_pp(i)%jwl_r2 + jwl_omegas(i) = fluid_pp(i)%jwl_omega + jwl_rho0s(i) = fluid_pp(i)%jwl_rho0 + if (fluid_pp(i)%eos == eos_mie_gruneisen .or. fluid_pp(i)%eos == eos_jwl) any_state_dependent_eos = .true. end do $:GPU_UPDATE(device='[gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps, Gs_vc, eoss, mg_rho0s, mg_c0s, mg_ss, & - & mg_gruneisens, any_state_dependent_eos]') + & mg_gruneisens, jwl_as, jwl_bs, jwl_r1s, jwl_r2s, jwl_omegas, jwl_rho0s, any_state_dependent_eos]') @:ALLOCATE(Res_vc(1:2, 1:max(1, Re_size_max))) Res_vc = dflt_real @@ -1183,7 +1190,8 @@ contains if (allocated(rho_sf)) deallocate (rho_sf, gamma_sf, pi_inf_sf) - @:DEALLOCATE(gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps, Gs_vc, eoss, mg_rho0s, mg_c0s, mg_ss, mg_gruneisens) + @:DEALLOCATE(gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps, Gs_vc, eoss, mg_rho0s, mg_c0s, mg_ss, & + & mg_gruneisens, jwl_as, jwl_bs, jwl_r1s, jwl_r2s, jwl_omegas, jwl_rho0s) if (allocated(bubrs_vc)) then @:DEALLOCATE(bubrs_vc) end if @@ -1243,16 +1251,17 @@ contains end subroutine s_compute_mixture_coefficients !> Time derivative of the mixture coefficients, mirroring s_compute_mixture_coefficients. - subroutine s_compute_mixture_coefficients_dt(dalpha_rho_dt, dadv_dt, drho_dt, dgamma_dt, dpi_inf_dt, dqv_dt) + subroutine s_compute_mixture_coefficients_dt(dalpha_rho_dt, dadv_dt, alpha_rho, adv, drho_dt, dgamma_dt, dpi_inf_dt, dqv_dt) $:GPU_ROUTINE(function_name='s_compute_mixture_coefficients_dt', parallelism='[seq]', cray_inline=True) #:if not MFC_CASE_OPTIMIZATION and USING_AMD - real(wp), dimension(3), intent(in) :: dalpha_rho_dt, dadv_dt + real(wp), dimension(3), intent(in) :: dalpha_rho_dt, dadv_dt, alpha_rho, adv #:else - real(wp), dimension(num_fluids), intent(in) :: dalpha_rho_dt, dadv_dt + real(wp), dimension(num_fluids), intent(in) :: dalpha_rho_dt, dadv_dt, alpha_rho, adv #:endif real(wp), intent(out) :: drho_dt, dgamma_dt, dpi_inf_dt, dqv_dt + real(wp) :: rho_i, gamma_i, pi_inf_i, dpi_i integer :: i !< Loop iterator over fluids dgamma_dt = 0._wp @@ -1268,8 +1277,16 @@ contains $:GPU_LOOP(parallelism='[seq]') do i = 1, num_fluids drho_dt = drho_dt + dalpha_rho_dt(i) - dgamma_dt = dgamma_dt + dadv_dt(i)*gammas(i) - dpi_inf_dt = dpi_inf_dt + dadv_dt(i)*pi_infs(i) + if (any_state_dependent_eos) then + rho_i = alpha_rho(i)/max(adv(i), sgm_eps) + call s_eos_coefficients(rho_i, i, gamma_i, pi_inf_i, dpi_i) + ! d(alpha Pi(rho_i))/dt with rho_i = alpha_rho/alpha; the alpha in dPi/dt cancels + dgamma_dt = dgamma_dt + dadv_dt(i)*gamma_i + dpi_inf_dt = dpi_inf_dt + dadv_dt(i)*pi_inf_i + dpi_i*(dalpha_rho_dt(i) - rho_i*dadv_dt(i)) + else + dgamma_dt = dgamma_dt + dadv_dt(i)*gammas(i) + dpi_inf_dt = dpi_inf_dt + dadv_dt(i)*pi_infs(i) + end if dqv_dt = dqv_dt + dalpha_rho_dt(i)*qvs(i) end do end if @@ -1303,8 +1320,8 @@ contains !> Coefficients of fluid i at density rho in the form rho e = Gamma p + Pi that every operator here consumes, with dPi/drho. Any !! Mie-Gruneisen EOS p = p_ref + rho Gamma_G (e - e_ref) is this form with Gamma = 1/Gamma_G and Pi = rho e_ref - p_ref/Gamma_G; - !! a new family adds one case supplying its reference curve. Gamma_G is constant, so dGamma/drho = 0. Stiffened and ideal gas - !! keep the constants resolved at init, bit for bit. + !! a new family adds one case supplying its reference curve (JWL: Gamma_G = omega). Gamma_G is constant, so dGamma/drho = 0. + !! Stiffened and ideal gas keep the constants resolved at init, bit for bit. subroutine s_eos_coefficients(rho, i, gamma, pi_inf, dpi) $:GPU_ROUTINE(parallelism='[seq]') @@ -1312,7 +1329,7 @@ contains real(wp), intent(in) :: rho integer, intent(in) :: i real(wp), intent(out) :: gamma, pi_inf, dpi - real(wp) :: mu, d, p_ref, e_ref, dp_dmu, de_dmu, G0 + real(wp) :: mu, d, V, ea, eb, p_ref, e_ref, dp_dmu, de_dmu, dp_drho, de_drho, G0 select case (eoss(i)) case (eos_mie_gruneisen) @@ -1330,7 +1347,19 @@ contains end if e_ref = p_ref*mu/(2._wp*mg_rho0s(i)*(1._wp + mu)) de_dmu = (dp_dmu*mu*(1._wp + mu) + p_ref)/(2._wp*mg_rho0s(i)*(1._wp + mu)**2) + dp_drho = dp_dmu/mg_rho0s(i) + de_drho = de_dmu/mg_rho0s(i) G0 = mg_gruneisens(i) + case (eos_jwl) + ! JWL: p_ref = A exp(-R1 V) + B exp(-R2 V), V = rho0/rho. The curve is itself an isentrope, so de_ref = -p_ref d(1/rho). + V = jwl_rho0s(i)/rho + ea = jwl_as(i)*exp(-jwl_r1s(i)*V) + eb = jwl_bs(i)*exp(-jwl_r2s(i)*V) + p_ref = ea + eb + e_ref = (ea/jwl_r1s(i) + eb/jwl_r2s(i))/jwl_rho0s(i) + dp_drho = (jwl_rho0s(i)/rho**2)*(jwl_r1s(i)*ea + jwl_r2s(i)*eb) + de_drho = p_ref/rho**2 + G0 = jwl_omegas(i) case default gamma = gammas(i) pi_inf = pi_infs(i) @@ -1340,7 +1369,7 @@ contains gamma = 1._wp/G0 pi_inf = rho*e_ref - p_ref/G0 - dpi = e_ref + (rho*de_dmu - dp_dmu/G0)/mg_rho0s(i) ! d/drho = (1/rho0) d/dmu + dpi = e_ref + rho*de_drho - dp_drho/G0 end subroutine s_eos_coefficients @@ -1497,7 +1526,7 @@ contains real(wp), dimension(num_fluids), intent(in), optional :: alpha_rho #:endif real(wp) :: alf !< Subgrid void fraction; dilute by construction - real(wp) :: rho_q, gamma_q, pi_inf_q, dpi_q + real(wp) :: rho_q, gamma_q, pi_inf_q, dpi_q, blkmod_q integer :: q if (chemistry) then ! Reacting mixture sound speed @@ -1513,12 +1542,25 @@ contains do q = 1, num_fluids rho_q = alpha_rho(q)/max(adv(q), sgm_eps) call s_eos_coefficients(rho_q, q, gamma_q, pi_inf_q, dpi_q) - c = c + adv(q)*(f_bulk_modulus(pres, gamma_q, pi_inf_q) - rho_q*dpi_q/gamma_q) + blkmod_q = f_bulk_modulus(pres, gamma_q, pi_inf_q) - rho_q*dpi_q/gamma_q + if (alt_soundspeed) then + c = c + adv(q)/blkmod_q + else + c = c + adv(q)*blkmod_q + end if end do - c = c/rho + if (alt_soundspeed) then + c = 1._wp/(rho*c) + else + c = c/rho + end if else if (alt_soundspeed) then ! Wood's law: volume-weighted harmonic mean - c = 1._wp/(rho*(adv(1)/f_bulk_modulus(pres, gammas(1), pi_infs(1)) + adv(2)/f_bulk_modulus(pres, gammas(2), & - & pi_infs(2)))) + c = 0._wp + $:GPU_LOOP(parallelism='[seq]') + do q = 1, num_fluids + c = c + adv(q)/f_bulk_modulus(pres, gammas(q), pi_infs(q)) + end do + c = 1._wp/(rho*c) else if (model_eqns == model_eqns_6eq) then ! volume-weighted arithmetic mean c = 0._wp $:GPU_LOOP(parallelism='[seq]') diff --git a/src/post_process/m_global_parameters.fpp b/src/post_process/m_global_parameters.fpp index 725c92490..dd64cbb77 100644 --- a/src/post_process/m_global_parameters.fpp +++ b/src/post_process/m_global_parameters.fpp @@ -207,6 +207,12 @@ contains fluid_pp(i)%mg_c0 = dflt_real fluid_pp(i)%mg_s = dflt_real fluid_pp(i)%mg_gruneisen = dflt_real + fluid_pp(i)%jwl_a = dflt_real + fluid_pp(i)%jwl_b = dflt_real + fluid_pp(i)%jwl_r1 = dflt_real + fluid_pp(i)%jwl_r2 = dflt_real + fluid_pp(i)%jwl_omega = dflt_real + fluid_pp(i)%jwl_rho0 = dflt_real fluid_pp(i)%gamma = dflt_real fluid_pp(i)%pi_inf = dflt_real fluid_pp(i)%cv = 0._wp diff --git a/src/post_process/m_start_up.fpp b/src/post_process/m_start_up.fpp index 9e6b1ee6c..b5bfde7f8 100644 --- a/src/post_process/m_start_up.fpp +++ b/src/post_process/m_start_up.fpp @@ -187,10 +187,11 @@ contains & -offset_z%beg:p + offset_z%end) :: liutex_mag real(wp), dimension(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end, & & 3) :: liutex_axis - integer :: i, j, k, l, kx, ky, kz, kf, j_glb, k_glb, l_glb - character(50) :: filename - logical :: file_exists - integer :: x_beg, x_end, y_beg, y_end, z_beg, z_end + integer :: i, j, k, l, kx, ky, kz, kf, j_glb, k_glb, l_glb + character(50) :: filename + logical :: file_exists + real(wp), dimension(num_fluids) :: alpha_rho + integer :: x_beg, x_end, y_beg, y_end, z_beg, z_end if (output_partial_domain) then call s_define_output_region @@ -527,11 +528,13 @@ contains do i = -offset_x%beg, m + offset_x%end do l = 1, eqn_idx%adv%end - eqn_idx%E adv(l) = q_prim_vf(eqn_idx%E + l)%sf(i, j, k) + alpha_rho(l) = q_prim_vf(eqn_idx%cont%beg + l - 1)%sf(i, j, k) end do pres = q_prim_vf(eqn_idx%E)%sf(i, j, k) - call s_compute_speed_of_sound(pres, rho_sf(i, j, k), gamma_sf(i, j, k), pi_inf_sf(i, j, k), adv, c) + call s_compute_speed_of_sound(pres, rho_sf(i, j, k), gamma_sf(i, j, k), pi_inf_sf(i, j, k), adv, c, & + & alpha_rho) out%q_sf(i, j, k) = c end do diff --git a/src/pre_process/m_global_parameters.fpp b/src/pre_process/m_global_parameters.fpp index 2d75411c7..1f2cd205e 100644 --- a/src/pre_process/m_global_parameters.fpp +++ b/src/pre_process/m_global_parameters.fpp @@ -391,6 +391,12 @@ contains fluid_pp(i)%mg_c0 = dflt_real fluid_pp(i)%mg_s = dflt_real fluid_pp(i)%mg_gruneisen = dflt_real + fluid_pp(i)%jwl_a = dflt_real + fluid_pp(i)%jwl_b = dflt_real + fluid_pp(i)%jwl_r1 = dflt_real + fluid_pp(i)%jwl_r2 = dflt_real + fluid_pp(i)%jwl_omega = dflt_real + fluid_pp(i)%jwl_rho0 = dflt_real fluid_pp(i)%gamma = dflt_real fluid_pp(i)%pi_inf = dflt_real fluid_pp(i)%cv = 0._wp diff --git a/src/simulation/m_cbc.fpp b/src/simulation/m_cbc.fpp index 20e89ba2a..f730a4960 100644 --- a/src/simulation/m_cbc.fpp +++ b/src/simulation/m_cbc.fpp @@ -656,7 +656,7 @@ contains end if ! Compute mixture sound speed - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv_local, c) + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv_local, c, alpha_rho) ! First-Order Spatial Derivatives of Primitive Variables @@ -835,7 +835,8 @@ contains dpi_inf_dt = dadv_dt(2) #:endif else - call s_compute_mixture_coefficients_dt(dalpha_rho_dt, dadv_dt, drho_dt, dgamma_dt, dpi_inf_dt, dqv_dt) + call s_compute_mixture_coefficients_dt(dalpha_rho_dt, dadv_dt, alpha_rho, adv_local, drho_dt, & + & dgamma_dt, dpi_inf_dt, dqv_dt) end if ! flux_rs_vf_l and flux_src_rs_vf_l at j = -1/2 diff --git a/src/simulation/m_data_output.fpp b/src/simulation/m_data_output.fpp index 3467de31b..8a78ff38f 100644 --- a/src/simulation/m_data_output.fpp +++ b/src/simulation/m_data_output.fpp @@ -1126,7 +1126,7 @@ contains real(wp) :: ptot real(wp) :: alf real(wp) :: alfgr - real(wp), dimension(num_fluids) :: alpha + real(wp), dimension(num_fluids) :: alpha, alpha_rho real(wp) :: gamma real(wp) :: pi_inf real(wp) :: qv @@ -1215,6 +1215,7 @@ contains end do do s = 1, num_fluids alpha(s) = q_cons_vf(eqn_idx%adv%beg + s - 1)%sf(j - 2, k, l) + alpha_rho(s) = q_cons_vf(eqn_idx%cont%beg + s - 1)%sf(j - 2, k, l) end do dyn_p = 0.5_wp*rho*dot_product(vel, vel) @@ -1283,7 +1284,7 @@ contains end if ! Compute mixture sound Speed - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c) + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c, alpha_rho) if (hypoelasticity) c = sqrt(c*c + (4._wp/3._wp)*G_local/rho) accel = accel_mag(j - 2, k, l) @@ -1319,6 +1320,7 @@ contains end do do s = 1, num_fluids alpha(s) = q_cons_vf(eqn_idx%adv%beg + s - 1)%sf(j - 2, k - 2, l) + alpha_rho(s) = q_cons_vf(eqn_idx%cont%beg + s - 1)%sf(j - 2, k - 2, l) end do dyn_p = 0.5_wp*rho*dot_product(vel, vel) @@ -1365,7 +1367,7 @@ contains Rdot(:) = nRdot(:)/nbub end if ! Compute mixture sound speed - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c) + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c, alpha_rho) if (hypoelasticity) c = sqrt(c*c + (4._wp/3._wp)*G_local/rho) end if end if @@ -1400,6 +1402,7 @@ contains end do do s = 1, num_fluids alpha(s) = q_cons_vf(eqn_idx%adv%beg + s - 1)%sf(j - 2, k - 2, l - 2) + alpha_rho(s) = q_cons_vf(eqn_idx%cont%beg + s - 1)%sf(j - 2, k - 2, l - 2) end do dyn_p = 0.5_wp*rho*dot_product(vel, vel) @@ -1433,7 +1436,7 @@ contains end if ! Compute mixture sound speed - call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c) + call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, alpha, c, alpha_rho) if (hypoelasticity) c = sqrt(c*c + (4._wp/3._wp)*G_local/rho) accel = accel_mag(j - 2, k - 2, l - 2) diff --git a/src/simulation/m_global_parameters.fpp b/src/simulation/m_global_parameters.fpp index ba514a001..5295ec794 100644 --- a/src/simulation/m_global_parameters.fpp +++ b/src/simulation/m_global_parameters.fpp @@ -450,6 +450,12 @@ contains fluid_pp(i)%mg_c0 = dflt_real fluid_pp(i)%mg_s = dflt_real fluid_pp(i)%mg_gruneisen = dflt_real + fluid_pp(i)%jwl_a = dflt_real + fluid_pp(i)%jwl_b = dflt_real + fluid_pp(i)%jwl_r1 = dflt_real + fluid_pp(i)%jwl_r2 = dflt_real + fluid_pp(i)%jwl_omega = dflt_real + fluid_pp(i)%jwl_rho0 = dflt_real fluid_pp(i)%gamma = dflt_real fluid_pp(i)%pi_inf = dflt_real fluid_pp(i)%cv = 0._wp diff --git a/toolchain/mfc/case_validator.py b/toolchain/mfc/case_validator.py index 6cc91a9db..92544634c 100644 --- a/toolchain/mfc/case_validator.py +++ b/toolchain/mfc/case_validator.py @@ -955,40 +955,52 @@ def check_eos_selector(self): return eos_names = CONSTRAINTS["fluid_pp(1)%eos"]["names"] eos_ideal_gas = eos_names["ideal_gas"] - eos_mg = eos_names["mie_gruneisen"] - eos_values = set(eos_names.values()) + # The state-dependent families: selector value -> (parameter prefix, its parameters) + families = { + eos_names["mie_gruneisen"]: ("mg", ("rho0", "c0", "s", "gruneisen")), + eos_names["jwl"]: ("jwl", ("a", "b", "r1", "r2", "omega", "rho0")), + } bub_fac = 1 if self.get("bubbles_euler", "F") == "T" else 0 + any_state_dependent = False for i in range(1, num_fluids + 1 + bub_fac): eos = self.get(f"fluid_pp({i})%eos") - mg = {k: self.get(f"fluid_pp({i})%mg_{k}") for k in ("rho0", "c0", "s", "gruneisen")} - # An unset selector is stiffened gas, so stray mg_* parameters must be caught before the early return. - self.prohibit( - (eos if eos is not None else eos_names["stiffened_gas"]) != eos_mg and any(v is not None for v in mg.values()), - f"fluid_pp({i})%mg_* are only read when fluid_pp({i})%eos = 'mie_gruneisen'", - ) + effective = eos if eos is not None else eos_names["stiffened_gas"] + for value, (prefix, keys) in families.items(): + self.prohibit( + effective != value and any(self.get(f"fluid_pp({i})%{prefix}_{k}") is not None for k in keys), + f"fluid_pp({i})%{prefix}_* are only read when fluid_pp({i})%eos = '{ {v: n for n, v in eos_names.items()}[value] }'", + ) if eos is None: continue - self.prohibit(eos not in eos_values, f"fluid_pp({i})%eos must be 'stiffened_gas', 'ideal_gas' or 'mie_gruneisen'") + self.prohibit(eos not in eos_names.values(), f"fluid_pp({i})%eos must be one of {', '.join(repr(n) for n in eos_names)}") self.prohibit( eos == eos_ideal_gas and self.get(f"fluid_pp({i})%pi_inf") is not None, f"fluid_pp({i})%eos = 'ideal_gas' has no stiffness; do not set fluid_pp({i})%pi_inf", ) + if eos not in families: + continue + any_state_dependent = True + prefix, keys = families[eos] + name = {v: n for n, v in eos_names.items()}[eos] + par = {k: self.get(f"fluid_pp({i})%{prefix}_{k}") for k in keys} self.prohibit( - eos == eos_mg and any(v is None for v in mg.values()), - f"fluid_pp({i})%eos = 'mie_gruneisen' requires fluid_pp({i})%mg_rho0, mg_c0, mg_s and mg_gruneisen", + any(p is None for p in par.values()), + f"fluid_pp({i})%eos = '{name}' requires fluid_pp({i})%{prefix}_{{{', '.join(keys)}}}", ) - if eos == eos_mg and all(v is not None for v in mg.values()): - self.prohibit(mg["rho0"] <= 0 or mg["c0"] <= 0 or mg["gruneisen"] <= 0, f"fluid_pp({i})%mg_rho0, mg_c0 and mg_gruneisen must be positive") - self.prohibit(mg["s"] < 1, f"fluid_pp({i})%mg_s must be >= 1 (u_s = c0 + s u_p; s < 1 gives no shock)") - for k in ("gamma", "pi_inf", "qv"): - self.prohibit( - self.get(f"fluid_pp({i})%{k}") is not None, - f"fluid_pp({i})%{k} is not read with eos = 'mie_gruneisen'; the reference curve replaces it", - ) + for k in ("gamma", "pi_inf", "qv"): + self.prohibit( + self.get(f"fluid_pp({i})%{k}") is not None, + f"fluid_pp({i})%{k} is not read with eos = '{name}'; the reference curve replaces it", + ) + if any(p is None for p in par.values()): + continue + if prefix == "mg": + self.prohibit(par["rho0"] <= 0 or par["c0"] <= 0 or par["gruneisen"] <= 0, f"fluid_pp({i})%mg_rho0, mg_c0 and mg_gruneisen must be positive") + self.prohibit(par["s"] < 1, f"fluid_pp({i})%mg_s must be >= 1 (u_s = c0 + s u_p; s < 1 gives no shock)") # The linear Hugoniot has a pole at mu = 1/(s - 1), its maximum compression. Only the initial # state can be checked here; the solver does not guard the runtime density. - if mg["s"] > 1: - rho_pole = mg["rho0"] * (1.0 + 1.0 / (mg["s"] - 1.0)) + if par["s"] > 1: + rho_pole = par["rho0"] * (1.0 + 1.0 / (par["s"] - 1.0)) num_patches = self.get("num_patches", 0) or 0 for j in range(1, num_patches + 1): ar = self.get(f"patch_icpp({j})%alpha_rho({i})") @@ -1000,18 +1012,17 @@ def check_eos_selector(self): f"patch_icpp({j}) starts fluid {i} at rho = {ar/a:.4g}, within 20% of the Mie-Gruneisen " f"Hugoniot pole rho0*s/(s-1) = {rho_pole:.4g}; the reference curve is unphysical beyond it", ) - if not any(self.get(f"fluid_pp({i})%eos") == eos_mg for i in range(1, num_fluids + 1)): + else: + self.prohibit(par["a"] <= 0 or par["omega"] <= 0 or par["rho0"] <= 0, f"fluid_pp({i})%jwl_a, jwl_omega and jwl_rho0 must be positive") + self.prohibit(not par["r1"] > par["r2"] > 0, f"fluid_pp({i})%jwl_r1 > jwl_r2 > 0 is required") + if not any_state_dependent: return - # The per-phase evaluation is wired through the 5-equation Riemann and time-step paths only; every - # feature below still reads the stiffened-gas coefficients directly or mixes without partial densities. - self.prohibit(self.get("model_eqns") != 2, "eos = 'mie_gruneisen' requires model_eqns = 2") - self.prohibit(self.get("riemann_solver") not in (1, 2, 5), "eos = 'mie_gruneisen' requires riemann_solver = 1, 2 or 5") - for flag in ("bubbles_euler", "bubbles_lagrange", "alt_soundspeed", "hypoelasticity", "ib", "igr", "relativity", "mhd", "chemistry", "acoustic_source", "probe_wrt", "c_wrt"): - self.prohibit(self.get(flag, "F") == "T", f"eos = 'mie_gruneisen' is not supported with {flag} = T") - for dir in "xyz": - for bound in ("beg", "end"): - bc = self.get(f"bc_{dir}%{bound}") - self.prohibit(isinstance(bc, int) and -12 <= bc <= -5, f"eos = 'mie_gruneisen' is not supported with characteristic boundary condition bc_{dir}%{bound}") + # The per-phase evaluation is wired through the 5-equation paths only; every feature below still + # reads the stiffened-gas coefficients directly. + self.prohibit(self.get("model_eqns") != 2, "a state-dependent eos (mie_gruneisen, jwl) requires model_eqns = 2") + self.prohibit(self.get("riemann_solver") not in (1, 2, 5), "a state-dependent eos (mie_gruneisen, jwl) requires riemann_solver = 1, 2 or 5") + for flag in ("bubbles_euler", "bubbles_lagrange", "hypoelasticity", "ib", "igr", "relativity", "mhd", "chemistry", "acoustic_source"): + self.prohibit(self.get(flag, "F") == "T", f"a state-dependent eos (mie_gruneisen, jwl) is not supported with {flag} = T") def check_stiffened_eos(self): """Checks constraints on stiffened equation of state fluids parameters""" diff --git a/toolchain/mfc/eos.py b/toolchain/mfc/eos.py index b77ac254b..c208e0bdb 100644 --- a/toolchain/mfc/eos.py +++ b/toolchain/mfc/eos.py @@ -1,4 +1,6 @@ -"""The Mie-Gruneisen reference curve as m_variables_conversion computes it, for tests and validation cases.""" +"""The Mie-Gruneisen reference curves as m_variables_conversion computes them, for tests and validation cases.""" + +import math def mg_reference(rho, rho0, c0, s): @@ -16,18 +18,40 @@ def mg_reference(rho, rho0, c0, s): return p, e, dp_dmu / rho0, de_dmu / rho0 -def eos_coefficients(rho, rho0, c0, s, gruneisen): - """Gamma, Pi, dPi/drho: the three numbers s_eos_coefficients returns.""" - p, e, dp, de = mg_reference(rho, rho0, c0, s) +def jwl_reference(rho, rho0, a, b, r1, r2): + """p_ref, e_ref and their d/drho for the JWL curve p = A exp(-R1 V) + B exp(-R2 V), V = rho0/rho.""" + V = rho0 / rho + ea, eb = a * math.exp(-r1 * V), b * math.exp(-r2 * V) + p = ea + eb + return p, (ea / r1 + eb / r2) / rho0, (rho0 / rho**2) * (r1 * ea + r2 * eb), p / rho**2 + + +def coefficients_from_curve(rho, curve, gruneisen): + """Gamma, Pi, dPi/drho from a reference curve (p, e, dp/drho, de/drho): what s_eos_coefficients returns.""" + p, e, dp, de = curve return 1.0 / gruneisen, rho * e - p / gruneisen, e + rho * de - dp / gruneisen -def sound_speed(rho, pres, rho0, c0, s, gruneisen): +def eos_coefficients(rho, rho0, c0, s, gruneisen): + return coefficients_from_curve(rho, mg_reference(rho, rho0, c0, s), gruneisen) + + +def jwl_coefficients(rho, rho0, a, b, r1, r2, omega): + return coefficients_from_curve(rho, jwl_reference(rho, rho0, a, b, r1, r2), omega) + + +def sound_speed(rho, pres, gamma, pi, dpi): """c^2 = [((Gamma + 1) p + Pi)/rho - dPi/drho]/Gamma, the frozen single-phase speed the solver uses.""" - gamma, pi, dpi = eos_coefficients(rho, rho0, c0, s, gruneisen) return ((((gamma + 1.0) * pres + pi) / rho - dpi) / gamma) ** 0.5 +def jwl_isentrope(rho, rho0, a, b, r1, r2, omega, rho_start, p_start): + """Pressure on the isentrope through (rho_start, p_start): p_ref(V) + C V^-(omega + 1), exact for JWL.""" + V, V0 = rho0 / rho, rho0 / rho_start + C = (p_start - jwl_reference(rho_start, rho0, a, b, r1, r2)[0]) * V0 ** (omega + 1.0) + return jwl_reference(rho, rho0, a, b, r1, r2)[0] + C * V ** (-(omega + 1.0)) + + def hugoniot_state(u_p, rho0, c0, s): """Shock speed and density behind a shock of particle velocity u_p driven into the reference state.""" u_s = c0 + s * u_p diff --git a/toolchain/mfc/params/definitions.py b/toolchain/mfc/params/definitions.py index 48a3a0805..86c3a7c2a 100644 --- a/toolchain/mfc/params/definitions.py +++ b/toolchain/mfc/params/definitions.py @@ -896,8 +896,8 @@ def _load(): _r(f"{px}sph_har_coeff({ll},{mm})", REAL) # Values must match the hand-written eos_* constants in src/common/m_constants.fpp. - _EOS_NAMES = {"stiffened_gas": 1, "ideal_gas": 2, "mie_gruneisen": 3} - _EOS_VALUE_LABELS = {1: "stiffened-gas", 2: "ideal-gas", 3: "Mie-Gruneisen"} + _EOS_NAMES = {"stiffened_gas": 1, "ideal_gas": 2, "mie_gruneisen": 3, "jwl": 4} + _EOS_VALUE_LABELS = {1: "stiffened-gas", 2: "ideal-gas", 3: "Mie-Gruneisen", 4: "JWL"} # fluid_pp (10 fluids) # Members present in physical_parameters: gamma, pi_inf, Re, cv, qv, qvp, G. @@ -905,12 +905,21 @@ def _load(): # by upstream #1085/#1093 — they must NOT be registered (namelist read would crash). for f in range(1, NF + 1): px = f"fluid_pp({f})%" - CONSTRAINTS[f"fluid_pp({f})%eos"] = {"choices": [1, 2, 3], "value_labels": _EOS_VALUE_LABELS, "names": _EOS_NAMES} + CONSTRAINTS[f"fluid_pp({f})%eos"] = {"choices": [1, 2, 3, 4], "value_labels": _EOS_VALUE_LABELS, "names": _EOS_NAMES} for a, sym in [("gamma", r"\f$\gamma_k\f$"), ("pi_inf", r"\f$\pi_{\infty,k}\f$"), ("cv", r"\f$c_{v,k}\f$"), ("qv", r"\f$q_{v,k}\f$"), ("qvp", r"\f$q'_{v,k}\f$")]: _r(f"{px}{a}", REAL, math=sym) _r(f"{px}eos", INT, math=r"\f$\mathrm{EOS}_k\f$") for a, sym in [("mg_rho0", r"\f$\rho_{0,k}\f$"), ("mg_c0", r"\f$c_{0,k}\f$"), ("mg_s", r"\f$s_k\f$"), ("mg_gruneisen", r"\f$\Gamma_{G,k}\f$")]: _r(f"{px}{a}", REAL, math=sym) + for a, sym in [ + ("jwl_a", r"\f$A_k\f$"), + ("jwl_b", r"\f$B_k\f$"), + ("jwl_r1", r"\f$R_{1,k}\f$"), + ("jwl_r2", r"\f$R_{2,k}\f$"), + ("jwl_omega", r"\f$\omega_k\f$"), + ("jwl_rho0", r"\f$\rho_{0,k}\f$"), + ]: + _r(f"{px}{a}", REAL, math=sym) _r(f"{px}G", REAL, {"hypoelasticity"}, math=r"\f$G_k\f$") _r(f"{px}Re(1)", REAL, {"viscosity"}, math=r"\f$\mathrm{Re}_k\f$ (shear)") _r(f"{px}Re(2)", REAL, {"viscosity"}, math=r"\f$\mathrm{Re}_k\f$ (bulk)") diff --git a/toolchain/mfc/test/convergence.py b/toolchain/mfc/test/convergence.py index b6fe644b2..84939a4c1 100644 --- a/toolchain/mfc/test/convergence.py +++ b/toolchain/mfc/test/convergence.py @@ -410,7 +410,8 @@ def run_mg_wave_speed(spec: ConvergenceSpec) -> typing.Tuple[bool, str]: for N in spec.resolutions: cfg, run_dir = _run_mfc(spec.case_path, tmpdir, f"N{N}", ["-N", str(N)] + spec.extra_args, 1) rho0, c0, s, gruneisen = _mg_params(cfg) - c_exact = eos.sound_speed(rho0, float(cfg["patch_icpp(1)%pres"].split("+")[0]), rho0, c0, s, gruneisen) + p0 = float(cfg["patch_icpp(1)%pres"].split("+")[0]) + c_exact = eos.sound_speed(rho0, p0, *eos.eos_coefficients(rho0, rho0, c0, s, gruneisen)) Nt = int(cfg["t_step_stop"]) T = Nt * float(cfg["dt"]) x_cc = (np.arange(N) + 0.5) / N diff --git a/toolchain/mfc/test_case_validator.py b/toolchain/mfc/test_case_validator.py index a72d09808..5cac067a0 100644 --- a/toolchain/mfc/test_case_validator.py +++ b/toolchain/mfc/test_case_validator.py @@ -416,13 +416,13 @@ def test_accepts_complete_curve(self): def test_scope_is_the_five_equation_riemann_path(self): base = {**BASE, **self.MG} self.assertRejects({**base, "model_eqns": 3}, "requires model_eqns = 2") - self.assertRejects({**base, "alt_soundspeed": "T"}, "not supported with alt_soundspeed = T") - self.assertRejects({**base, "bc_x%beg": -5}, "characteristic boundary condition bc_x%beg") + self.assertRejects({**base, "hypoelasticity": "T"}, "not supported with hypoelasticity = T") + self.assertAccepts({**base, "bc_x%beg": -5, "bc_x%end": -5}) def test_requires_all_four_parameters(self): p = {**BASE, **self.MG} del p["fluid_pp(1)%mg_s"] - self.assertRejects(p, "requires fluid_pp(1)%mg_rho0, mg_c0, mg_s and mg_gruneisen") + self.assertRejects(p, "requires fluid_pp(1)%mg_{rho0, c0, s, gruneisen}") def test_rejects_parameters_under_stiffened_gas(self): self.assertRejects({**BASE, "fluid_pp(1)%mg_c0": 3940.0}, "only read when fluid_pp(1)%eos = 'mie_gruneisen'") @@ -446,3 +446,35 @@ def test_warns_near_the_hugoniot_pole(self): def test_no_pole_warning_at_reference_density(self): p = {**BASE, **self.MG, "patch_icpp(1)%alpha(1)": 1.0, "patch_icpp(1)%alpha_rho(1)": 8930.0} self.assertNotIn("Hugoniot pole", self.warnings_for(p)) + + +class TestJwlSelector(ConstraintTestCase): + """fluid_pp(i)%eos = 'jwl' owns the six JWL parameters and nothing of the stiffened gas.""" + + JWL = { + "fluid_pp(1)%eos": 4, + "fluid_pp(1)%gamma": None, + "fluid_pp(1)%pi_inf": None, + "fluid_pp(1)%qv": None, + "fluid_pp(1)%jwl_a": 3.712e11, + "fluid_pp(1)%jwl_b": 3.231e9, + "fluid_pp(1)%jwl_r1": 4.15, + "fluid_pp(1)%jwl_r2": 0.95, + "fluid_pp(1)%jwl_omega": 0.3, + "fluid_pp(1)%jwl_rho0": 1630.0, + } + + def test_accepts_complete_set(self): + self.assertAccepts({**BASE, **self.JWL}) + + def test_requires_all_six(self): + p = {**BASE, **self.JWL} + del p["fluid_pp(1)%jwl_omega"] + self.assertRejects(p, "requires fluid_pp(1)%jwl_{a, b, r1, r2, omega, rho0}") + + def test_rejects_stiffened_gas_and_mg_parameters(self): + self.assertRejects({**BASE, **self.JWL, "fluid_pp(1)%gamma": 2.5}, "fluid_pp(1)%gamma is not read with eos = 'jwl'") + self.assertRejects({**BASE, **self.JWL, "fluid_pp(1)%mg_c0": 1.0}, "fluid_pp(1)%mg_* are only read when fluid_pp(1)%eos = 'mie_gruneisen'") + + def test_requires_r1_above_r2(self): + self.assertRejects({**BASE, **self.JWL, "fluid_pp(1)%jwl_r2": 5.0}, "jwl_r1 > jwl_r2 > 0") diff --git a/toolchain/mfc/test_eos_mie_gruneisen.py b/toolchain/mfc/test_eos_mie_gruneisen.py index d0374769a..7e8d940b0 100644 --- a/toolchain/mfc/test_eos_mie_gruneisen.py +++ b/toolchain/mfc/test_eos_mie_gruneisen.py @@ -6,7 +6,7 @@ import pytest -from mfc.eos import eos_coefficients, mg_reference +from mfc.eos import eos_coefficients, jwl_coefficients, jwl_isentrope, jwl_reference, mg_reference # Copper-like, no calibrated material: order-of-magnitude values only. RHO0, C0, S, G0 = 8930.0, 3940.0, 1.49, 2.0 @@ -78,3 +78,50 @@ def test_release_branch_is_c1_at_rho0(): assert p_dn == pytest.approx(-(C0**2) * eps, rel=1e-6) # ... and from below, same slope assert dp_up == pytest.approx(dp_dn, rel=1e-6) assert dp_up == pytest.approx(C0**2, rel=1e-6) # bulk modulus rho0 c0^2 over rho0 + + +# JWL, synthetic TNT-like magnitudes: no calibrated material. +JWL = dict(rho0=1630.0, a=3.712e11, b=3.231e9, r1=4.15, r2=0.95) +OMEGA = 0.30 + + +@pytest.mark.parametrize("rho", [1630.0, 1200.0, 800.0, 400.0]) +def test_jwl_curve_derivatives(rho): + """The analytic dp_ref/drho and de_ref/drho match central differences, and de_ref/drho = p_ref/rho^2.""" + p, _, dp, de = jwl_reference(rho, **JWL) + h = rho * 1e-6 + assert dp == pytest.approx(_fd(lambda r: jwl_reference(r, **JWL)[0], rho, h), rel=1e-8) + assert de == pytest.approx(_fd(lambda r: jwl_reference(r, **JWL)[1], rho, h), rel=1e-8) + assert de == pytest.approx(p / rho**2, rel=1e-14) + + +@pytest.mark.parametrize("rho", [1630.0, 1200.0, 800.0, 400.0]) +def test_jwl_sound_speed_matches_isentrope(rho): + pres = 1.2 * jwl_reference(rho, **JWL)[0] + 1e8 + gamma, pi, dpi = jwl_coefficients(rho, omega=OMEGA, **JWL) + c2 = (((gamma + 1.0) * pres + pi) / rho - dpi) / gamma + e = (gamma * pres + pi) / rho + h = rho * 1e-6 + + def p_at(r, e_): + g, pi_, _ = jwl_coefficients(r, omega=OMEGA, **JWL) + return (r * e_ - pi_) / g + + c2_fd = (p_at(rho + h, e + pres / rho**2 * h) - p_at(rho - h, e - pres / rho**2 * h)) / (2.0 * h) + assert c2 > 0.0 + assert c2 == pytest.approx(c2_fd, rel=1e-6) + + +def test_jwl_isentrope_is_closed_form(): + """Integrating de = p/rho^2 drho through the Gamma/Pi form reproduces p_ref(V) + C V^-(omega+1).""" + rho, p0 = JWL["rho0"], 2.0e10 + gamma, pi, _ = jwl_coefficients(rho, omega=OMEGA, **JWL) + e = (gamma * p0 + pi) / rho + n, r_end = 20000, 800.0 + dr = (rho - r_end) / n + for _ in range(n): + gamma, pi, _ = jwl_coefficients(rho, omega=OMEGA, **JWL) + p = (rho * e - pi) / gamma + e -= p / rho**2 * dr + rho -= dr + assert p == pytest.approx(jwl_isentrope(rho + dr, JWL["rho0"], JWL["a"], JWL["b"], JWL["r1"], JWL["r2"], OMEGA, JWL["rho0"], p0), rel=1e-4) From 761bebe020ae46263805b6ad5de47c5b010ef45c Mon Sep 17 00:00:00 2001 From: Spencer Bryngelson Date: Wed, 2 Sep 2026 22:30:20 -0500 Subject: [PATCH 7/7] Validate JWL and the lifted fences Isentropic release of a JWL fluid lands on the closed-form isentrope to 7.5e-5 at N = 200 and 9e-7 at N = 800; goldens for JWL beside an ideal gas, Mie-Gruneisen under Wood's law, and Mie-Gruneisen with characteristic walls. The acoustic pulse now comes from a rectangle patch and is tracked by its centroid: an analytic IC is compiled in and every distinct one costs the suite a full rebuild. --- examples/1D_jwl_release/case.py | 68 ++++++++++ examples/1D_mg_acoustic/case.py | 27 ++-- tests/471270BB/golden-metadata.txt | 191 +++++++++++++++++++++++++++++ tests/471270BB/golden.txt | 24 ++++ tests/A6846AD4/golden-metadata.txt | 191 +++++++++++++++++++++++++++++ tests/A6846AD4/golden.txt | 24 ++++ tests/ED75D01D/golden-metadata.txt | 191 +++++++++++++++++++++++++++++ tests/ED75D01D/golden.txt | 24 ++++ toolchain/mfc/test/cases.py | 59 ++++++++- toolchain/mfc/test/convergence.py | 56 +++++++-- 10 files changed, 834 insertions(+), 21 deletions(-) create mode 100644 examples/1D_jwl_release/case.py create mode 100644 tests/471270BB/golden-metadata.txt create mode 100644 tests/471270BB/golden.txt create mode 100644 tests/A6846AD4/golden-metadata.txt create mode 100644 tests/A6846AD4/golden.txt create mode 100644 tests/ED75D01D/golden-metadata.txt create mode 100644 tests/ED75D01D/golden.txt diff --git a/examples/1D_jwl_release/case.py b/examples/1D_jwl_release/case.py new file mode 100644 index 000000000..fcba347bb --- /dev/null +++ b/examples/1D_jwl_release/case.py @@ -0,0 +1,68 @@ +""" +Isentropic release of a JWL fluid: a Riemann problem between two states of the same fluid. +Everything left of the contact keeps the left state's entropy, so the rarefaction fan and the +left star state must lie on the JWL isentrope through (rho0, p0), which is closed form. +""" + +import argparse +import json +import math + +parser = argparse.ArgumentParser(description="1D JWL isentropic release") +parser.add_argument("--mfc", type=json.loads, default="{}", metavar="DICT") +parser.add_argument("-N", type=int, default=400) +parser.add_argument("--cfl", type=float, default=0.4) +args = parser.parse_args() + +rho0, p0, rho_r, p_r = 1.0, 1.0, 0.3, 0.1 +jwl = {"a": 6.0, "b": 0.15, "r1": 4.0, "r2": 1.0, "omega": 0.3, "rho0": rho0} +N, L, T_end = args.N, 1.0, 0.15 +c_max = math.sqrt(((1.0 + jwl["omega"]) * p0 + jwl["a"] + jwl["b"]) / rho0) # generous bound on c + |u| +dt = args.cfl * (L / N) / c_max +Nt = math.ceil(T_end / dt) +dt = T_end / Nt + +case = { + "run_time_info": "F", + "x_domain%beg": 0.0, + "x_domain%end": L, + "m": N - 1, + "n": 0, + "p": 0, + "dt": dt, + "t_step_start": 0, + "t_step_stop": Nt, + "t_step_save": Nt, + "num_patches": 2, + "model_eqns": 2, + "num_fluids": 1, + "time_stepper": 3, + "recon_type": "weno", + "weno_order": 5, + "weno_eps": 1.0e-16, + "mapped_weno": "T", + "riemann_solver": 2, + "wave_speeds": 1, + "avg_state": 2, + "bc_x%beg": -3, + "bc_x%end": -3, + "format": 1, + "precision": 2, + "prim_vars_wrt": "T", + "parallel_io": "F", + "fluid_pp(1)%eos": "jwl", + **{f"fluid_pp(1)%jwl_{k}": v for k, v in jwl.items()}, +} +for pid, (x_c, rho, pres) in enumerate([(0.25, rho0, p0), (0.75, rho_r, p_r)], start=1): + case.update( + { + f"patch_icpp({pid})%geometry": 1, + f"patch_icpp({pid})%x_centroid": x_c, + f"patch_icpp({pid})%length_x": 0.5 * L, + f"patch_icpp({pid})%alpha_rho(1)": rho, + f"patch_icpp({pid})%alpha(1)": 1.0, + f"patch_icpp({pid})%vel(1)": 0.0, + f"patch_icpp({pid})%pres": pres, + } + ) +print(json.dumps(case)) diff --git a/examples/1D_mg_acoustic/case.py b/examples/1D_mg_acoustic/case.py index c14071434..660b09ec9 100644 --- a/examples/1D_mg_acoustic/case.py +++ b/examples/1D_mg_acoustic/case.py @@ -1,7 +1,9 @@ """ Right-moving acoustic pulse in a single Mie-Gruneisen fluid at its reference state. -The pulse is a simple wave (drho, dp = c^2 drho, du = c drho/rho0) so only the right-going -characteristic carries it; the harness measures its speed against the general analytic c. +A rectangle patch carries a simple-wave perturbation (drho, dp = c^2 drho, du = c drho/rho0), so +only the right-going characteristic is excited; the harness tracks the centroid of drho against +the general analytic c. Patches rather than an analytic IC: an IC expression is compiled in, and +every distinct one costs the test suite a full rebuild. """ import argparse @@ -16,12 +18,11 @@ rho0, p0, c0, s, gruneisen = 1.0, 1.0, 1.0, 1.5, 0.4 c = math.sqrt(c0**2 + (1.0 + gruneisen) * p0 / rho0) # the frozen speed at the reference state -amp, x0, width = 1.0e-4, 0.3, 0.05 -N, L, T_end = args.N, 1.0, 0.4 +amp, x0, width = 1.0e-4, 0.25, 0.1 +N, L, T_end = args.N, 1.0, 0.3 dt = args.cfl * (L / N) / c Nt = math.ceil(T_end / dt) dt = T_end / Nt -pulse = f"{amp}*exp(-((x - {x0})/{width})**2)" print( json.dumps( @@ -36,7 +37,6 @@ "t_step_start": 0, "t_step_stop": Nt, "t_step_save": Nt, - "num_patches": 1, "model_eqns": 2, "num_fluids": 1, "time_stepper": 3, @@ -53,13 +53,22 @@ "precision": 2, "prim_vars_wrt": "T", "parallel_io": "F", + "num_patches": 2, "patch_icpp(1)%geometry": 1, "patch_icpp(1)%x_centroid": 0.5, "patch_icpp(1)%length_x": L, - "patch_icpp(1)%alpha_rho(1)": f"{rho0} + {pulse}", + "patch_icpp(1)%alpha_rho(1)": rho0, "patch_icpp(1)%alpha(1)": 1.0, - "patch_icpp(1)%vel(1)": f"{c}/{rho0}*{pulse}", - "patch_icpp(1)%pres": f"{p0} + {c}**2*{pulse}", + "patch_icpp(1)%vel(1)": 0.0, + "patch_icpp(1)%pres": p0, + "patch_icpp(2)%geometry": 1, + "patch_icpp(2)%alter_patch(1)": "T", + "patch_icpp(2)%x_centroid": x0, + "patch_icpp(2)%length_x": width, + "patch_icpp(2)%alpha_rho(1)": rho0 + amp, + "patch_icpp(2)%alpha(1)": 1.0, + "patch_icpp(2)%vel(1)": c / rho0 * amp, + "patch_icpp(2)%pres": p0 + c**2 * amp, "fluid_pp(1)%eos": "mie_gruneisen", "fluid_pp(1)%mg_rho0": rho0, "fluid_pp(1)%mg_c0": c0, diff --git a/tests/471270BB/golden-metadata.txt b/tests/471270BB/golden-metadata.txt new file mode 100644 index 000000000..1e833658f --- /dev/null +++ b/tests/471270BB/golden-metadata.txt @@ -0,0 +1,191 @@ +This file was created on 2026-09-02 22:24:58.151007. + +mfc.sh: + + Invocation: test -j 2 --gpu mp --no-build --generate --only ED75D01D 471270BB A6846AD4 + Lock: mpi=Yes & gpu=Mp & debug=No & reldebug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No + Git: 636b5c7d63d4cae1255b57f650db0a4737ce921e on feature/mie-gruneisen-jwl (dirty) + +simulation: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : ON + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +pre_process: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : ON + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +syscheck: + + CMake Configuration: + + CMake v3.25.2 on k006-004-v7.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : ON + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc + CXX : /opt/ohpc/pub/compiler/gcc/12.2.0/bin/c++ + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +post_process: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : ON + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +CPU: + + CPU Info: + From lscpu + Architecture: x86_64 + CPU op-mode(s): 32-bit, 64-bit + Address sizes: 48 bits physical, 48 bits virtual + Byte Order: Little Endian + CPU(s): 16 + On-line CPU(s) list: 0-15 + Vendor ID: AuthenticAMD + Model name: AMD EPYC 7V13 64-Core Processor + CPU family: 25 + Model: 1 + Thread(s) per core: 1 + Core(s) per socket: 1 + Socket(s): 16 + Stepping: 1 + BogoMIPS: 4890.81 + Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean flushbyasid pausefilter pfthreshold v_vmsave_vmload vgif umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor arch_capabilities + Virtualization: AMD-V + Hypervisor vendor: KVM + Virtualization type: full + L1d cache: 1 MiB (16 instances) + L1i cache: 1 MiB (16 instances) + L2 cache: 8 MiB (16 instances) + L3 cache: 256 MiB (16 instances) + NUMA node(s): 1 + NUMA node0 CPU(s): 0-15 + Vulnerability Gather data sampling: Not affected + Vulnerability Indirect target selection: Not affected + Vulnerability Itlb multihit: Not affected + Vulnerability L1tf: Not affected + Vulnerability Mds: Not affected + Vulnerability Meltdown: Not affected + Vulnerability Mmio stale data: Not affected + Vulnerability Reg file data sampling: Not affected + Vulnerability Retbleed: Not affected + Vulnerability Spec rstack overflow: Vulnerable: Safe RET, no microcode + Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl + Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization + Vulnerability Spectre v2: Mitigation; Retpolines; IBPB conditional; IBRS_FW; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected + Vulnerability Srbds: Not affected + Vulnerability Tsa: Vulnerable: No microcode + Vulnerability Tsx async abort: Not affected + Vulnerability Vmscape: Not affected + diff --git a/tests/471270BB/golden.txt b/tests/471270BB/golden.txt new file mode 100644 index 000000000..259b21c0d --- /dev/null +++ b/tests/471270BB/golden.txt @@ -0,0 +1,24 @@ +D/cons.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/cons.1.00.000050.dat 0.81000000000073 0.81000000000462 0.80999999999642 0.80999999996616 0.80999999999293 0.81000000015283 0.8099999999189 0.80999999731814 0.80999998419672 0.8099999152821 0.8099995656751 0.80999788607423 0.80999027241052 0.80995777656306 0.80982747272077 0.80933801679071 0.80762036313703 0.80193321500339 0.7848123311771 0.75801726091391 0.73538849858872 0.71473562548875 0.70005824211164 0.69835712209324 0.69037309726509 0.68934466296316 0.69060747199113 0.69008640023977 0.68857418292916 0.68937215023059 0.66903747727225 0.53492315536707 0.350422317746 0.30329033711603 0.29304129340541 0.29241885532529 0.29188859158745 0.29247564016168 0.29042299003312 0.29278257084748 0.28563879680264 0.28164745622978 0.26755957537683 0.25482661825777 0.2509777048456 0.25020420985666 0.25004107181399 0.25000799529927 0.25000150250211 0.25000027217771 0.25000004753145 0.25000000801959 0.25000000122752 0.25000000004867 0.24999999993487 0.2500000000046 0.25000000001407 0.25000000000094 0.24999999999808 0.2499999999998 0.25000000000028 0.25000000000004 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000003 0.25000000000001 0.24999999999978 0.24999999999987 0.25000000000141 0.25000000000135 0.24999999999089 0.249999999984 0.25000000003542 0.25000000006488 0.24999999954265 0.24999999660736 0.24999998135357 0.24999990316577 0.24999952382458 0.24999779735158 0.24999045683117 0.24996143596963 0.24985540116681 0.24950012434627 0.2484261565781 0.24545647758702 0.23876849201707 0.22862717712765 0.21674230244838 0.2042738416549 0.19197725192283 0.18050154939615 0.17144990346471 0.16449640711457 0.16381319384196 0.15983361164155 0.16015668631861 0.16248364815834 0.16329966939287 0.15978010254058 0.14636051839913 0.12803138383917 0.1222187764838 0.11849559984781 0.11852752331055 0.11729270406396 0.11879126808256 0.11621908782061 0.11685360690904 0.11021833149395 0.09457381792715 0.08259422750273 0.08037064943363 0.08005278765971 0.08000742808114 0.08000103368606 0.08000014215753 0.08000001925547 0.08000000245556 0.08000000016063 0.07999999997558 0.08000000000342 0.080000000009 0.08000000000042 0.07999999999894 0.07999999999997 0.08000000000015 0.08000000000001 0.07999999999998 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/cons.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/cons.2.00.000050.dat 0.19000000000017 0.19000000000108 0.18999999999916 0.18999999999206 0.18999999999834 0.19000000003585 0.18999999998098 0.18999999937092 0.18999999629306 0.1899999801279 0.18999989812132 0.18999950414087 0.18999771821975 0.18999009573701 0.18995953063821 0.18984471998794 0.18944181357535 0.18810779117364 0.18409178138724 0.17780651798887 0.17249853674137 0.16765403477991 0.16421119662532 0.16381214119592 0.16193945750451 0.16169769165256 0.16199548577547 0.16186734563288 0.16152008165869 0.1617060407009 0.16858700177661 0.21256845696881 0.26689299108916 0.29099727790311 0.29171826772271 0.2920325654779 0.29221602226826 0.2925169032947 0.2906109472378 0.29277081174985 0.28567914137086 0.28165115426692 0.26755768936316 0.25482659723034 0.25097770481312 0.25020420985665 0.25004107181399 0.25000799529927 0.25000150250211 0.25000027217771 0.25000004753145 0.25000000801959 0.25000000122752 0.25000000004867 0.24999999993487 0.2500000000046 0.25000000001407 0.25000000000094 0.24999999999808 0.2499999999998 0.25000000000028 0.25000000000004 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000003 0.25000000000001 0.24999999999978 0.24999999999987 0.25000000000141 0.25000000000135 0.24999999999089 0.249999999984 0.25000000003542 0.25000000006488 0.24999999954265 0.24999999660736 0.24999998135357 0.24999990316577 0.24999952382458 0.24999779735158 0.24999045683117 0.24996143596963 0.24985540116681 0.24950012434627 0.2484261565781 0.24545647758638 0.23876849206422 0.22862717550562 0.21674233030688 0.20427349952273 0.19197936305378 0.18048836520744 0.17147957880059 0.16435155422989 0.16389931363128 0.15970087493459 0.1601196909228 0.16253906750192 0.16301225816498 0.15742736893455 0.13020840059211 0.07491778285312 0.04456488153842 0.03446803703798 0.03385690294192 0.03306573418233 0.0334170845356 0.03261893625427 0.03283924559376 0.03099553439576 0.02660010507045 0.02322965012097 0.02260424516952 0.0225148465293 0.02250208914782 0.0225002907242 0.02250003998181 0.0225000054156 0.02250000069063 0.02250000004518 0.02249999999313 0.02250000000096 0.02250000000253 0.02250000000012 0.0224999999997 0.02249999999999 0.02250000000004 0.0225 0.02249999999999 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/cons.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/cons.3.00.000050.dat -1.34e-12 -8.41e-12 6.53e-12 6.156e-11 1.333e-11 -2.7622e-10 1.6988e-10 4.71476e-09 2.869406e-08 1.5417219e-07 7.9056185e-07 3.84813681e-06 1.770896409e-05 7.687075984e-05 0.0003140925576 0.00120485886564 0.0043265174851 0.01460738027624 0.04518825602977 0.08934935727318 0.13244188655148 0.15926670838663 0.17506269450708 0.19719701721838 0.19238096662938 0.19671929554479 0.2002326874421 0.19933424234921 0.19731730728939 0.19740133050502 0.19553088574045 0.17520664018935 0.14369327065517 0.13771267227894 0.13656374779131 0.137071681061 0.1359160432934 0.13390922602654 0.13657437184078 0.12594423604892 0.12363810310025 0.09486162778861 0.05339506756725 0.01400604232566 0.00280304275643 0.00058390942314 0.00011735742097 2.283918922e-05 4.29116985e-06 7.7720973e-07 1.3570736e-07 2.29311e-08 3.61345e-09 1.2718e-10 -1.8752e-10 1.269e-11 4.025e-11 2.7e-12 -5.47e-12 -5.7e-13 7.9e-13 1.2e-13 -1e-13 -2e-14 1e-14 0.0 -0.0 -0.0 0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 1e-14 -0.0 -9e-14 -2e-14 6.3e-13 3.8e-13 -4.03e-12 -3.85e-12 2.606e-11 4.56e-11 -1.0142e-10 -1.979e-10 1.35675e-09 9.754e-09 5.331648e-08 2.7666694e-07 1.36083892e-06 6.29683895e-06 2.728996744e-05 0.00011030774678 0.0004136366283 0.00142908816506 0.00448816664423 0.0128589714078 0.03113679412095 0.05730830959626 0.08598236032872 0.1129211219143 0.13657793881415 0.15692499365353 0.1674940442471 0.17800290693221 0.18199240770511 0.1784981831846 0.18077362461515 0.18330200986915 0.18272871505588 0.17709377153432 0.15492371154915 0.1141162418666 0.09380361434043 0.08654001599805 0.08570800561526 0.08587057930508 0.08464799454154 0.08652833364949 0.07842022599366 0.06582629109995 0.0283669889461 0.004455499824 0.00061798767837 8.757002392e-05 1.231330674e-05 1.71328636e-06 2.3560226e-07 3.204576e-08 4.31821e-09 3.9035e-10 -7.048e-11 6.81e-12 1.481e-11 6.8e-13 -1.75e-12 -5e-14 2.5e-13 1e-14 -3e-14 -0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 +D/cons.4.00.000000.dat 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 +D/cons.4.00.000050.dat 2.50000000000317 2.50000000001996 2.49999999998452 2.49999999985379 2.49999999996945 2.50000000066039 2.49999999964957 2.4999999884117 2.49999993171423 2.49999963393503 2.49999812328839 2.49999086577355 2.499957967631 2.49981756082213 2.49925463770696 2.49714137993958 2.48974020698217 2.46540031283875 2.3935195249205 2.28463890247302 2.19729124072437 2.11914391422084 2.06468514880269 2.06300648459438 2.03121177432819 2.0280887275335 2.03486247969539 2.02905086587174 2.02778449914249 2.03084373795856 2.03809430303813 2.08671792454037 2.18423484661562 2.2114738248803 2.21780825533115 2.21356558340325 2.216789654143 2.21695856231458 2.20044567022324 2.21741976422582 2.14806899486753 2.10279485637718 1.96180007032933 1.83928446363716 1.80343963906742 1.79631961125968 1.79482143244269 1.79451782506875 1.79445823413051 1.79444694243281 1.79444488067758 1.79444451804646 1.79444445571037 1.79444444489116 1.79444444384674 1.79444444448665 1.79444444457359 1.79444444445305 1.79444444442686 1.79444444444262 1.79444444444698 1.79444444444482 1.79444444444411 1.79444444444438 1.79444444444449 1.79444444444445 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444445 1.79444444444445 1.79444444444444 1.79444444444441 1.79444444444445 1.79444444444473 1.79444444444451 1.79444444444243 1.79444444444323 1.79444444445738 1.79444444445685 1.7944444443608 1.79444444429762 1.79444444476955 1.7944444450399 1.79444444024696 1.79444441330751 1.79444427331167 1.7944435557216 1.7944400742175 1.79442422913448 1.79435686131634 1.79409054317425 1.79311776689832 1.78986152293187 1.78004617752995 1.75311912768818 1.69353451114459 1.60583540864892 1.50708492254103 1.40791981198106 1.31404364553453 1.23217586794322 1.1598485583343 1.13550630957476 1.10448205295674 1.08807730226984 1.10191838780817 1.10616301099013 1.09961380440226 1.08396229553801 1.0276707119721 0.93042782405686 0.89193028130723 0.8747366161214 0.87730477991627 0.87117262587161 0.88206737093985 0.86132377061025 0.8611152922501 0.79700792618486 0.65086631593867 0.54846926988259 0.53069294536033 0.52819214703826 0.52783607022117 0.52778588939345 0.5277788933205 0.52777792887975 0.52777779704714 0.52777777903829 0.52777777758614 0.52777777780461 0.52777777784839 0.5277777777811 0.52777777776947 0.52777777777757 0.52777777777896 0.52777777777782 0.52777777777763 0.52777777777777 0.5277777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 +D/cons.5.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/cons.5.00.000050.dat 0.90000000000003 0.90000000000021 0.89999999999984 0.89999999999846 0.89999999999968 0.90000000000698 0.8999999999963 0.89999999987754 0.89999999927839 0.89999999613161 0.89999998016782 0.89999990347326 0.89999955580582 0.89999807175239 0.89999211804571 0.89996971337206 0.89989057301423 0.89962266340976 0.89875937185321 0.89721451378962 0.89569576344932 0.89409724454747 0.89282534739203 0.89267048078362 0.89191820447405 0.89181173054307 0.89194269638648 0.89189203141838 0.89173682415904 0.89181555939766 0.87123992344183 0.74469269874215 0.57822338738247 0.53403502669811 0.52549541884376 0.52511355720982 0.52476682174754 0.52508556679923 0.52406766827378 0.52522660451095 0.52172484957343 0.5196817926684 0.51168520556758 0.50342746486862 0.5007075542277 0.50014836520833 0.50002986430167 0.50000581452997 0.50000109272022 0.50000019794708 0.5000000345683 0.50000000583243 0.50000000089274 0.5000000000354 0.49999999995264 0.50000000000334 0.50000000001023 0.50000000000068 0.49999999999861 0.49999999999986 0.5000000000002 0.50000000000003 0.49999999999997 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.50000000000002 0.5 0.49999999999984 0.4999999999999 0.50000000000102 0.50000000000098 0.49999999999337 0.49999999998836 0.50000000002576 0.50000000004719 0.49999999966738 0.49999999753262 0.49999998643896 0.4999999295751 0.49999965368992 0.49999839805695 0.49999305918635 0.49997194805044 0.49989476134537 0.49963554519564 0.49884633413187 0.4966192172558 0.49135725723943 0.48268695265186 0.47137146876533 0.45801699599217 0.4432773194076 0.42791173765113 0.41459214647321 0.40452021186106 0.40241957493463 0.39552852479524 0.39751671353384 0.40092254355064 0.40124572735511 0.39229287203476 0.35674959990075 0.30188363858305 0.2817624520376 0.27188723974915 0.2718106340415 0.26943014694062 0.27186190099959 0.26767536141058 0.26881286056148 0.25771233138349 0.22935902402275 0.20544699443153 0.20078288466565 0.20011160455324 0.20001570662159 0.20000218576139 0.2000003005973 0.20000004071641 0.20000000519238 0.20000000033966 0.19999999994836 0.20000000000723 0.20000000001903 0.2000000000009 0.19999999999776 0.19999999999994 0.20000000000032 0.20000000000001 0.19999999999996 0.2 0.20000000000001 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/cons.6.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/cons.6.00.000050.dat 0.09999999999997 0.09999999999979 0.10000000000016 0.10000000000155 0.10000000000032 0.09999999999302 0.1000000000037 0.10000000012246 0.10000000072161 0.10000000386839 0.10000001983218 0.10000009652674 0.10000044419418 0.10000192824761 0.10000788195429 0.10003028662794 0.10010942698577 0.10037733659024 0.10124062814679 0.10278548621038 0.10430423655068 0.10590275545253 0.10717465260797 0.10732951921638 0.10808179552595 0.10818826945693 0.10805730361352 0.10810796858162 0.10826317584096 0.10818444060234 0.12876007655817 0.25530730125785 0.42177661261753 0.46596497330188 0.47450458115624 0.47488644279017 0.47523317825246 0.47491443320077 0.47593233172622 0.47477339548905 0.47827515042657 0.4803182073316 0.48831479443242 0.49657253513138 0.4992924457723 0.49985163479167 0.49997013569833 0.49999418547003 0.49999890727978 0.49999980205292 0.4999999654317 0.49999999416757 0.49999999910726 0.4999999999646 0.50000000004736 0.49999999999666 0.49999999998977 0.49999999999932 0.50000000000139 0.50000000000014 0.4999999999998 0.49999999999997 0.50000000000003 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49999999999998 0.5 0.50000000000016 0.5000000000001 0.49999999999897 0.49999999999902 0.50000000000663 0.50000000001164 0.49999999997424 0.49999999995281 0.50000000033262 0.50000000246738 0.50000001356104 0.5000000704249 0.50000034631008 0.50000160194305 0.50000694081365 0.50002805194956 0.50010523865463 0.50036445480436 0.50115366586813 0.5033807827442 0.50864274276057 0.51731304734814 0.52862853123467 0.54198300400783 0.5567226805924 0.57208826234887 0.5854078535268 0.59547978813894 0.59758042506537 0.60447147520476 0.60248328646616 0.59907745644936 0.59875427264489 0.60770712796524 0.64325040009925 0.69811636141695 0.7182375479624 0.72811276025085 0.7281893659585 0.73056985305938 0.72813809900041 0.73232463858942 0.73118713943852 0.74228766861651 0.77064097597725 0.79455300556847 0.79921711533435 0.79988839544676 0.79998429337842 0.79999781423861 0.7999996994027 0.79999995928359 0.79999999480762 0.79999999966034 0.80000000005164 0.79999999999277 0.79999999998097 0.7999999999991 0.80000000000224 0.80000000000006 0.79999999999968 0.79999999999999 0.80000000000004 0.8 0.79999999999999 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/prim.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/prim.1.00.000050.dat 0.81000000000073 0.81000000000462 0.80999999999642 0.80999999996616 0.80999999999293 0.81000000015283 0.8099999999189 0.80999999731814 0.80999998419672 0.8099999152821 0.8099995656751 0.80999788607423 0.80999027241052 0.80995777656306 0.80982747272077 0.80933801679071 0.80762036313703 0.80193321500339 0.7848123311771 0.75801726091391 0.73538849858872 0.71473562548875 0.70005824211164 0.69835712209324 0.69037309726509 0.68934466296316 0.69060747199113 0.69008640023977 0.68857418292916 0.68937215023059 0.66903747727225 0.53492315536707 0.350422317746 0.30329033711603 0.29304129340541 0.29241885532529 0.29188859158745 0.29247564016168 0.29042299003312 0.29278257084748 0.28563879680264 0.28164745622978 0.26755957537683 0.25482661825777 0.2509777048456 0.25020420985666 0.25004107181399 0.25000799529927 0.25000150250211 0.25000027217771 0.25000004753145 0.25000000801959 0.25000000122752 0.25000000004867 0.24999999993487 0.2500000000046 0.25000000001407 0.25000000000094 0.24999999999808 0.2499999999998 0.25000000000028 0.25000000000004 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000003 0.25000000000001 0.24999999999978 0.24999999999987 0.25000000000141 0.25000000000135 0.24999999999089 0.249999999984 0.25000000003542 0.25000000006488 0.24999999954265 0.24999999660736 0.24999998135357 0.24999990316577 0.24999952382458 0.24999779735158 0.24999045683117 0.24996143596963 0.24985540116681 0.24950012434627 0.2484261565781 0.24545647758702 0.23876849201707 0.22862717712765 0.21674230244838 0.2042738416549 0.19197725192283 0.18050154939615 0.17144990346471 0.16449640711457 0.16381319384196 0.15983361164155 0.16015668631861 0.16248364815834 0.16329966939287 0.15978010254058 0.14636051839913 0.12803138383917 0.1222187764838 0.11849559984781 0.11852752331055 0.11729270406396 0.11879126808256 0.11621908782061 0.11685360690904 0.11021833149395 0.09457381792715 0.08259422750273 0.08037064943363 0.08005278765971 0.08000742808114 0.08000103368606 0.08000014215753 0.08000001925547 0.08000000245556 0.08000000016063 0.07999999997558 0.08000000000342 0.080000000009 0.08000000000042 0.07999999999894 0.07999999999997 0.08000000000015 0.08000000000001 0.07999999999998 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/prim.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/prim.2.00.000050.dat 0.19000000000017 0.19000000000108 0.18999999999916 0.18999999999206 0.18999999999834 0.19000000003585 0.18999999998098 0.18999999937092 0.18999999629306 0.1899999801279 0.18999989812132 0.18999950414087 0.18999771821975 0.18999009573701 0.18995953063821 0.18984471998794 0.18944181357535 0.18810779117364 0.18409178138724 0.17780651798887 0.17249853674137 0.16765403477991 0.16421119662532 0.16381214119592 0.16193945750451 0.16169769165256 0.16199548577547 0.16186734563288 0.16152008165869 0.1617060407009 0.16858700177661 0.21256845696881 0.26689299108916 0.29099727790311 0.29171826772271 0.2920325654779 0.29221602226826 0.2925169032947 0.2906109472378 0.29277081174985 0.28567914137086 0.28165115426692 0.26755768936316 0.25482659723034 0.25097770481312 0.25020420985665 0.25004107181399 0.25000799529927 0.25000150250211 0.25000027217771 0.25000004753145 0.25000000801959 0.25000000122752 0.25000000004867 0.24999999993487 0.2500000000046 0.25000000001407 0.25000000000094 0.24999999999808 0.2499999999998 0.25000000000028 0.25000000000004 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000003 0.25000000000001 0.24999999999978 0.24999999999987 0.25000000000141 0.25000000000135 0.24999999999089 0.249999999984 0.25000000003542 0.25000000006488 0.24999999954265 0.24999999660736 0.24999998135357 0.24999990316577 0.24999952382458 0.24999779735158 0.24999045683117 0.24996143596963 0.24985540116681 0.24950012434627 0.2484261565781 0.24545647758638 0.23876849206422 0.22862717550562 0.21674233030688 0.20427349952273 0.19197936305378 0.18048836520744 0.17147957880059 0.16435155422989 0.16389931363128 0.15970087493459 0.1601196909228 0.16253906750192 0.16301225816498 0.15742736893455 0.13020840059211 0.07491778285312 0.04456488153842 0.03446803703798 0.03385690294192 0.03306573418233 0.0334170845356 0.03261893625427 0.03283924559376 0.03099553439576 0.02660010507045 0.02322965012097 0.02260424516952 0.0225148465293 0.02250208914782 0.0225002907242 0.02250003998181 0.0225000054156 0.02250000069063 0.02250000004518 0.02249999999313 0.02250000000096 0.02250000000253 0.02250000000012 0.0224999999997 0.02249999999999 0.02250000000004 0.0225 0.02249999999999 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/prim.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/prim.3.00.000050.dat -1.34e-12 -8.41e-12 6.53e-12 6.156e-11 1.333e-11 -2.7622e-10 1.6988e-10 4.71476e-09 2.869406e-08 1.5417221e-07 7.9056227e-07 3.84814685e-06 1.770917676e-05 7.687476714e-05 0.00031415947251 0.00120584435788 0.00433926548028 0.01475431844247 0.04663852226839 0.09547669047044 0.14587925743793 0.18049475822069 0.20255569231155 0.22872192922545 0.22571645290545 0.23115100497391 0.23484868967216 0.23397308048107 0.23211226743784 0.23194264946323 0.23343501847329 0.23439278421043 0.23277127360783 0.23172731317058 0.23353828969953 0.23453049506257 0.23269126808673 0.2289075775827 0.23505403571133 0.21508583127003 0.21640857890007 0.1684038022124 0.0997819937527 0.02748151468494 0.00558424653364 0.00116686570436 0.00023467628762 4.567691764e-05 8.58228812e-06 1.55441777e-06 2.7141466e-07 4.586219e-08 7.2269e-09 2.5435e-10 -3.7504e-10 2.538e-11 8.05e-11 5.39e-12 -1.095e-11 -1.14e-12 1.58e-12 2.3e-13 -2.1e-13 -4e-14 3e-14 1e-14 -0.0 -0.0 0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 2e-14 -0.0 -1.8e-13 -4e-14 1.26e-12 7.5e-13 -8.06e-12 -7.69e-12 5.213e-11 9.12e-11 -2.0283e-10 -3.958e-10 2.71349e-09 1.9508e-08 1.0663296e-07 5.533341e-07 2.72168303e-06 1.259378885e-05 5.458201843e-05 0.00022064953009 0.00082775202451 0.00286390271109 0.00903320066223 0.02619399482595 0.06520289560579 0.12533135937631 0.19835157657656 0.27639666333113 0.3557119046444 0.43470741786747 0.48842124375156 0.54129241429522 0.5553416593963 0.55861946263528 0.5644300905742 0.56396676612827 0.55998172185566 0.5582900387269 0.56016313081822 0.56228977791084 0.56242689153596 0.56575548123682 0.56244596461095 0.5711058209079 0.55613238751678 0.58135905920088 0.52387421765639 0.4661460876042 0.23410143242336 0.04210297263766 0.00600134315024 0.0008537783348 0.00012011866872 1.67147729e-05 2.29855458e-06 3.1264144e-07 4.212888e-08 3.80832e-09 -6.8759e-10 6.642e-11 1.4449e-10 6.67e-12 -1.709e-11 -4.5e-13 2.43e-12 9e-14 -3.1e-13 -1e-14 4e-14 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 +D/prim.4.00.000000.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 +D/prim.4.00.000050.dat 1.00000000000197 1.00000000001241 0.99999999999037 0.99999999990907 0.999999999981 1.00000000041071 0.99999999978206 0.99999999279303 0.99999995753186 0.99999977233766 0.99999883283926 0.99999431925374 0.99997385915347 0.99988653472811 0.99953639506974 0.99822143667829 0.99360989042566 0.97837508945069 0.93277194011633 0.86206731823822 0.80307325449914 0.74994525760402 0.7126320398701 0.70838863145647 0.68830161625658 0.68565731579204 0.68926602582111 0.68651620996602 0.68472689094481 0.68672194719869 0.68765268647086 0.68571075698464 0.68592163514037 0.6877790800745 0.6871533114894 0.68507412274365 0.68620735503692 0.68682398811252 0.67859158188565 0.68793237297361 0.65555576266717 0.63705257983281 0.57452748761067 0.52002818523672 0.50402144354406 0.50083844486305 0.50016856853931 0.50003281205245 0.50000616604908 0.50000111697416 0.50000019506142 0.5000000329111 0.50000000503755 0.50000000019975 0.49999999973273 0.50000000001887 0.50000000005775 0.50000000000385 0.49999999999214 0.49999999999918 0.50000000000113 0.50000000000017 0.49999999999985 0.49999999999997 0.50000000000002 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49999999999998 0.5 0.50000000000013 0.50000000000003 0.4999999999991 0.49999999999946 0.50000000000579 0.50000000000554 0.4999999999626 0.49999999993435 0.50000000014537 0.50000000026626 0.4999999981231 0.49999998607714 0.49999992347807 0.49999960260802 0.49999804585505 0.49999096073058 0.49996083718026 0.49984175216232 0.49940676260561 0.49795058922671 0.49356037070076 0.48151102953495 0.45483417863972 0.41560925300883 0.3716342294751 0.32800510806596 0.28745347461509 0.25286475063699 0.22409242394406 0.21348050531054 0.20148599368752 0.19753155224478 0.20092273917893 0.20163727977187 0.19988584137407 0.19936501862846 0.19998336757649 0.20048097272834 0.2012424685558 0.20088183750549 0.20217798273747 0.20053898126296 0.20457402268558 0.19687271997279 0.1982186884199 0.17816744028496 0.13504807847832 0.10572053164132 0.10080065805782 0.10011368617258 0.10001599075227 0.10000222512825 0.1000003060079 0.10000004144922 0.10000000528584 0.10000000034577 0.09999999994743 0.10000000000736 0.10000000001937 0.10000000000091 0.09999999999772 0.09999999999994 0.10000000000032 0.10000000000001 0.09999999999996 0.1 0.10000000000001 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 +D/prim.5.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/prim.5.00.000050.dat 0.90000000000003 0.90000000000021 0.89999999999984 0.89999999999846 0.89999999999968 0.90000000000698 0.8999999999963 0.89999999987754 0.89999999927839 0.89999999613161 0.89999998016782 0.89999990347326 0.89999955580582 0.89999807175239 0.89999211804571 0.89996971337206 0.89989057301423 0.89962266340976 0.89875937185321 0.89721451378962 0.89569576344932 0.89409724454747 0.89282534739203 0.89267048078362 0.89191820447405 0.89181173054307 0.89194269638648 0.89189203141838 0.89173682415904 0.89181555939766 0.87123992344183 0.74469269874215 0.57822338738247 0.53403502669811 0.52549541884376 0.52511355720982 0.52476682174754 0.52508556679923 0.52406766827378 0.52522660451095 0.52172484957343 0.5196817926684 0.51168520556758 0.50342746486862 0.5007075542277 0.50014836520833 0.50002986430167 0.50000581452997 0.50000109272022 0.50000019794708 0.5000000345683 0.50000000583243 0.50000000089274 0.5000000000354 0.49999999995264 0.50000000000334 0.50000000001023 0.50000000000068 0.49999999999861 0.49999999999986 0.5000000000002 0.50000000000003 0.49999999999997 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.50000000000002 0.5 0.49999999999984 0.4999999999999 0.50000000000102 0.50000000000098 0.49999999999337 0.49999999998836 0.50000000002576 0.50000000004719 0.49999999966738 0.49999999753262 0.49999998643896 0.4999999295751 0.49999965368992 0.49999839805695 0.49999305918635 0.49997194805044 0.49989476134537 0.49963554519564 0.49884633413187 0.4966192172558 0.49135725723943 0.48268695265186 0.47137146876533 0.45801699599217 0.4432773194076 0.42791173765113 0.41459214647321 0.40452021186106 0.40241957493463 0.39552852479524 0.39751671353384 0.40092254355064 0.40124572735511 0.39229287203476 0.35674959990075 0.30188363858305 0.2817624520376 0.27188723974915 0.2718106340415 0.26943014694062 0.27186190099959 0.26767536141058 0.26881286056148 0.25771233138349 0.22935902402275 0.20544699443153 0.20078288466565 0.20011160455324 0.20001570662159 0.20000218576139 0.2000003005973 0.20000004071641 0.20000000519238 0.20000000033966 0.19999999994836 0.20000000000723 0.20000000001903 0.2000000000009 0.19999999999776 0.19999999999994 0.20000000000032 0.20000000000001 0.19999999999996 0.2 0.20000000000001 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/prim.6.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/prim.6.00.000050.dat 0.09999999999997 0.09999999999979 0.10000000000016 0.10000000000155 0.10000000000032 0.09999999999302 0.1000000000037 0.10000000012246 0.10000000072161 0.10000000386839 0.10000001983218 0.10000009652674 0.10000044419418 0.10000192824761 0.10000788195429 0.10003028662794 0.10010942698577 0.10037733659024 0.10124062814679 0.10278548621038 0.10430423655068 0.10590275545253 0.10717465260797 0.10732951921638 0.10808179552595 0.10818826945693 0.10805730361352 0.10810796858162 0.10826317584096 0.10818444060234 0.12876007655817 0.25530730125785 0.42177661261753 0.46596497330188 0.47450458115624 0.47488644279017 0.47523317825246 0.47491443320077 0.47593233172622 0.47477339548905 0.47827515042657 0.4803182073316 0.48831479443242 0.49657253513138 0.4992924457723 0.49985163479167 0.49997013569833 0.49999418547003 0.49999890727978 0.49999980205292 0.4999999654317 0.49999999416757 0.49999999910726 0.4999999999646 0.50000000004736 0.49999999999666 0.49999999998977 0.49999999999932 0.50000000000139 0.50000000000014 0.4999999999998 0.49999999999997 0.50000000000003 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49999999999998 0.5 0.50000000000016 0.5000000000001 0.49999999999897 0.49999999999902 0.50000000000663 0.50000000001164 0.49999999997424 0.49999999995281 0.50000000033262 0.50000000246738 0.50000001356104 0.5000000704249 0.50000034631008 0.50000160194305 0.50000694081365 0.50002805194956 0.50010523865463 0.50036445480436 0.50115366586813 0.5033807827442 0.50864274276057 0.51731304734814 0.52862853123467 0.54198300400783 0.5567226805924 0.57208826234887 0.5854078535268 0.59547978813894 0.59758042506537 0.60447147520476 0.60248328646616 0.59907745644936 0.59875427264489 0.60770712796524 0.64325040009925 0.69811636141695 0.7182375479624 0.72811276025085 0.7281893659585 0.73056985305938 0.72813809900041 0.73232463858942 0.73118713943852 0.74228766861651 0.77064097597725 0.79455300556847 0.79921711533435 0.79988839544676 0.79998429337842 0.79999781423861 0.7999996994027 0.79999995928359 0.79999999480762 0.79999999966034 0.80000000005164 0.79999999999277 0.79999999998097 0.7999999999991 0.80000000000224 0.80000000000006 0.79999999999968 0.79999999999999 0.80000000000004 0.8 0.79999999999999 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 \ No newline at end of file diff --git a/tests/A6846AD4/golden-metadata.txt b/tests/A6846AD4/golden-metadata.txt new file mode 100644 index 000000000..5c3cf1001 --- /dev/null +++ b/tests/A6846AD4/golden-metadata.txt @@ -0,0 +1,191 @@ +This file was created on 2026-09-02 22:25:03.814560. + +mfc.sh: + + Invocation: test -j 2 --gpu mp --no-build --generate --only ED75D01D 471270BB A6846AD4 + Lock: mpi=Yes & gpu=Mp & debug=No & reldebug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No + Git: 636b5c7d63d4cae1255b57f650db0a4737ce921e on feature/mie-gruneisen-jwl (dirty) + +simulation: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : ON + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +pre_process: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : ON + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +syscheck: + + CMake Configuration: + + CMake v3.25.2 on k006-004-v7.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : ON + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc + CXX : /opt/ohpc/pub/compiler/gcc/12.2.0/bin/c++ + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +post_process: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : ON + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +CPU: + + CPU Info: + From lscpu + Architecture: x86_64 + CPU op-mode(s): 32-bit, 64-bit + Address sizes: 48 bits physical, 48 bits virtual + Byte Order: Little Endian + CPU(s): 16 + On-line CPU(s) list: 0-15 + Vendor ID: AuthenticAMD + Model name: AMD EPYC 7V13 64-Core Processor + CPU family: 25 + Model: 1 + Thread(s) per core: 1 + Core(s) per socket: 1 + Socket(s): 16 + Stepping: 1 + BogoMIPS: 4890.81 + Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean flushbyasid pausefilter pfthreshold v_vmsave_vmload vgif umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor arch_capabilities + Virtualization: AMD-V + Hypervisor vendor: KVM + Virtualization type: full + L1d cache: 1 MiB (16 instances) + L1i cache: 1 MiB (16 instances) + L2 cache: 8 MiB (16 instances) + L3 cache: 256 MiB (16 instances) + NUMA node(s): 1 + NUMA node0 CPU(s): 0-15 + Vulnerability Gather data sampling: Not affected + Vulnerability Indirect target selection: Not affected + Vulnerability Itlb multihit: Not affected + Vulnerability L1tf: Not affected + Vulnerability Mds: Not affected + Vulnerability Meltdown: Not affected + Vulnerability Mmio stale data: Not affected + Vulnerability Reg file data sampling: Not affected + Vulnerability Retbleed: Not affected + Vulnerability Spec rstack overflow: Vulnerable: Safe RET, no microcode + Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl + Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization + Vulnerability Spectre v2: Mitigation; Retpolines; IBPB conditional; IBRS_FW; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected + Vulnerability Srbds: Not affected + Vulnerability Tsa: Vulnerable: No microcode + Vulnerability Tsx async abort: Not affected + Vulnerability Vmscape: Not affected + diff --git a/tests/A6846AD4/golden.txt b/tests/A6846AD4/golden.txt new file mode 100644 index 000000000..49321a2be --- /dev/null +++ b/tests/A6846AD4/golden.txt @@ -0,0 +1,24 @@ +D/cons.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/cons.1.00.000050.dat 0.80999999998871 0.81000000000402 0.80999999999523 0.80999999996413 0.81000000000441 0.81000000016453 0.80999999981514 0.80999999677511 0.80999998141794 0.80999990100208 0.80999949546846 0.8099975588105 0.80998882699222 0.80995172941667 0.80980352403798 0.80924797225728 0.80730831776684 0.8007594253314 0.78233387677272 0.75588175253221 0.73483290471555 0.71614988442417 0.70241463686298 0.70205934354209 0.69503702803707 0.69342821894165 0.69501935538136 0.69512815632082 0.69361001154088 0.69408521778969 0.6707512794281 0.52516839918889 0.34219691096305 0.29772883960781 0.28876143447198 0.2884605431297 0.28807531149754 0.28815517098807 0.28701819240252 0.28859239274965 0.28413541042879 0.28340274424475 0.27460427844021 0.26210426197247 0.25296423960551 0.25065925679242 0.25014529379589 0.25003097586269 0.25000638261896 0.25000126864968 0.25000024292396 0.25000004482362 0.25000000799052 0.25000000131017 0.25000000008082 0.24999999993363 0.24999999999883 0.25000000001463 0.25000000000223 0.24999999999803 0.24999999999956 0.25000000000028 0.25000000000008 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999996 0.24999999999973 0.25000000000012 0.25000000000179 0.24999999999994 0.24999999998804 0.24999999998992 0.25000000005015 0.25000000002667 0.24999999932688 0.24999999570048 0.24999997733626 0.24999988618782 0.24999945721195 0.24999755548974 0.24998964114632 0.24995884616444 0.24984741610064 0.24947518055954 0.24834304184915 0.24518456060669 0.23771038458238 0.22630310173052 0.21339612764364 0.20406091387051 0.19532039231634 0.18998694302767 0.1879656297177 0.18508322428614 0.1840754282524 0.18577307269787 0.18484779825405 0.18423423535055 0.18478502416963 0.18343194454611 0.16929362227557 0.13572387472256 0.10967685324411 0.10377754352862 0.10206739439582 0.10185399320593 0.10166403227817 0.10147942942983 0.10131047914388 0.10173444008987 0.10094280213316 0.10206133926594 0.09879577564787 0.09690739495738 0.08962966823484 0.08266732699432 0.08051431750828 0.08010432426208 0.08002065485065 0.0800040168818 0.08000076512497 0.08000014247418 0.08000002590658 0.08000000456683 0.08000000067584 0.08000000002915 0.07999999998024 0.08000000000398 0.08000000000626 0.0800000000004 0.07999999999908 0.07999999999988 0.08000000000015 0.08000000000003 0.07999999999998 0.07999999999999 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/cons.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/cons.2.00.000050.dat 0.18999999999735 0.19000000000094 0.18999999999888 0.18999999999159 0.19000000000103 0.19000000003859 0.18999999995664 0.18999999924354 0.18999999564125 0.18999997677827 0.1899998816531 0.1899994273753 0.18999737917101 0.18998867727058 0.18995391304595 0.18982359843072 0.18936861774778 0.18783245779378 0.18351041553929 0.17730559626994 0.1723682122439 0.16798577477913 0.16476392965425 0.16468057091568 0.16303344600589 0.16265568956305 0.16303019460191 0.16305073240852 0.16270144745718 0.16281160689485 0.17013011454079 0.21497356268213 0.26681275625691 0.28701131283212 0.28768718567725 0.28817839050568 0.28830717536174 0.28822609458879 0.28713870024394 0.28857719208347 0.28417355725006 0.28340664506638 0.27460387202306 0.26210418586311 0.25296423976117 0.25065925678732 0.25014529379589 0.25003097586269 0.25000638261896 0.25000126864968 0.25000024292396 0.25000004482362 0.25000000799052 0.25000000131017 0.25000000008082 0.24999999993363 0.24999999999883 0.25000000001463 0.25000000000223 0.24999999999803 0.24999999999956 0.25000000000028 0.25000000000008 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999996 0.24999999999973 0.25000000000012 0.25000000000179 0.24999999999994 0.24999999998804 0.24999999998992 0.25000000005015 0.25000000002667 0.24999999932688 0.24999999570048 0.24999997733626 0.24999988618782 0.24999945721195 0.24999755548974 0.24998964114632 0.24995884616444 0.24984741610064 0.24947518055954 0.24834304184915 0.24518456060602 0.23771038466488 0.22630310005793 0.21339620634691 0.20406050231277 0.19532650055959 0.18997055155394 0.1880171991449 0.18494202219433 0.18426045859518 0.18556449988766 0.18482398305435 0.18442509204953 0.18461020240768 0.18142631549458 0.15861150695561 0.09815591755868 0.04573431949285 0.03195804958427 0.02912336957079 0.02878325492241 0.02861399174212 0.02854510399969 0.0284742628043 0.02860880963653 0.02837702767502 0.02870478049695 0.02778235117261 0.02725466992345 0.0252086218109 0.02325019063049 0.02264465181162 0.02252934119872 0.02250580917675 0.02250112974801 0.0225002151914 0.02250004007086 0.02250000728623 0.02250000128442 0.02250000019008 0.0225000000082 0.02249999999444 0.02250000000112 0.02250000000176 0.02250000000011 0.02249999999974 0.02249999999997 0.02250000000004 0.02250000000001 0.02249999999999 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/cons.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/cons.3.00.000050.dat 0.0 -9.94e-12 1.001e-11 6.605e-11 -7.75e-12 -2.9792e-10 3.5397e-10 5.74757e-09 3.402522e-08 1.8167784e-07 9.2596039e-07 4.48034622e-06 2.05058768e-05 8.858906243e-05 0.00036055040814 0.00137955028645 0.00493166149872 0.01684669184669 0.05000144199824 0.09352349591283 0.13457802036663 0.16017177238021 0.17251106843883 0.19282924791141 0.18964047716135 0.1917434592698 0.19579487615641 0.19436027362994 0.19216276928983 0.19335986867506 0.19099904809838 0.16745060648514 0.13669605232212 0.13165692959926 0.13116610456639 0.13101744337351 0.12947334031707 0.12897396657155 0.12949346531537 0.12375989906637 0.12642820095657 0.10424969204749 0.08349832740146 0.0388974720629 0.00929918003281 0.00205646406425 0.00045263621532 9.647084119e-05 1.987662753e-05 3.95075105e-06 7.5650166e-07 1.3958994e-07 2.491564e-08 4.15483e-09 2.4574e-10 -2.0856e-10 -3.89e-12 4.56e-11 6.93e-12 -6.14e-12 -1.36e-12 8.8e-13 2.6e-13 -1.1e-13 -4e-14 1e-14 1e-14 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 2e-14 -2e-14 -1.2e-13 1.2e-13 8.5e-13 -3.8e-13 -5.59e-12 1.8e-13 3.725e-11 3.124e-11 -1.5628e-10 -9.457e-11 2.15488e-09 1.342214e-08 7.060683e-08 3.5443598e-07 1.69030241e-06 7.61246457e-06 3.225804637e-05 0.00012814689263 0.00047501014823 0.00163249361478 0.00514117019023 0.01484969091201 0.03706485282088 0.06975677777979 0.10235570915869 0.13064120043485 0.14308901390357 0.15613723560419 0.16862906493687 0.16498236245308 0.16825280754807 0.17108839977785 0.16870853399508 0.16763936744753 0.16902838390221 0.1674299785145 0.14994581182637 0.10646471753827 0.07051250354644 0.06205508752626 0.06058140801432 0.06032165666191 0.05947203046611 0.05899307934088 0.05916236971218 0.05847081170925 0.05984762355369 0.0561708829033 0.05465774417312 0.04359544860831 0.02469829578075 0.00644967603782 0.00122126740972 0.00024683519949 4.883367963e-05 9.49555628e-06 1.80863434e-06 3.3679341e-07 6.128884e-08 1.090297e-08 1.81759e-09 6.825e-11 -5.307e-11 8.86e-12 1.489e-11 9.3e-13 -2.17e-12 -2.7e-13 3.5e-13 7e-14 -5e-14 -1e-14 1e-14 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 -0.0 0.0 0.0 +D/cons.4.00.000000.dat 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 2.5 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 +D/cons.4.00.000050.dat 2.49999999995123 2.50000000001736 2.49999999997937 2.499999999845 2.50000000001905 2.50000000071093 2.49999999920122 2.49999998606527 2.49999991970716 2.49999957223126 2.49999781992669 2.49998945167825 2.49995172213944 2.49979143370112 2.49915119544518 2.49675285672528 2.48839858170224 2.46041492942665 2.38331724228804 2.27630524710101 2.19554929540433 2.12524215896009 2.0738035741938 2.07685921311746 2.04912756836397 2.04322331502971 2.05138614680461 2.04785573157922 2.04718543777935 2.0482722555776 2.05234243203676 2.08840650846582 2.16323761608239 2.16906680383295 2.17718935317326 2.17552251251586 2.17825807972824 2.17590779026632 2.16616166128837 2.17750363478677 2.1354146786191 2.12281073816574 2.03360971262453 1.90902485812864 1.82188235301559 1.80050641936285 1.79577848372874 1.79472876013775 1.79450302383195 1.79445608787473 1.7944466739483 1.79444485582574 1.79444451777962 1.79444445646891 1.79444444518622 1.79444444383527 1.79444444443368 1.79444444457876 1.79444444446489 1.79444444442636 1.79444444444044 1.79444444444703 1.7944444444452 1.79444444444411 1.79444444444432 1.79444444444449 1.79444444444446 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444444 1.79444444444445 1.79444444444445 1.79444444444443 1.7944444444444 1.79444444444451 1.79444444444479 1.7944444444441 1.79444444444194 1.79444444444557 1.7944444444609 1.79444444444391 1.79444444433468 1.79444444435196 1.79444444490472 1.79444444468923 1.79444443826666 1.79444440498436 1.79444423644166 1.79444339990191 1.79443946286427 1.79442200942756 1.79434937588646 1.79406678495725 1.79304461264411 1.78963406031648 1.77929790347989 1.75075094895182 1.68476375074385 1.58821375391779 1.48464001555593 1.41557655124407 1.35006654561488 1.31295242612592 1.30493834831349 1.27553398330751 1.28036280659909 1.28292288671433 1.27985649858138 1.27717762404129 1.27755677304824 1.26364020321158 1.18574941700837 0.96478004983766 0.78712848759005 0.73644627775421 0.72947187916884 0.7286599688487 0.7276811893064 0.72481956959847 0.72358911686263 0.72587385661699 0.71987513721717 0.72740601099551 0.69817035496179 0.67717114549128 0.60951601131881 0.54926722194352 0.53183442907785 0.52859728666688 0.52793989465871 0.52780930042835 0.52778378193063 0.527778895806 0.52777798107252 0.52777781361472 0.52777778308124 0.52777777800653 0.52777777762269 0.52777777780899 0.52777777782688 0.52777777778092 0.52777777777056 0.52777777777688 0.52777777777893 0.52777777777801 0.52777777777761 0.52777777777773 0.5277777777778 0.52777777777779 0.52777777777777 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 0.52777777777778 +D/cons.5.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/cons.5.00.000050.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.87548479251571 0.72967224236376 0.55537713832821 0.50710264386236 0.50078553204384 0.50007097186444 0.50000534443764 0.50000033791608 0.50000001823989 0.50000000088384 0.49999999991387 0.49999999999592 0.50000000000424 0.49999999999994 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49920834538201 0.49127332794032 0.44767194141776 0.32874918238154 0.23234903107108 0.20584022348196 0.20095186797927 0.20013341159197 0.20001627616279 0.20000174730049 0.20000016722647 0.20000001424383 0.20000000109008 0.19999999986005 0.19999999998423 0.2000000000108 0.20000000000013 0.19999999999994 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/cons.6.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/cons.6.00.000050.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.12451520748429 0.27032775763624 0.44462286167179 0.49289735613764 0.49921446795616 0.49992902813556 0.49999465556236 0.49999966208392 0.49999998176011 0.49999999911617 0.50000000008613 0.50000000000408 0.49999999999576 0.50000000000007 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.50079165461799 0.50872667205968 0.55232805858224 0.67125081761846 0.76765096892893 0.79415977651804 0.79904813202073 0.79986658840803 0.79998372383721 0.79999825269951 0.79999983277353 0.79999998575617 0.79999999890992 0.80000000013995 0.80000000001577 0.7999999999892 0.79999999999987 0.80000000000006 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/prim.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/prim.1.00.000050.dat 0.80999999998871 0.81000000000402 0.80999999999523 0.80999999996413 0.81000000000441 0.81000000016453 0.80999999981514 0.80999999677511 0.80999998141794 0.80999990100208 0.80999949546846 0.8099975588105 0.80998882699222 0.80995172941667 0.80980352403798 0.80924797225728 0.80730831776684 0.8007594253314 0.78233387677272 0.75588175253221 0.73483290471555 0.71614988442417 0.70241463686298 0.70205934354209 0.69503702803707 0.69342821894165 0.69501935538136 0.69512815632082 0.69361001154088 0.69408521778969 0.6707512794281 0.52516839918889 0.34219691096305 0.29772883960781 0.28876143447198 0.2884605431297 0.28807531149754 0.28815517098807 0.28701819240252 0.28859239274965 0.28413541042879 0.28340274424475 0.27460427844021 0.26210426197247 0.25296423960551 0.25065925679242 0.25014529379589 0.25003097586269 0.25000638261896 0.25000126864968 0.25000024292396 0.25000004482362 0.25000000799052 0.25000000131017 0.25000000008082 0.24999999993363 0.24999999999883 0.25000000001463 0.25000000000223 0.24999999999803 0.24999999999956 0.25000000000028 0.25000000000008 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999996 0.24999999999973 0.25000000000012 0.25000000000179 0.24999999999994 0.24999999998804 0.24999999998992 0.25000000005015 0.25000000002667 0.24999999932688 0.24999999570048 0.24999997733626 0.24999988618782 0.24999945721195 0.24999755548974 0.24998964114632 0.24995884616444 0.24984741610064 0.24947518055954 0.24834304184915 0.24518456060669 0.23771038458238 0.22630310173052 0.21339612764364 0.20406091387051 0.19532039231634 0.18998694302767 0.1879656297177 0.18508322428614 0.1840754282524 0.18577307269787 0.18484779825405 0.18423423535055 0.18478502416963 0.18343194454611 0.16929362227557 0.13572387472256 0.10967685324411 0.10377754352862 0.10206739439582 0.10185399320593 0.10166403227817 0.10147942942983 0.10131047914388 0.10173444008987 0.10094280213316 0.10206133926594 0.09879577564787 0.09690739495738 0.08962966823484 0.08266732699432 0.08051431750828 0.08010432426208 0.08002065485065 0.0800040168818 0.08000076512497 0.08000014247418 0.08000002590658 0.08000000456683 0.08000000067584 0.08000000002915 0.07999999998024 0.08000000000398 0.08000000000626 0.0800000000004 0.07999999999908 0.07999999999988 0.08000000000015 0.08000000000003 0.07999999999998 0.07999999999999 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/prim.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/prim.2.00.000050.dat 0.18999999999735 0.19000000000094 0.18999999999888 0.18999999999159 0.19000000000103 0.19000000003859 0.18999999995664 0.18999999924354 0.18999999564125 0.18999997677827 0.1899998816531 0.1899994273753 0.18999737917101 0.18998867727058 0.18995391304595 0.18982359843072 0.18936861774778 0.18783245779378 0.18351041553929 0.17730559626994 0.1723682122439 0.16798577477913 0.16476392965425 0.16468057091568 0.16303344600589 0.16265568956305 0.16303019460191 0.16305073240852 0.16270144745718 0.16281160689485 0.17013011454079 0.21497356268213 0.26681275625691 0.28701131283212 0.28768718567725 0.28817839050568 0.28830717536174 0.28822609458879 0.28713870024394 0.28857719208347 0.28417355725006 0.28340664506638 0.27460387202306 0.26210418586311 0.25296423976117 0.25065925678732 0.25014529379589 0.25003097586269 0.25000638261896 0.25000126864968 0.25000024292396 0.25000004482362 0.25000000799052 0.25000000131017 0.25000000008082 0.24999999993363 0.24999999999883 0.25000000001463 0.25000000000223 0.24999999999803 0.24999999999956 0.25000000000028 0.25000000000008 0.24999999999996 0.24999999999999 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999996 0.24999999999973 0.25000000000012 0.25000000000179 0.24999999999994 0.24999999998804 0.24999999998992 0.25000000005015 0.25000000002667 0.24999999932688 0.24999999570048 0.24999997733626 0.24999988618782 0.24999945721195 0.24999755548974 0.24998964114632 0.24995884616444 0.24984741610064 0.24947518055954 0.24834304184915 0.24518456060602 0.23771038466488 0.22630310005793 0.21339620634691 0.20406050231277 0.19532650055959 0.18997055155394 0.1880171991449 0.18494202219433 0.18426045859518 0.18556449988766 0.18482398305435 0.18442509204953 0.18461020240768 0.18142631549458 0.15861150695561 0.09815591755868 0.04573431949285 0.03195804958427 0.02912336957079 0.02878325492241 0.02861399174212 0.02854510399969 0.0284742628043 0.02860880963653 0.02837702767502 0.02870478049695 0.02778235117261 0.02725466992345 0.0252086218109 0.02325019063049 0.02264465181162 0.02252934119872 0.02250580917675 0.02250112974801 0.0225002151914 0.02250004007086 0.02250000728623 0.02250000128442 0.02250000019008 0.0225000000082 0.02249999999444 0.02250000000112 0.02250000000176 0.02250000000011 0.02249999999974 0.02249999999997 0.02250000000004 0.02250000000001 0.02249999999999 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/prim.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/prim.3.00.000050.dat 0.0 -9.94e-12 1.001e-11 6.605e-11 -7.75e-12 -2.9792e-10 3.5397e-10 5.74757e-09 3.402522e-08 1.8167786e-07 9.2596096e-07 4.48035972e-06 2.050615966e-05 8.859434206e-05 0.00036063788551 0.00138083229163 0.00494810436862 0.01704109869224 0.05176967177447 0.10021942114075 0.14834419606721 0.18116198652653 0.19893373187448 0.22247648307745 0.22100804409202 0.22397741315418 0.22818597849066 0.22647990550981 0.22440756487677 0.22565128391769 0.22714148448081 0.22624120116341 0.22445629302752 0.22515459054744 0.22754170967126 0.22720880559958 0.22463094085765 0.22376502199889 0.22553672519457 0.21442553855667 0.22246385003027 0.18392372111935 0.15203402813856 0.07420229914933 0.01838042413514 0.00410211075105 0.00090474661436 0.00019291777919 3.975224016e-05 7.901462e-06 1.51300186e-06 2.7917983e-07 4.983128e-08 8.30966e-09 4.9149e-10 -4.1712e-10 -7.78e-12 9.12e-11 1.387e-11 -1.227e-11 -2.72e-12 1.75e-12 5.1e-13 -2.3e-13 -8e-14 3e-14 1e-14 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 1e-14 3e-14 -5e-14 -2.3e-13 2.3e-13 1.7e-12 -7.6e-13 -1.117e-11 3.6e-13 7.45e-11 6.249e-11 -3.1256e-10 -1.8914e-10 4.30976e-09 2.684429e-08 1.4121367e-07 7.0887229e-07 3.38061217e-06 1.522507801e-05 6.45187661e-05 0.0002563359821 0.00095060048178 0.0032718557636 0.01035094470929 0.03028267945438 0.07796220783448 0.15412245237505 0.23982555685022 0.32010376141639 0.36628734673953 0.41093342763544 0.44850203783773 0.44586785367302 0.45679178585629 0.4607354935473 0.45637384979171 0.45472704740657 0.45758139721612 0.45889047022211 0.4572841302542 0.45521127113985 0.45371579343132 0.45717623582084 0.46178104450814 0.46174929069734 0.45650086354435 0.45370729496105 0.45584996220748 0.44859102279547 0.46278767643344 0.42955226480033 0.43181034153431 0.35111729697918 0.21507021543869 0.06089338366734 0.01183869340466 0.00240501202394 0.00047630316806 9.263492214e-05 1.764504436e-05 3.28578353e-06 5.9793975e-07 1.0637039e-07 1.773256e-08 6.659e-10 -5.1774e-10 8.643e-11 1.4527e-10 9.05e-12 -2.121e-11 -2.65e-12 3.4e-12 6.9e-13 -4.8e-13 -1.4e-13 7e-14 2e-14 -1e-14 -0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 -0.0 0.0 0.0 +D/prim.4.00.000000.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 +D/prim.4.00.000050.dat 0.9999999999692 1.00000000001096 0.99999999998697 0.99999999990212 1.00000000001203 1.0000000004489 0.99999999949563 0.99999999120121 0.99999994930081 0.99999972989458 0.99999862343891 0.99999333947632 0.99996951573307 0.9998683007521 0.99946396667887 0.99794859432095 0.99266108104584 0.97484689636321 0.92495407083627 0.85380612052966 0.7976647647322 0.74826856437013 0.71221448392939 0.71134619832648 0.69304231158453 0.68877300041619 0.6933739520266 0.69220855153039 0.69051478406059 0.69135015017854 0.69158953231122 0.69097983815469 0.69157241682048 0.69200276168445 0.69132316910697 0.69104670771917 0.69190326431733 0.69110430851344 0.6858359234196 0.69270753776087 0.67044900239644 0.66635684320214 0.62183650867798 0.55944592291062 0.51442828918191 0.50319936763442 0.5007046482312 0.50015020481142 0.50003094888565 0.50000615155255 0.50000117791174 0.50000021734478 0.50000003874512 0.50000000635288 0.5000000003919 0.49999999967816 0.49999999999431 0.50000000007096 0.5000000000108 0.49999999999044 0.49999999999789 0.50000000000137 0.5000000000004 0.49999999999982 0.49999999999993 0.50000000000002 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49999999999999 0.49999999999998 0.50000000000003 0.50000000000018 0.49999999999982 0.49999999999868 0.50000000000059 0.5000000000087 0.49999999999972 0.49999999994201 0.49999999995114 0.50000000024318 0.50000000012933 0.49999999673609 0.49999997915208 0.49999989010603 0.49999944813747 0.49999736808296 0.49998814687755 0.4999497716852 0.49980045880967 0.49926025669749 0.49745653500202 0.49197799170491 0.47675084062861 0.44100822852182 0.38719825181189 0.32746201202618 0.28504510462101 0.24603724814783 0.22228804946476 0.21429842376419 0.19939324099447 0.19941997175649 0.20214765256055 0.20014459168254 0.1984675022006 0.19990803510248 0.20109921961222 0.19988472147928 0.19873164887287 0.19955877467624 0.20025870634696 0.20053956586403 0.2008255522636 0.20047169776999 0.19920181872341 0.19847207680634 0.20003196318441 0.19640901789271 0.20144870577267 0.18601675508783 0.17704289546898 0.14329948046627 0.11176939032515 0.10224808525196 0.10045518016591 0.10009008644388 0.10001751838858 0.10000333680684 0.10000062134616 0.10000011298149 0.10000001991646 0.10000000294741 0.10000000012713 0.09999999991381 0.10000000001735 0.10000000002729 0.10000000000175 0.09999999999599 0.0999999999995 0.10000000000064 0.10000000000013 0.09999999999991 0.09999999999997 0.10000000000001 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 +D/prim.5.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/prim.5.00.000050.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.87548479251571 0.72967224236376 0.55537713832821 0.50710264386236 0.50078553204384 0.50007097186444 0.50000534443764 0.50000033791608 0.50000001823989 0.50000000088384 0.49999999991387 0.49999999999592 0.50000000000424 0.49999999999994 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49920834538201 0.49127332794032 0.44767194141776 0.32874918238154 0.23234903107108 0.20584022348196 0.20095186797927 0.20013341159197 0.20001627616279 0.20000174730049 0.20000016722647 0.20000001424383 0.20000000109008 0.19999999986005 0.19999999998423 0.2000000000108 0.20000000000013 0.19999999999994 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/prim.6.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/prim.6.00.000050.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.12451520748429 0.27032775763624 0.44462286167179 0.49289735613764 0.49921446795616 0.49992902813556 0.49999465556236 0.49999966208392 0.49999998176011 0.49999999911617 0.50000000008613 0.50000000000408 0.49999999999576 0.50000000000007 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.50079165461799 0.50872667205968 0.55232805858224 0.67125081761846 0.76765096892893 0.79415977651804 0.79904813202073 0.79986658840803 0.79998372383721 0.79999825269951 0.79999983277353 0.79999998575617 0.79999999890992 0.80000000013995 0.80000000001577 0.7999999999892 0.79999999999987 0.80000000000006 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 \ No newline at end of file diff --git a/tests/ED75D01D/golden-metadata.txt b/tests/ED75D01D/golden-metadata.txt new file mode 100644 index 000000000..d8a3b3e45 --- /dev/null +++ b/tests/ED75D01D/golden-metadata.txt @@ -0,0 +1,191 @@ +This file was created on 2026-09-02 22:24:59.578965. + +mfc.sh: + + Invocation: test -j 2 --gpu mp --no-build --generate --only ED75D01D 471270BB A6846AD4 + Lock: mpi=Yes & gpu=Mp & debug=No & reldebug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No + Git: 636b5c7d63d4cae1255b57f650db0a4737ce921e on feature/mie-gruneisen-jwl (dirty) + +simulation: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : ON + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +pre_process: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : ON + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +syscheck: + + CMake Configuration: + + CMake v3.25.2 on k006-004-v7.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : ON + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc + CXX : /opt/ohpc/pub/compiler/gcc/12.2.0/bin/c++ + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +post_process: + + CMake Configuration: + + CMake v3.25.2 on k006-007-v8.hpcfund + + C : GNU v12.2.0 (/opt/ohpc/pub/compiler/gcc/12.2.0/bin/cc) + Fortran : LLVMFlang v23.0.0 (/work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : ON + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : ON + + Fypp : /home1/sbryngelson/work/mfc-eos/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : /work1/spencerbryngelson/sbryngelson/software/therock-afar-23.2.1-gfx90a-7.13.0-7357b5084b/bin/amdflang + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +CPU: + + CPU Info: + From lscpu + Architecture: x86_64 + CPU op-mode(s): 32-bit, 64-bit + Address sizes: 48 bits physical, 48 bits virtual + Byte Order: Little Endian + CPU(s): 16 + On-line CPU(s) list: 0-15 + Vendor ID: AuthenticAMD + Model name: AMD EPYC 7V13 64-Core Processor + CPU family: 25 + Model: 1 + Thread(s) per core: 1 + Core(s) per socket: 1 + Socket(s): 16 + Stepping: 1 + BogoMIPS: 4890.81 + Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves clzero xsaveerptr wbnoinvd arat npt lbrv nrip_save tsc_scale vmcb_clean flushbyasid pausefilter pfthreshold v_vmsave_vmload vgif umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor arch_capabilities + Virtualization: AMD-V + Hypervisor vendor: KVM + Virtualization type: full + L1d cache: 1 MiB (16 instances) + L1i cache: 1 MiB (16 instances) + L2 cache: 8 MiB (16 instances) + L3 cache: 256 MiB (16 instances) + NUMA node(s): 1 + NUMA node0 CPU(s): 0-15 + Vulnerability Gather data sampling: Not affected + Vulnerability Indirect target selection: Not affected + Vulnerability Itlb multihit: Not affected + Vulnerability L1tf: Not affected + Vulnerability Mds: Not affected + Vulnerability Meltdown: Not affected + Vulnerability Mmio stale data: Not affected + Vulnerability Reg file data sampling: Not affected + Vulnerability Retbleed: Not affected + Vulnerability Spec rstack overflow: Vulnerable: Safe RET, no microcode + Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl + Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization + Vulnerability Spectre v2: Mitigation; Retpolines; IBPB conditional; IBRS_FW; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected + Vulnerability Srbds: Not affected + Vulnerability Tsa: Vulnerable: No microcode + Vulnerability Tsx async abort: Not affected + Vulnerability Vmscape: Not affected + diff --git a/tests/ED75D01D/golden.txt b/tests/ED75D01D/golden.txt new file mode 100644 index 000000000..b0509697d --- /dev/null +++ b/tests/ED75D01D/golden.txt @@ -0,0 +1,24 @@ +D/cons.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/cons.1.00.000050.dat 0.80999999999995 0.80999999999936 0.81000000000017 0.81000000000455 0.80999999999971 0.80999999996613 0.80999999997678 0.8100000001596 0.80999999999746 0.80999999728772 0.80999998267528 0.80999990086232 0.80999946087628 0.80999723917234 0.80998675788732 0.80994073632662 0.80975349479536 0.80905173426384 0.80664292667073 0.7990723310624 0.77740926620341 0.74187935082499 0.70732197692451 0.67593459943416 0.65342217970207 0.64969463163002 0.63709740235767 0.63883341814562 0.63954092201582 0.63925671471103 0.6306323904962 0.56806188506353 0.40472192029916 0.3367896888994 0.31617812662053 0.31735814852815 0.31284849105831 0.3178534712821 0.3075729589345 0.30271613412274 0.28032717728236 0.25822433045812 0.25152214587626 0.25029250182306 0.2500540070026 0.25000962591281 0.25000165049393 0.25000027169165 0.25000004293391 0.25000000652653 0.25000000082674 0.24999999995683 0.24999999995273 0.25000000001724 0.25000000000983 0.24999999999841 0.24999999999873 0.25000000000021 0.25000000000017 0.24999999999998 0.24999999999998 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999995 0.24999999999969 0.25000000000033 0.25000000000227 0.24999999999788 0.24999999998178 0.25000000000018 0.25000000008733 0.24999999987192 0.2499999980347 0.24999998746011 0.24999992758006 0.24999960564331 0.2499979913993 0.24999048520909 0.24995829523947 0.24983187319432 0.2493812455645 0.24794732406827 0.2438595493172 0.23429405991013 0.21951112693208 0.20239476771213 0.18494439647963 0.16813486618484 0.15386731981518 0.14247120788825 0.13668400683697 0.13453609029118 0.13552989157557 0.13544391837749 0.13411128964854 0.13310214671114 0.13282123727099 0.13366412603306 0.13370182790927 0.13444875724375 0.13378848286342 0.13483195844577 0.13293817918111 0.12973180975394 0.11025675116413 0.08684930561168 0.08085277880975 0.08010797974737 0.08001351792934 0.08000168103132 0.08000020750865 0.08000002536476 0.08000000295207 0.08000000017665 0.07999999997453 0.08000000000541 0.08000000000907 0.07999999999998 0.079999999999 0.08000000000005 0.08000000000013 0.07999999999999 0.07999999999998 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/cons.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/cons.2.00.000050.dat 0.18999999999999 0.18999999999985 0.19000000000004 0.19000000000107 0.18999999999993 0.18999999999206 0.18999999999455 0.19000000003744 0.1899999999994 0.18999999936379 0.18999999593618 0.18999997674548 0.18999987353888 0.18999935239845 0.18999689382542 0.18998609864452 0.1899421777915 0.18977756729646 0.18921253835486 0.18743671963149 0.18235525999918 0.17402107998866 0.16591506197616 0.15855205951311 0.1532740333771 0.15238908315611 0.14945455456835 0.14977308463668 0.15012173650262 0.14957045774671 0.15346180767506 0.18854446864088 0.25695714997478 0.30892079446563 0.31221404157395 0.31599213108753 0.31326362960481 0.31793083736234 0.30777280910913 0.30274600040455 0.28031441584366 0.25822405693235 0.25152214516433 0.25029250182265 0.2500540070026 0.25000962591281 0.25000165049393 0.25000027169165 0.25000004293391 0.25000000652653 0.25000000082674 0.24999999995683 0.24999999995273 0.25000000001724 0.25000000000983 0.24999999999841 0.24999999999873 0.25000000000021 0.25000000000017 0.24999999999998 0.24999999999998 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999995 0.24999999999969 0.25000000000033 0.25000000000227 0.24999999999788 0.24999999998178 0.25000000000018 0.25000000008733 0.24999999987192 0.2499999980347 0.24999998746011 0.24999992758006 0.24999960564331 0.2499979913993 0.24999048520909 0.24995829523947 0.24983187319432 0.2493812455645 0.24794732406824 0.24385954941137 0.23429405333031 0.21951131825406 0.20239170509031 0.18497173048794 0.1679370654508 0.15441303502999 0.13973104438488 0.13871482870524 0.13575737943132 0.1340383522975 0.13566137931081 0.13677460824976 0.13172719834474 0.10362620229392 0.06682291722705 0.04351599351017 0.0394419473769 0.03752795886935 0.0377892928382 0.03715798307609 0.0364527401901 0.03107175510963 0.02442866680272 0.02273985120669 0.02253036930572 0.02250380191763 0.02250047279006 0.02250005836181 0.02250000713384 0.02250000083027 0.02250000004968 0.02249999999284 0.02250000000152 0.02250000000255 0.02249999999999 0.02249999999972 0.02250000000001 0.02250000000004 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/cons.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/cons.3.00.000050.dat 8e-14 9.8e-13 -2.6e-13 -7.03e-12 4.5e-13 5.23e-11 3.612e-11 -2.4631e-10 2.048e-11 4.08834e-09 2.672489e-08 1.5311122e-07 8.3275713e-07 4.26471308e-06 2.045581117e-05 9.154740479e-05 0.00038074739325 0.00146395828357 0.00517354011218 0.01674789234475 0.04913008307822 0.0977751401249 0.14749270182592 0.18116566323888 0.20036821792 0.22587754797924 0.21841858443524 0.2226550037645 0.22622254396332 0.22607697045948 0.22310664721268 0.21351755124636 0.18831636435373 0.18580362962367 0.17824619549199 0.17843890955668 0.1823977335208 0.17341237810379 0.1696954484939 0.1359365541873 0.07777353484734 0.01984225013731 0.00360260300716 0.00068973725397 0.00012725782136 2.267862369e-05 3.88846171e-06 6.401146e-07 1.012084e-07 1.542661e-08 2.09922e-09 -1.299e-10 -1.1069e-10 4.033e-11 2.316e-11 -3.74e-12 -3e-12 4.9e-13 4.1e-13 -6e-14 -5e-14 1e-14 1e-14 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 1e-14 -2e-14 -9e-14 1.3e-13 7.2e-13 -7.8e-13 -5.35e-12 4.98e-12 4.298e-11 -1.02e-12 -2.0992e-10 2.8796e-10 4.8131e-09 2.962276e-08 1.7061484e-07 9.2906995e-07 4.73193857e-06 2.241456779e-05 9.82379893e-05 0.00039591651491 0.00145560650612 0.00481315571835 0.01426795299194 0.03556804507477 0.06612390548987 0.09853668015925 0.12738925159853 0.15005703996237 0.16965996672479 0.17401648698188 0.18538242074538 0.18603328526623 0.18199783911032 0.18243146221754 0.18346486426855 0.17946637025274 0.1607302179972 0.13589511647853 0.12049818873938 0.11753354196648 0.11733203065176 0.11595248976942 0.11516969204019 0.10449725370649 0.05846495240543 0.01124750050365 0.00130552383368 0.00016340118362 2.042583774e-05 2.53957764e-06 3.134641e-07 3.84548e-08 4.71369e-09 4.0601e-10 -7.097e-11 9.45e-12 1.357e-11 -5e-14 -1.51e-12 8e-14 2e-13 -1e-14 -2e-14 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 +D/cons.4.00.000000.dat 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 2.82916258853357 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 +D/cons.4.00.000050.dat 2.82916258853334 2.82916258853057 2.82916258853436 2.82916258855507 2.82916258853221 2.82916258837346 2.82916258842382 2.82916258928807 2.82916258852155 2.82916257571165 2.82916250663334 2.82916211987397 2.82916003990206 2.82914953713001 2.82909998886181 2.82888243889993 2.82799745531233 2.82468244462071 2.81332449777138 2.77783677995901 2.67788303851726 2.51841136484389 2.36957055868344 2.23771688410008 2.14553386227403 2.13514397503149 2.08315272319736 2.08208489385674 2.09714654303876 2.08814191657805 2.07526632339184 2.05306615614834 2.0120356273973 1.97057909566758 1.97329467664597 1.97527628301455 1.96211852860029 1.9898922112361 1.90737131017604 1.85504153313252 1.6616100632249 1.4808961997766 1.42844983067426 1.41898531014275 1.41715540347723 1.41681508743003 1.41675393861787 1.41674336734194 1.41674161346309 1.41674133432891 1.41674129062883 1.41674128395921 1.41674128392784 1.41674128442239 1.4167412843656 1.41674128427806 1.41674128428047 1.41674128429183 1.41674128429156 1.41674128429004 1.41674128429006 1.41674128429025 1.41674128429025 1.41674128429022 1.41674128429022 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429023 1.41674128429022 1.41674128429019 1.41674128429028 1.41674128429052 1.41674128428981 1.41674128428787 1.41674128429278 1.41674128430763 1.41674128427398 1.41674128415055 1.41674128429164 1.41674128495977 1.41674128330822 1.41674126922238 1.41674118814732 1.41674072904916 1.41673826077379 1.41672588448257 1.41666833609573 1.41642156069103 1.41545265662135 1.4120024378263 1.40105748075019 1.37013173650495 1.29923421217629 1.19352604387372 1.07710506732858 0.96505246718694 0.86231684724849 0.78365875131148 0.71264260812671 0.69285296134729 0.68505340332643 0.67750768342019 0.67934842446896 0.6812712840448 0.67750947636017 0.65227469952852 0.61552623752163 0.58759510590255 0.58197404270979 0.57762423940633 0.58226616636634 0.57186578387273 0.5471773988336 0.42075423818278 0.28964499707644 0.2608939140955 0.25753731742575 0.25711522349003 0.25706238550586 0.25705580878039 0.25705499583649 0.25705489580448 0.25705488341725 0.25705488251517 0.25705488265299 0.2570548826693 0.25705488262874 0.25705488262437 0.25705488262907 0.25705488262943 0.2570548826288 0.25705488262876 0.25705488262884 0.25705488262885 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 0.25705488262884 +D/cons.5.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/cons.5.00.000050.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.88893588044701 0.80514943955838 0.61764175099413 0.51896215478586 0.50257739236939 0.50028025599396 0.50002489588765 0.5000017465164 0.50000009039584 0.50000000330272 0.50000000004883 0.49999999999422 0.50000000000031 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49995110333095 0.49926519007664 0.49456714862561 0.47249495846435 0.39091192465435 0.27726865918084 0.21684958955492 0.20340795087403 0.20058522019407 0.2000846554137 0.2000097615346 0.20000082955266 0.20000003756076 0.20000000043915 0.19999999999805 0.20000000000003 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/cons.6.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/cons.6.00.000050.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.11106411955299 0.19485056044162 0.38235824900587 0.48103784521414 0.49742260763061 0.49971974400604 0.49997510411235 0.49999825348361 0.49999990960416 0.49999999669728 0.49999999995117 0.50000000000579 0.49999999999969 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.50004889666905 0.50073480992336 0.50543285137439 0.52750504153565 0.60908807534565 0.72273134081916 0.78315041044508 0.79659204912597 0.79941477980593 0.7999153445863 0.7999902384654 0.79999917044734 0.79999996243924 0.79999999956085 0.80000000000195 0.79999999999997 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/prim.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/prim.1.00.000050.dat 0.80999999999995 0.80999999999936 0.81000000000017 0.81000000000455 0.80999999999971 0.80999999996613 0.80999999997678 0.8100000001596 0.80999999999746 0.80999999728772 0.80999998267528 0.80999990086232 0.80999946087628 0.80999723917234 0.80998675788732 0.80994073632662 0.80975349479536 0.80905173426384 0.80664292667073 0.7990723310624 0.77740926620341 0.74187935082499 0.70732197692451 0.67593459943416 0.65342217970207 0.64969463163002 0.63709740235767 0.63883341814562 0.63954092201582 0.63925671471103 0.6306323904962 0.56806188506353 0.40472192029916 0.3367896888994 0.31617812662053 0.31735814852815 0.31284849105831 0.3178534712821 0.3075729589345 0.30271613412274 0.28032717728236 0.25822433045812 0.25152214587626 0.25029250182306 0.2500540070026 0.25000962591281 0.25000165049393 0.25000027169165 0.25000004293391 0.25000000652653 0.25000000082674 0.24999999995683 0.24999999995273 0.25000000001724 0.25000000000983 0.24999999999841 0.24999999999873 0.25000000000021 0.25000000000017 0.24999999999998 0.24999999999998 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999995 0.24999999999969 0.25000000000033 0.25000000000227 0.24999999999788 0.24999999998178 0.25000000000018 0.25000000008733 0.24999999987192 0.2499999980347 0.24999998746011 0.24999992758006 0.24999960564331 0.2499979913993 0.24999048520909 0.24995829523947 0.24983187319432 0.2493812455645 0.24794732406827 0.2438595493172 0.23429405991013 0.21951112693208 0.20239476771213 0.18494439647963 0.16813486618484 0.15386731981518 0.14247120788825 0.13668400683697 0.13453609029118 0.13552989157557 0.13544391837749 0.13411128964854 0.13310214671114 0.13282123727099 0.13366412603306 0.13370182790927 0.13444875724375 0.13378848286342 0.13483195844577 0.13293817918111 0.12973180975394 0.11025675116413 0.08684930561168 0.08085277880975 0.08010797974737 0.08001351792934 0.08000168103132 0.08000020750865 0.08000002536476 0.08000000295207 0.08000000017665 0.07999999997453 0.08000000000541 0.08000000000907 0.07999999999998 0.079999999999 0.08000000000005 0.08000000000013 0.07999999999999 0.07999999999998 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 +D/prim.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/prim.2.00.000050.dat 0.18999999999999 0.18999999999985 0.19000000000004 0.19000000000107 0.18999999999993 0.18999999999206 0.18999999999455 0.19000000003744 0.1899999999994 0.18999999936379 0.18999999593618 0.18999997674548 0.18999987353888 0.18999935239845 0.18999689382542 0.18998609864452 0.1899421777915 0.18977756729646 0.18921253835486 0.18743671963149 0.18235525999918 0.17402107998866 0.16591506197616 0.15855205951311 0.1532740333771 0.15238908315611 0.14945455456835 0.14977308463668 0.15012173650262 0.14957045774671 0.15346180767506 0.18854446864088 0.25695714997478 0.30892079446563 0.31221404157395 0.31599213108753 0.31326362960481 0.31793083736234 0.30777280910913 0.30274600040455 0.28031441584366 0.25822405693235 0.25152214516433 0.25029250182265 0.2500540070026 0.25000962591281 0.25000165049393 0.25000027169165 0.25000004293391 0.25000000652653 0.25000000082674 0.24999999995683 0.24999999995273 0.25000000001724 0.25000000000983 0.24999999999841 0.24999999999873 0.25000000000021 0.25000000000017 0.24999999999998 0.24999999999998 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25000000000001 0.25000000000004 0.24999999999995 0.24999999999969 0.25000000000033 0.25000000000227 0.24999999999788 0.24999999998178 0.25000000000018 0.25000000008733 0.24999999987192 0.2499999980347 0.24999998746011 0.24999992758006 0.24999960564331 0.2499979913993 0.24999048520909 0.24995829523947 0.24983187319432 0.2493812455645 0.24794732406824 0.24385954941137 0.23429405333031 0.21951131825406 0.20239170509031 0.18497173048794 0.1679370654508 0.15441303502999 0.13973104438488 0.13871482870524 0.13575737943132 0.1340383522975 0.13566137931081 0.13677460824976 0.13172719834474 0.10362620229392 0.06682291722705 0.04351599351017 0.0394419473769 0.03752795886935 0.0377892928382 0.03715798307609 0.0364527401901 0.03107175510963 0.02442866680272 0.02273985120669 0.02253036930572 0.02250380191763 0.02250047279006 0.02250005836181 0.02250000713384 0.02250000083027 0.02250000004968 0.02249999999284 0.02250000000152 0.02250000000255 0.02249999999999 0.02249999999972 0.02250000000001 0.02250000000004 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 +D/prim.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/prim.3.00.000050.dat 8e-14 9.8e-13 -2.6e-13 -7.03e-12 4.5e-13 5.23e-11 3.612e-11 -2.4631e-10 2.048e-11 4.08834e-09 2.672489e-08 1.5311124e-07 8.3275769e-07 4.26472762e-06 2.04561456e-05 9.155410335e-05 0.00038086330039 0.001465674146 0.00519507126674 0.0169769272091 0.0511897259556 0.10675302340238 0.16890339650686 0.21709833380372 0.2483812551384 0.28161343238276 0.27769123515865 0.28233980188972 0.28647998170225 0.28659886265719 0.28454061735571 0.28220427994157 0.28460377970814 0.28775067837737 0.28365438736153 0.28173810812077 0.29131800439772 0.27275347275167 0.27577251247443 0.22451702003369 0.1387223777203 0.03842058688104 0.00716160201264 0.00137786239888 0.0002544606721 4.535550103e-05 7.77687209e-06 1.2802278e-06 2.0241676e-07 3.085323e-08 4.19844e-09 -2.5981e-10 -2.2138e-10 8.065e-11 4.632e-11 -7.47e-12 -6e-12 9.9e-13 8.2e-13 -1.1e-13 -1e-13 1e-14 1e-14 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 0.0 0.0 -0.0 0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 -0.0 -0.0 0.0 -0.0 -0.0 0.0 2e-14 -3e-14 -1.8e-13 2.6e-13 1.45e-12 -1.57e-12 -1.07e-11 9.96e-12 8.597e-11 -2.04e-12 -4.1985e-10 5.7591e-10 9.6262e-09 5.924553e-08 3.4122978e-07 1.85814284e-06 9.46395318e-06 4.48308418e-05 0.00019650876 0.00079236590161 0.0029184361936 0.00970600456455 0.02925444795814 0.07590471049042 0.15061622979625 0.24342878722467 0.3443733384722 0.44650274490956 0.55034310184961 0.61663748457069 0.67314162886852 0.68826407629168 0.67514569407518 0.67291736374435 0.67727728055237 0.6776679911166 0.67977144642788 0.67782493206918 0.67994396824337 0.67590468520377 0.6848848217078 0.67171619315094 0.67708577613909 0.62880245932418 0.41368124483093 0.10107571390466 0.0126024779318 0.00159200907971 0.00019924279887 2.477584657e-05 3.05817838e-06 3.7516864e-07 4.598725e-08 3.96107e-09 -6.924e-10 9.223e-11 1.3238e-10 -5.2e-13 -1.47e-11 7.8e-13 1.97e-12 -1e-13 -2.4e-13 2e-14 3e-14 -0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 +D/prim.4.00.000000.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 +D/prim.4.00.000050.dat 0.9999999999999 0.99999999999877 1.00000000000032 1.00000000000879 0.99999999999944 0.99999999993451 0.99999999995511 1.00000000030862 0.99999999999508 0.99999999475526 0.99999996649911 0.99999980829706 0.99999895749455 0.99999466138478 0.99997439386786 0.99988540539821 0.99952339562671 0.99816724761228 0.9935194924489 0.97898500203258 0.93796395756466 0.87242272073408 0.81082121976879 0.75680467909937 0.71943598853319 0.71293714139671 0.69354338539684 0.69339524403528 0.69794365366245 0.69508960828052 0.69229415746121 0.69414143471729 0.69472066517437 0.69324815748213 0.69434920855067 0.69607726427705 0.69001463510373 0.70181132696057 0.67105579881922 0.65477094628453 0.5871601148067 0.52310752463389 0.50423329045501 0.50081191345801 0.50014985349541 0.50002670714712 0.50000457924358 0.50000075379816 0.50000011911847 0.5000000181076 0.50000000229376 0.49999999988022 0.49999999986886 0.50000000004783 0.50000000002727 0.4999999999956 0.49999999999647 0.50000000000058 0.50000000000048 0.49999999999993 0.49999999999994 0.50000000000001 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49999999999999 0.50000000000002 0.50000000000011 0.49999999999985 0.49999999999915 0.50000000000092 0.5000000000063 0.49999999999412 0.49999999994945 0.50000000000051 0.50000000024229 0.49999999964464 0.49999999454737 0.49999996520857 0.49999979907375 0.49999890587354 0.49999442723303 0.49997360194217 0.4998842982407 0.4995336378556 0.49828455507913 0.49431802833448 0.48307569098968 0.45710341297936 0.41782833805423 0.37366204100771 0.33014647009151 0.28947713621097 0.25683391128556 0.22924628535372 0.21905929497752 0.21568262450444 0.21405135888736 0.21474694641653 0.21540862813587 0.21615467052619 0.2159045820516 0.21621610908866 0.2158466967066 0.21694895851088 0.21552348349186 0.21816838665332 0.21366142065568 0.20572681318813 0.16131741903227 0.11280322204804 0.10153080946518 0.10019273110256 0.10002411159132 0.10000299816034 0.10000037009282 0.10000004523813 0.10000000526503 0.10000000031505 0.09999999995458 0.10000000000965 0.10000000001617 0.09999999999996 0.09999999999822 0.10000000000009 0.10000000000024 0.09999999999999 0.09999999999997 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 +D/prim.5.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/prim.5.00.000050.dat 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.88893588044701 0.80514943955838 0.61764175099413 0.51896215478586 0.50257739236939 0.50028025599396 0.50002489588765 0.5000017465164 0.50000009039584 0.50000000330272 0.50000000004883 0.49999999999422 0.50000000000031 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.49995110333095 0.49926519007664 0.49456714862561 0.47249495846435 0.39091192465435 0.27726865918084 0.21684958955492 0.20340795087403 0.20058522019407 0.2000846554137 0.2000097615346 0.20000082955266 0.20000003756076 0.20000000043915 0.19999999999805 0.20000000000003 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 +D/prim.6.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 +D/prim.6.00.000050.dat 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.11106411955299 0.19485056044162 0.38235824900587 0.48103784521414 0.49742260763061 0.49971974400604 0.49997510411235 0.49999825348361 0.49999990960416 0.49999999669728 0.49999999995117 0.50000000000579 0.49999999999969 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.50004889666905 0.50073480992336 0.50543285137439 0.52750504153565 0.60908807534565 0.72273134081916 0.78315041044508 0.79659204912597 0.79941477980593 0.7999153445863 0.7999902384654 0.79999917044734 0.79999996243924 0.79999999956085 0.80000000000195 0.79999999999997 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 \ No newline at end of file diff --git a/toolchain/mfc/test/cases.py b/toolchain/mfc/test/cases.py index f0f460fb1..339652748 100644 --- a/toolchain/mfc/test/cases.py +++ b/toolchain/mfc/test/cases.py @@ -7,7 +7,7 @@ from ..state import ARG from .case import CaseGeneratorStack, Nt, TestCaseBuilder, define_case_d, define_case_f, define_convergence_case -from .convergence import ConvergenceSpec, run_amp_sweep, run_dt_sweep, run_h_sweep, run_mg_hugoniot, run_mg_wave_speed, run_sod_l1 +from .convergence import ConvergenceSpec, run_amp_sweep, run_dt_sweep, run_h_sweep, run_jwl_isentrope, run_mg_hugoniot, run_mg_wave_speed, run_sod_l1 # Convergence test specs. # One TestCase per (problem, scheme) pair. Trace prefix "Convergence ->" is @@ -131,6 +131,12 @@ def _h_sweep(case_path, ndim, cons_vars, extra_args, expected, tol, resolutions, spec=ConvergenceSpec(runner=run_mg_wave_speed, case_path="examples/1D_mg_acoustic/case.py", expected_order=0.0, tol=1.0e-3, resolutions=[100, 200, 400]), ) ) + cases.append( + define_convergence_case( + "Convergence -> JWL -> isentropic release", + spec=ConvergenceSpec(runner=run_jwl_isentrope, case_path="examples/1D_jwl_release/case.py", expected_order=0.0, tol=1.0e-3, resolutions=[200, 400, 800]), + ) + ) cases.append( define_convergence_case( "Convergence -> Mie-Gruneisen -> Hugoniot", @@ -688,6 +694,56 @@ def alter_num_fluids(dimInfo): }, ) ) + cases.append( + define_case_d( + stack, + "eos=jwl", + { + "fluid_pp(1)%eos": "jwl", + "fluid_pp(1)%gamma": None, + "fluid_pp(1)%qv": None, + "fluid_pp(1)%jwl_a": 6.0, + "fluid_pp(1)%jwl_b": 0.15, + "fluid_pp(1)%jwl_r1": 4.0, + "fluid_pp(1)%jwl_r2": 1.0, + "fluid_pp(1)%jwl_omega": 0.3, + "fluid_pp(1)%jwl_rho0": 0.9, + }, + ) + ) + cases.append( + define_case_d( + stack, + "eos=mie_gruneisen -> alt_soundspeed=T", + { + "fluid_pp(1)%eos": "mie_gruneisen", + "fluid_pp(1)%gamma": None, + "fluid_pp(1)%qv": None, + "fluid_pp(1)%mg_rho0": 0.9, + "fluid_pp(1)%mg_c0": 1.0, + "fluid_pp(1)%mg_s": 1.5, + "fluid_pp(1)%mg_gruneisen": 0.4, + "alt_soundspeed": "T", + }, + ) + ) + cases.append( + define_case_d( + stack, + "eos=mie_gruneisen -> bc=-5", + { + "fluid_pp(1)%eos": "mie_gruneisen", + "fluid_pp(1)%gamma": None, + "fluid_pp(1)%qv": None, + "fluid_pp(1)%mg_rho0": 0.9, + "fluid_pp(1)%mg_c0": 1.0, + "fluid_pp(1)%mg_s": 1.5, + "fluid_pp(1)%mg_gruneisen": 0.4, + "bc_x%beg": -5, + "bc_x%end": -5, + }, + ) + ) if len(dimInfo[0]) > 1: alter_capillary() @@ -2893,6 +2949,7 @@ def foreach_example(): "2D_hypo_shear_contact", # exercised by the convergence suite "1D_mg_acoustic", # exercised by the convergence suite "1D_mg_impact", # exercised by the convergence suite + "1D_jwl_release", # exercised by the convergence suite "2D_zero_circ_vortex_analytical", "3D_TaylorGreenVortex_analytical", "3D_IGR_TaylorGreenVortex_nvidia", diff --git a/toolchain/mfc/test/convergence.py b/toolchain/mfc/test/convergence.py index 84939a4c1..d8d808c75 100644 --- a/toolchain/mfc/test/convergence.py +++ b/toolchain/mfc/test/convergence.py @@ -402,28 +402,28 @@ def run_mg_wave_speed(spec: ConvergenceSpec) -> typing.Tuple[bool, str]: """Sweep N; the measured speed of a small acoustic pulse must match the analytic Mie-Gruneisen c. The derivative term dPi/drho enters the sound speed but not the pressure, so a pulse is the one - observable that isolates it: without that term the speed is off by tens of percent. The residual - is the finite-amplitude correction O(drho/rho) of a simple wave, so the check is absolute, not a rate. + observable that isolates it: without that term the speed is off by tens of percent. The centroid of + drho moves at c up to the finite-amplitude correction O(drho/rho), so the check is absolute, not a rate. """ errors = [] with tempfile.TemporaryDirectory() as tmpdir: for N in spec.resolutions: cfg, run_dir = _run_mfc(spec.case_path, tmpdir, f"N{N}", ["-N", str(N)] + spec.extra_args, 1) rho0, c0, s, gruneisen = _mg_params(cfg) - p0 = float(cfg["patch_icpp(1)%pres"].split("+")[0]) + p0 = float(cfg["patch_icpp(1)%pres"]) c_exact = eos.sound_speed(rho0, p0, *eos.eos_coefficients(rho0, rho0, c0, s, gruneisen)) Nt = int(cfg["t_step_stop"]) T = Nt * float(cfg["dt"]) x_cc = (np.arange(N) + 0.5) / N - peaks = [] + centroids = [] for step in (0, Nt): - rho = _read_field(run_dir, step, 1, 1, N) - i = int(np.argmax(rho)) - if not 0 < i < N - 1: - raise common.MFCException(f"N={N}: pulse peak at the boundary after step {step}") - a, b, c = rho[i - 1], rho[i], rho[i + 1] # parabolic sub-cell peak - peaks.append(x_cc[i] + 0.5 * (a - c) / (a - 2.0 * b + c) / N) - errors.append(abs((peaks[1] - peaks[0]) / T - c_exact) / c_exact) + drho = _read_field(run_dir, step, 1, 1, N) - rho0 + if drho.max() <= 0.0: + raise common.MFCException(f"N={N}: no density excess at step {step}; the pulse patch did not take") + if drho[-1] > 0.01 * drho.max(): + raise common.MFCException(f"N={N}: pulse reached the boundary after step {step}") + centroids.append(float(np.sum(x_cc * drho) / np.sum(drho))) + errors.append(abs((centroids[1] - centroids[0]) / T - c_exact) / c_exact) widths = [6, 16] lines = [ f" analytic c = {c_exact:.6f} (need every relative error <= {spec.tol:.1e})", @@ -473,6 +473,40 @@ def run_mg_hugoniot(spec: ConvergenceSpec) -> typing.Tuple[bool, str]: return worst <= spec.tol, "\n".join(lines) +def run_jwl_isentrope(spec: ConvergenceSpec) -> typing.Tuple[bool, str]: + """Sweep N; the released JWL fluid must lie on the closed-form isentrope through its initial state. + + Left of the contact every cell keeps the left state's entropy, so its (rho, p) must satisfy + p = p_ref(V) + C V^-(omega + 1) with C fixed by (rho0, p0). Pressure is recovered from the + conserved energy with the same coefficients the solver uses; the reference curve enters both. + """ + errors = [] + with tempfile.TemporaryDirectory() as tmpdir: + for N in spec.resolutions: + cfg, run_dir = _run_mfc(spec.case_path, tmpdir, f"N{N}", ["-N", str(N)] + spec.extra_args, 1) + jwl = [float(cfg[f"fluid_pp(1)%jwl_{k}"]) for k in ("rho0", "a", "b", "r1", "r2", "omega")] + rho0, p0 = float(cfg["patch_icpp(1)%alpha_rho(1)"]), float(cfg["patch_icpp(1)%pres"]) + Nt = int(cfg["t_step_stop"]) + rho, mom, E = (_read_field(run_dir, Nt, k, 1, N) for k in (1, 2, 3)) + x_cc = (np.arange(N) + 0.5) / N + sel = (x_cc < 0.45) & (rho < 0.98 * rho0) # the fan and the left star state, clear of the contact + if sel.sum() < 4: + raise common.MFCException(f"N={N}: only {int(sel.sum())} released cells left of the contact") + worst = 0.0 + for r, m_, e_tot in zip(rho[sel], mom[sel], E[sel]): + gamma, pi, _ = eos.jwl_coefficients(r, *jwl) + p = (e_tot - 0.5 * m_**2 / r - pi) / gamma + p_s = eos.jwl_isentrope(r, *jwl, rho0, p0) + worst = max(worst, abs(p - p_s) / p_s) + errors.append(worst) + widths = [6, 8, 18] + lines = [f" (need every relative error <= {spec.tol:.1e})", "", _table_line(["N", "cells", "worst |p - p_s|/p_s"], widths), _table_line(["-" * w for w in widths], widths)] + for N, err in zip(spec.resolutions, errors): + lines.append(_table_line([str(N), "", f"{err:.4e}"], widths)) + lines.append(f"\n Worst relative error: {max(errors):.4e}") + return max(errors) <= spec.tol, "\n".join(lines) + + # Entry point used by test.py.