wd_eos Module

This MODULE implements the Chandrasekhar's degenerate \(\mathrm{EOS}\) for white dwarfs.

See Benz W., Bowers R.L., Cameron A.G.W., Press W.H., 1990, APJ, 348, 647., eqs.(2.4)-(2.5)

See also S. Chandrasekhar, The Highly Collapsed Configurations of a Stellar Mass. (Second Paper.), Monthly Notices of the Royal Astronomical Society, Volume 95, Issue 3, January 1935, Pages 207225

FT 19.12.2022



Uses

    • units
    • constants
  • module~~wd_eos~~UsesGraph module~wd_eos wd_eos constants constants module~wd_eos->constants units units module~wd_eos->units

Contents


Variables

Type Visibility Attributes Name Initial
double precision, private, parameter :: a_wd = 6.02D+21/(c_light2*cm2m)*dens_si2cu

Constant with dimensions of a pressure in code units

double precision, private, parameter :: a_wd_cgs = 6.02D+21*press_si2cgs

Constant with dimensions of a pressure in CGS units

double precision, private, parameter :: b_wd = mu_e*9.82D+8*dens_si2cu

Constant with dimensions of a density in code units

double precision, private, parameter :: b_wd_cgs = mu_e*9.82D+8*kg2g/(m2cm**3)

Constant with dimensions of a density in CGS units

double precision, private, parameter :: dens_si2cu = 1.618654158231174D-21

Conversion factor for the baryon mass density, from SI units to code units

double precision, private, parameter :: mu_e = 2.D0

Mean molecular weight per electron


Functions

private pure function f_wd(x)

Function used in the computation of the degenerate pressure

Read more…

Arguments

Type IntentOptional Attributes Name
double precision, intent(in) :: x

Return Value doubleprecision

private pure function g_wd(x)

Function used in the computation of the degenerate specific internal energy

Read more…

Arguments

Type IntentOptional Attributes Name
double precision, intent(in) :: x

Return Value doubleprecision

public pure function pr_wd(rho)

Degenerate pressure as a function of density

Read more…

Arguments

Type IntentOptional Attributes Name
double precision, intent(in) :: rho

Return Value doubleprecision

private pure function pr_wd_cgs(rho)

Degenerate pressure as a function of density, all in CGS units

Read more…

Arguments

Type IntentOptional Attributes Name
double precision, intent(in) :: rho

Return Value doubleprecision

public function rho_wd(pr, rho_left_bracket, rho_right_bracket)

Degenerate density as a function of pressure

Read more…

Arguments

Type IntentOptional Attributes Name
double precision, intent(in) :: pr
double precision, intent(in) :: rho_left_bracket
double precision, intent(in) :: rho_right_bracket

Return Value doubleprecision

public pure function u_wd(rho)

Degenerate specific internal energy as a function of density

Read more…

Arguments

Type IntentOptional Attributes Name
double precision, intent(in) :: rho

Return Value doubleprecision


Subroutines

public subroutine test_wd_eos_cgs(rho_input, rho, pr, u)

Test that the implementation is correct. Takes the density in code units as input, and assigns CGS values to the pressure, and the density recomputed from the pressure. It also computed the dimensionless specific internal energy.

Read more…

Arguments

Type IntentOptional Attributes Name
double precision, intent(in) :: rho_input
double precision, intent(out) :: rho
double precision, intent(out) :: pr
double precision, intent(out) :: u