DDH RMF EOS solver

Functions to compute DDH RMF Equation of state from given parameters.

EOSgenerators.RMF_DDH.Function(type='Typel99', couplings='Default')[source]

Defines the density-dependent couplings for the sigma, omega, and rho mesons (g_sigma(rho), g_omega(rho), g_rho(rho)) based on various models.

The function returns symbolic expressions, allowing users to evaluate the couplings and their derivatives at any given density rho. Coupling types and default values are based on literature references, with options for user-defined functions.

Parameters:
  • type (str, optional) – Density-dependence model. Supported values are “Typel99”, “Malik22”, “Char23”, and “UserDefined”.

  • couplings (str or list, optional) – Model-specific coupling constants. Use “Default” for the preset values of the selected model, or pass explicit coupling values.

Returns:

Six callable expressions: sigma, omega, and rho meson couplings, followed by their density derivatives.

Return type:

tuple

EOSgenerators.RMF_DDH.beta_equilibrium_function(x, args)[source]

Iteratively adjusts the sigma, omega, and rho meson fields, as well as the chemical potentials of neutrons and electrons, to achieve beta equilibrium at a specified density.

Parameters:
  • x (array) – Initial values for sigma, omega, rho meson fields, and chemical potentials obtained from an initial guess function.

  • args (array) – Model parameters defining the RMF Lagrangian for the chosen RMF model.

Returns:

sigma (float): Adjusted value of the sigma meson field. omega (float): The adjusted value of the omega meson field. rho_03 (float): Adjusted value of the rho meson field. mu_n (float): Adjusted neutron chemical potential. mu_e (float): Adjusted electron chemical potential.

Return type:

tuple

EOSgenerators.RMF_DDH.compute_eos(eps_crust, pres_crust, theta)[source]

Computes the core part of the equation of state (EOS) using a chosen RMF model, complementing it with crust EOS data.

Parameters:
  • eps_crust (array) – Energy density values for the crust EOS

  • pres_crust (array) – Pressure values for the crust EOS

  • theta (array) – Array of parameters defining the RMF model in the Lagrangian for the core EOS.

Returns:

energy_density (float): Energy density of the core in natural units, an essential EOS ingredient. pressure (float): Pressure of the core in natural units, is also essential for the EOS.

Return type:

tuple

EOSgenerators.RMF_DDH.compute_eos_alpha(theta)[source]

Generates the equation of state (EOS) table for a sequence of densities, considering a specified proton fraction, using parameters from the chosen RMF model.

Parameters:
  • eps_crust (array) – Energy density values for the crust EOS, in MeV/fm³ (including a G/c² factor).

  • pres_crust (array) – Pressure values for the crust EOS, in MeV/fm³ (including a G/c⁴ factor).

  • theta (array) – Parameters defining the RMF model in the Lagrangian. The last element specifies the proton fraction (alpha): - alpha = 0 for pure neutron matter - alpha = 0.5 for symmetric nuclear matter - alpha = rho_p / (rho_p + rho_n)

Returns:

energy_density (float): Energy density in natural units, an essential EOS ingredient. pressure (float): Pressure in natural units, also essential for the EOS.

Return type:

tuple

EOSgenerators.RMF_DDH.fields_with_alpha(x, args)[source]

Iteratively adjusts the sigma, omega, and rho meson fields at a given nuclear density, based on a specified proton fraction, using the parameters of a selected RMF model.

Parameters:
  • x (array) – Initial values of sigma, omega, rho meson fields, and chemical potentials from an initial guess function.

  • args (array) – Parameters defining the RMF model in the Lagrangian. The last element in this array specifies the proton fraction (alpha): - alpha = 0 for pure neutron matter - alpha = 0.5 for symmetric nuclear matter - alpha = rho_p / (rho_p + rho_n)

Returns:

sigma (float): Adjusted value of the sigma meson field. omega (float): Adjusted value of the omega meson field. rho_03 (float): Adjusted value of the rho meson field.

Return type:

tuple

EOSgenerators.RMF_DDH.get_energy_pressure(x, rho, theta)[source]

Computes the energy density and pressure at a specified density, using given parameters for an RMF model.

Parameters:
  • x (array) – Array containing initial values of the sigma, omega, and rho meson fields, as well as the chemical potentials, obtained from an initial guess function.

  • rho (float) – Nuclear density at which to compute energy density and pressure.

  • theta (array) – Array of parameters defining the RMF model in the Lagrangian.

Returns:

energy_density (float): The energy density in natural units, essential for the EOS. pressure (float): The pressure in natural units, also essential for the EOS.

Return type:

tuple

EOSgenerators.RMF_DDH.get_energy_pressure_alpha(x, rho, theta)[source]

Computes the energy density and pressure for a specified nuclear density and proton fraction, using parameters from a chosen RMF model.

Parameters:
  • x (array) – Array containing initial values of sigma, omega, rho meson fields, and chemical potentials from an initial guess function.

  • rho (float) – Central density at which the equation of state (EOS) calculation begins.

  • theta (array) – Parameters defining the RMF model in the Lagrangian. The last element in this array specifies the proton fraction (alpha): - alpha = 0 for pure neutron matter - alpha = 0.5 for symmetric nuclear matter - alpha = rho_p / (rho_p + rho_n)

Returns:

energy_density (float): Energy density in natural units, essential for the EOS. pressure (float): Pressure in natural units, is essential for the EOS.

Return type:

tuple

EOSgenerators.RMF_DDH.initial_guess(rho, theta)[source]

Computes initial values for the sigma, omega, and rho meson fields, as well as the chemical potentials for neutrons and electrons at a given density.

This method provides an initial approximation of these fields and potentials based on the specified nuclear density and parameters of the chosen RMF model.

Parameters:
  • rho (float) – Nuclear density at which the initial guess is calculated.

  • theta (array) – Array of parameters specific to the chosen RMF model. The number and meaning of these parameters vary by model.

Returns:

sigma (float): Initial value of the sigma meson field. omega (float): Initial value of the omega meson field. rho_03 (float): Initial value of the rho meson field. mu_n (float): Initial neutron chemical potential. mu_e (float): Initial electron chemical potential.

Return type:

tuple

EOSgenerators.RMF_DDH.initial_guess_alpha(rho, theta)[source]

Provides initial estimates for the sigma, omega, and rho meson fields at a specified nuclear density, based on the parameters of a selected RMF model.

Parameters:
  • rho (float) – Nuclear density at which to calculate initial field values.

  • theta (array) – Array of parameters defining the RMF model in the Lagrangian.

Returns:

sigma (float): Initial value of the sigma meson field. omega (float): Initial value of the omega meson field. rho_03 (float): Initial value of the rho meson field.

Return type:

tuple