access Submodule

The module contains the implementation of the methods of TYPE bnsbase that allow to access PRIVATE members.

FT 12.07.2021



Uses

  • module~~access~3~~UsesGraph module~access~3 access module~bns_base bns_base module~access~3->module~bns_base module~id_base id_base module~bns_base->module~id_base module~utility utility module~bns_base->module~utility module~id_base->module~utility timing timing module~id_base->timing constants constants module~utility->constants matrix matrix module~utility->matrix

Contents


Module Procedures

module procedure get_adm_mass pure module function get_adm_mass(this)

Returns the ADM mass of the system

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_angular_momentum pure module function get_angular_momentum(this)

Returns the angular momentum of the system

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision, (3)

Result

module procedure get_angular_vel pure module function get_angular_vel(this)

Returns the angular velocity of the system

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_barycenter module function get_barycenter(this, i_matter)

Returns the barycenter of the i_matter-th star []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object owning this PROCEDURE

integer, intent(in) :: i_matter

Index of the matter object whose parameter is to return

Return Value double precision, DIMENSION(3)

Result

module procedure get_barycenter1_x pure module function get_barycenter1_x(this)

Returns the barycenter of NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_barycenter2_x pure module function get_barycenter2_x(this)

Returns the barycenter of NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_center module function get_center(this, i_matter)

Returns the center of the i_matter-th star []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object owning this PROCEDURE

integer, intent(in) :: i_matter

Index of the matter object whose parameter is to return

Return Value double precision, DIMENSION(3)

Result

module procedure get_center1_x pure module function get_center1_x(this)

Returns the stellar center of NS 1, i.e., the origin of the LORENE chart centered on NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_center2_x pure module function get_center2_x(this)

Returns the stellar center of NS 2, i.e., the origin of the LORENE chart centered on NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_distance pure module function get_distance(this)

Returns the distance between the NSs

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_distance_com pure module function get_distance_com(this)

Returns the distance between the centers of mass of the NSs

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_energy_density_center1 pure module function get_energy_density_center1(this)

Returns the central energy density of NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_energy_density_center2 pure module function get_energy_density_center2(this)

Returns the central energy density of NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_ent_center1 pure module function get_ent_center1(this)

Returns the central enthalpy of NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_ent_center2 pure module function get_ent_center2(this)

Returns the central enthalpy of NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_eos module function get_eos(this, i_matter)

Returns the \(\mathrm{EOS}\) name of the i_matter-th star []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object owning this PROCEDURE

integer, intent(in) :: i_matter

Index of the matter object whose string is to return

Return Value character(len=:), ALLOCATABLE

Result

module procedure get_eos1 pure module function get_eos1(this)

Returns the name of the \(\mathrm{EOS}\) for NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value character(len=:), ALLOCATABLE

Result

module procedure get_eos2 pure module function get_eos2(this)

Returns the name of the \(\mathrm{EOS}\) for NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value character(len=:), ALLOCATABLE

Result

module procedure get_eos_id module function get_eos_id(this, i_matter)

Returns the \(\mathrm{EOS}\) identifier of the i_matter-th star

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object owning this PROCEDURE

integer, intent(in) :: i_matter

Index of the matter object whose string is to return

Return Value integer

Result

module procedure get_gamma0_1 pure module function get_gamma0_1(this)

Returns the value of gamma0_1, the crust's polytropic index for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma0_2 pure module function get_gamma0_2(this)

Returns the value of gamma0_2, the crust's polytropic index for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma1_1 pure module function get_gamma1_1(this)

Returns the value of gamma1_1, the first polytropic index for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma1_2 pure module function get_gamma1_2(this)

Returns the value of gamma1_2, the first polytropic index for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma2_1 pure module function get_gamma2_1(this)

Returns the value of gamma2_1, the second polytropic index for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma2_2 pure module function get_gamma2_2(this)

Returns the value of gamma2_2, the second polytropic index for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma3_1 pure module function get_gamma3_1(this)

Returns the value of gamma3_1, the third polytropic index for NS 1 with piecewise polytropic \(\mathrm{EOS}\) (innermost index)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma3_2 pure module function get_gamma3_2(this)

Returns the value of gamma3_2, the third polytropic index for NS 2 with piecewise polytropic \(\mathrm{EOS}\) (innermost index)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma_1 pure module function get_gamma_1(this)

Returns the value of gamma_1, the polytropic index for NS 1 with polytropic \(\mathrm{EOS}\), not piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_gamma_2 pure module function get_gamma_2(this)

Returns the value of gamma_2, the polytropic index for NS 2 with polytropic \(\mathrm{EOS}\), not piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_grav_mass1 pure module function get_grav_mass1(this)

Returns the gravitational mass of NS 1 []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_grav_mass2 pure module function get_grav_mass2(this)

Returns the gravitational mass of NS 2 []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa0_1 pure module function get_kappa0_1(this)

Returns the value of kappa0_1, the crust's polytropic constant for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa0_2 pure module function get_kappa0_2(this)

Returns the value of kappa0_2, the crust's polytropic constant for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa1_1 pure module function get_kappa1_1(this)

Returns the value of kappa1_1, the first polytropic constant for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa1_2 pure module function get_kappa1_2(this)

Returns the value of kappa1_2, the first polytropic constant for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa2_1 pure module function get_kappa2_1(this)

