An observer class that extracts information from real grid functions.
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(rgf), | public, | pointer | :: | p | A pointer to the real grid function that observations will be performed on. |
||
real(kind=wp), | public, | dimension(:), allocatable | :: | extract_data | A 1d-array that will hold the extracted data. On allocation the size is nradii. |
The initialization routine is provided by robs_init.
The initialization routine for the real grid function observer.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(robserver), | intent(inout) | :: | this | The observer that is being initialized. |
||
real(kind=wp), | intent(in), | dimension(:) | :: | rad | A 1d array of real values containing the radii for which observations will be performed. |
|
type(rgf), | intent(in) | :: | coord | A real grid function containing the coordinates. |
||
class(*), | intent(in), | target | :: | object | The real grid function for which observations will be performed. |
The extraction routine is provided by robs_extract.
The extraction routine for the real grid function observer.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(robserver), | intent(inout) | :: | this | The routine is called on this observer. |
The output routine is provided by robs_output.
The output routine for the real grid function observer.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(robserver), | intent(inout) | :: | this | The routine is called on this observer. |
type, extends(observer) :: robserver
!! An observer class that extracts information from real grid functions.
type(rgf), pointer :: p
!! A pointer to the real grid function that observations will be performed
!! on.
real(wp), dimension(:), allocatable :: extract_data
!! A 1d-array that will hold the extracted data. On allocation the size is
!! [[robserver:nradii]].
contains
procedure :: init => robs_init
!! The initialization routine is provided by [[robs_init]].
procedure :: extract => robs_extract
!! The extraction routine is provided by [[robs_extract]].
procedure :: output => robs_output
!! The output routine is provided by [[robs_output]].
final :: close_robserver
!! The finalizer.
end type robserver