Module that defines the interface for a self-force observer class for a scalar charge in orbit around a Schwarzschild black hole, i.e. it provides extraction of the self-force from the variables in scalar_schw).
The implementation is found in submodule_self_force_observer_implementation.f90
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(sf_observer), | public | :: | sfobs |
The interface for the sf_observer version of init. This interface is consistent with obs_init_interface.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(sf_observer), | intent(inout) | :: | this | The self-force observer that is being initialized. |
||
real(kind=wp), | intent(in), | dimension(:) | :: | rad | A 1d-array containing the radii where the observations have to be performed. Obviously it only makes sense to pass in the particle location. |
|
type(rgf), | intent(in) | :: | coord | A real grid function containing the coordinates of the grid. |
||
class(*), | intent(in), | target | :: | object | The object on which observations have to be done. This has to be of type scal_schw. |
The interface for the sf_observer version of extract. This interface is consistent with obs_extract_interface.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(sf_observer), | intent(inout) | :: | this | The routine is called on this self-force observer. |
The interface for the sf_output version of output. This interface is consistent with obs_output_interface.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(sf_observer), | intent(inout) | :: | this | The routine is called on this self-force observer. |
The interface for the finalizer.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(sf_observer) | :: | this | The self-force observer to be finalized. |
A class that defines an observer of the self-force for a scalar charge in orbit around a Schwarzschild black hole.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer(kind=ip), | public | :: | nradii | The number of radii the observer should observe at. |
|||
integer(kind=ip), | public | :: | ioo_id | The file unit number this observer should use for output. |
|||
character(len=:), | public, | allocatable | :: | vname | The name of the observer. |
||
real(kind=wp), | public, | dimension(:), allocatable | :: | radii | A 1d-array containing the radii that the observer should observe at. On allocation the size is nradii. |
||
integer(kind=ip), | public, | dimension(:), allocatable | :: | elem_index | A 1d-array containing the index of all the elements that contains radii. |
||
integer(kind=ip), | public, | dimension(:), allocatable | :: | node_index | A 1d-array containing the node index within all the elements that contains radii. |
||
type(scal_schw), | public, | pointer | :: | p | A pointer to the scal_schw equation that provides the data. |
||
real(kind=wp), | public, | dimension(:), allocatable | :: | fl | The -modes of the regular field at the particle location. |
||
real(kind=wp), | public, | dimension(:), allocatable | :: | ftl | The -modes of the time derivative of the regular field at the particle location. |
||
real(kind=wp), | public, | dimension(:), allocatable | :: | fphil | The -modes of the derivative of the regular field at the particle location. |
||
real(kind=wp), | public, | dimension(:), allocatable | :: | frl | The -modes of the radial derivative of the regular field at the particle location. |
final :: close_sf_observer | The finalizer. |
procedure, public :: init => sf_init | |
procedure, public :: extract => sf_extract | The extract routine is provided by sf_extract |
procedure, public :: output => sf_output |