Returns the value of kappa2_1, the second polytropic constant for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa2_2 pure module function get_kappa2_2(this)

Returns the value of kappa2_2, the second polytropic constant for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa3_1 pure module function get_kappa3_1(this)

Returns the value of kappa3_1, the third polytropic constant for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa3_2 pure module function get_kappa3_2(this)

Returns the value of kappa3_2, the third polytropic constant for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa_1 pure module function get_kappa_1(this)

Returns the value of kappa_1, the polytropic constant for NS 1 with polytropic \(\mathrm{EOS}\), not piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_kappa_2 pure module function get_kappa_2(this)

Returns the value of kappa_2, the polytropic constant for NS 2 with polytropic \(\mathrm{EOS}\), not piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_linear_momentum pure module function get_linear_momentum(this)

Returns the linear momentum of the system

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision, (3)

Result

module procedure get_logRho0_1 pure module function get_logRho0_1(this)

Returns the value of logRho0_1, the base 10 logarithm of the mass density where the gamma1_1 polytrope starts, for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_logRho0_2 pure module function get_logRho0_2(this)

Returns the value of logRho0_2, the base 10 logarithm of the mass density where the gamma1_2 polytrope starts, for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_logRho1_1 pure module function get_logRho1_1(this)

Returns the value of logRho1_1, the base 10 logarithm of the mass density where the gamma2_1 polytrope starts, for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_logRho1_2 pure module function get_logRho1_2(this)

Returns the value of logRho1_2, the base 10 logarithm of the mass density where the gamma2_2 polytrope starts, for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_logRho2_1 pure module function get_logRho2_1(this)

Returns the value of logRho2_1, the base 10 logarithm of the mass density where the gamma3_1 polytrope starts, for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_logRho2_2 pure module function get_logRho2_2(this)

Returns the value of logRho2_2]], the base 10 logarithm of the mass density where the gamma3_2 polytrope starts, for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_logp1_1 pure module function get_logp1_1(this) result(get_logP1_1)

Returns the value of logP1_1, the base 10 logarithm of the pressure where the gamma1_1 polytrope starts, for NS 1 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_logp1_2 pure module function get_logp1_2(this) result(get_logP1_2)

Returns the value of logP1_2, the base 10 logarithm of the pressure where the gamma1_2 polytrope starts, for NS 2 with piecewise polytropic \(\mathrm{EOS}\)

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_mass module function get_mass(this, i_matter)

Returns the baryon mass of NS i_matter-th star []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object owning this PROCEDURE

integer, intent(in) :: i_matter

Index identifying the matter object

Return Value double precision

Result

module procedure get_mass1 pure module function get_mass1(this)

Returns the baryon mass of NS 1 []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_mass2 pure module function get_mass2(this)

Returns the baryon mass of NS 2 []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_nbar_center1 pure module function get_nbar_center1(this)

Returns the central baryon number density of NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_nbar_center2 pure module function get_nbar_center2(this)

Returns the central baryon number density of NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_npeos_1 pure module function get_npeos_1(this)

Returns the identifier of the \(\mathrm{EOS}\) for NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value integer

Result

module procedure get_npeos_2 pure module function get_npeos_2(this)

Returns the identifier of the \(\mathrm{EOS}\) for NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value integer

Result

module procedure get_pressure_center1 pure module function get_pressure_center1(this)

Returns the central pressure of NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_pressure_center2 pure module function get_pressure_center2(this)

Returns the central pressure of NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_radii module function get_radii(this, i_matter)

Returns the radii of the i_matter-th star []

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object owning this PROCEDURE

integer, intent(in) :: i_matter

Index of the matter object whose string is to return

Return Value double precision, DIMENSION(6)

Result

module procedure get_radius1_x_comp pure module function get_radius1_x_comp(this)

Returns the radius of NS 1 along the x axis on the side of the companion

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_radius1_x_opp pure module function get_radius1_x_opp(this)

Returns the radius of NS 1 along the x axis on the side opposite to the companion

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_radius1_y pure module function get_radius1_y(this)

Returns the radius of NS 1 along the y axis

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_radius1_z pure module function get_radius1_z(this)

Returns the radius of NS 1 along the z axis

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_radius2_x_comp pure module function get_radius2_x_comp(this)

Returns the radius of NS 2 along the x axis on the side of the companion

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_radius2_x_opp pure module function get_radius2_x_opp(this)

Returns the radius of NS 2 along the x axis on the side opposite to the companion

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_radius2_y pure module function get_radius2_y(this)

Returns the radius of NS 2 along the y axis

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_radius2_z pure module function get_radius2_z(this)

Returns the radius of NS 2 along the z axis

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_rho_center1 pure module function get_rho_center1(this)

Returns the central baryon mass density of NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_rho_center2 pure module function get_rho_center2(this)

Returns the central baryon mass density of NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_specific_energy_center1 pure module function get_specific_energy_center1(this)

Returns the central specific energy of NS 1

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result

module procedure get_specific_energy_center2 pure module function get_specific_energy_center2(this)

Returns the central specific energy of NS 2

Read more…

Arguments

Type IntentOptional Attributes Name
class(bnsbase), intent(in) :: this

bnsbase object which this PROCEDURE is a member of

Return Value double precision

Result