This MODULE contains the implementation of the methods of TYPE bns_base that deal with the computation of the radii of the stars.
FT 27.09.2022
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| double precision, | private, | parameter | :: | tol | = | 1.D-5 |
Finds the center of a star, as the point where the density is maximal.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(bnsbase), | intent(in) | :: | this |
bnsbase object owning this PROCEDURE |
||
| double precision, | intent(in) | :: | separation |
Separation between the stars |
||
| double precision, | intent(in) | :: | x_sign |
Sign of the x coordinates of the point inside the star |
||
| procedure(get_density_at_pos), | optional | :: | get_density |
Center of a star, as the point where the density is maximal.
Finds the surfaces of the stars, and prints them to a formatted file.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(bnsbase), | intent(inout) | :: | this |
bnsbase object owning this PROCEDURE |
Finds the radius of a matter object, relative to a center and along a direction. The radius is determined as the first point where the density is zero.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(bnsbase), | intent(in) | :: | this |
bnsbase object owning this PROCEDURE |
||
| double precision, | intent(in), | DIMENSION(3) | :: | center |
Center point relative to which the radius is measured |
|
| double precision, | intent(in), | DIMENSION(3) | :: | vector |
Vector that defines the direction along which to measure the radius. If not normalized, it will be normalized. |
|
| procedure(get_density_at_pos), | optional | :: | get_density |
Radius of the star relative to center, along the direction
specified by vector
Finds the surface of a star, using [[bnsbase::find_radius]] along many directions.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(bnsbase), | intent(in) | :: | this |
bnsbase object owning this PROCEDURE |
||
| double precision, | intent(in), | DIMENSION(3) | :: | center |
Center point relative to which the radius is measured |
|
| integer, | intent(in) | :: | n_theta |
Number of points in for the colatitude |
||
| integer, | intent(in) | :: | n_phi |
Number of points in for the azimuth |
||
| double precision, | intent(out), | DIMENSION(:,:,:), ALLOCATABLE | :: | surface |
Array storing the coordinates of the points on the surface |