access Submodule

This SUBMODULE contains the implementation of the methods of TYPE particles that allow to access PRIVATE members.

FT 12.07.2021



Uses

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

Contents


Module Procedures

module procedure get_compose_eos pure module function get_compose_eos(this) result(compose_eos)

Returns the variable compose_eos

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value logical

(compose_eos)

module procedure get_eos_id pure module function get_eos_id(this, i_matter) result(eos_id)

Returns the \(\mathrm{EOS}\) identifier for matter object i_matter

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

integer, intent(in) :: i_matter

Index of the matter object

Return Value integer

(compose_eos)

module procedure get_g3 pure module function get_g3(this) result(g3)

Returns the spatial metric on the particles

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(6,this% npart)

(g_xx,g_xy,g_xz,g_yy,g_yz,g_zz)

module procedure get_h pure module function get_h(this) result(h)

Returns the array of initial guess for the smoothing length [Msun_geo]

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

h

module procedure get_lapse pure module function get_lapse(this) result(lapse)

Returns the lapse function on the particles

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(this% npart)

lapse

module procedure get_n_matter pure module function get_n_matter(this) result(n_matter)

Returns the number of matter objects

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value integer

n_matter

module procedure get_nlrf pure module function get_nlrf(this) result(nlrf)

Returns the array of baryon density in the local rest frame from the \(\mathrm{ID}\)

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

nlrf

module procedure get_nlrf_sph pure module function get_nlrf_sph(this) result(nlrf_sph)

Returns the array of \(\mathrm{SPH}\) estimate of the baryon density in the local rest frame

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

nlrf_sph

module procedure get_npart pure module function get_npart(this) result(n_part)

Returns the total number of particles

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value integer

npart

module procedure get_npart_i pure module function get_npart_i(this, i_matter) result(n_part)

Returns the number of particles on the matter object

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

integer, intent(in) :: i_matter

Index of the matter object

Return Value integer

Number of particles on the object i_matter

module procedure get_nstar pure module function get_nstar(this) result(nstar)

Returns the array of the relativistic density variable from the \(\mathrm{ID}\)

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

nstar

module procedure get_nstar_sph pure module function get_nstar_sph(this) result(nstar_sph)

Returns the array of \(\mathrm{SPH}\) density estimate of the relativistic density variable

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

nstar_sph

module procedure get_nu pure module function get_nu(this) result(nu)

Returns the array of baryon per particle [baryon (Msun_geo)^{-3}]

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

nu

module procedure get_nuratio pure module function get_nuratio(this) result(nuratio)

Returns the baryon number ratio on the stars

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision

nuratio

module procedure get_nuratio_i pure module function get_nuratio_i(this, i_matter) result(nuratio)

Returns the baryon number ratio on the matter object

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

integer, intent(in) :: i_matter

Index of the matter object

Return Value double precision

Baryon number ratio on the object i_matter

module procedure get_pos pure module function get_pos(this) result(pos_u)

Returns the array of particle positions

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:,:), ALLOCATABLE

pos

module procedure get_pressure pure module function get_pressure(this) result(pressure)

Returns the array of pressure from the \(\mathrm{ID}\)

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

pressure

module procedure get_pressure_sph pure module function get_pressure_sph(this) result(pressure_sph)

Returns the array of pressure computed using the \(\mathrm{SPH}\) stimate of the density [amuc2/(Msun_geo*3)]

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

pressure_sph

module procedure get_shift pure module function get_shift(this) result(shift)

Returns the shift vector on the particles

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(3,this% npart)

(shift_x,shift_y,shift_z)

module procedure get_theta pure module function get_theta(this) result(theta)

Returns the array of generalized Lorentz factor

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

Theta

module procedure get_u pure module function get_u(this) result(u)

Returns the array of specific internal energy [c^2]

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

specific_energy

module procedure get_u_sph pure module function get_u_sph(this) result(u_sph)

Returns the array of specific internal energy computed from the \(\mathrm{SPH}\) estimate of the baryon number density in the local rest frame [c^2]

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:), ALLOCATABLE

u_sph

module procedure get_vel pure module function get_vel(this) result(vel)

Returns the array of coordinate 3-velocity of particles

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value double precision, DIMENSION(:,:), ALLOCATABLE

v

module procedure is_empty module function is_empty(this) result(answer)

Returns the variable empty_object

Read more…

Arguments

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

particles object which this PROCEDURE is a member of

Return Value logical

.TRUE if the particles object is empty, .FALSE otherwise