Measure controller for managing time steps
The idea is that this controller will keep track of the last value added and the last position added
The procedures will automatically add or not a given position
get_pos_array
will return the array of positions in which the value can be added
get_max_array_size
will return the maximum size of the array of positions that can be added
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=dp), | public | :: | last_value_added | = | 0.0_dp |
Last value added |
|
integer(kind=i4), | public | :: | last_position_added | = | 0 |
Last position added |
|
real(kind=dp), | public | :: | position_step | = | 1.0_dp |
Position step size |
|
real(kind=dp), | public | :: | min_value | = | 0.0_dp |
Minimum value for the measure |
|
procedure(measure_controller_get_pos_array_i), | public, | pointer | :: | get_pos_array | => | null() |
Get position array |
procedure(measure_controller_get_max_array_size_i), | public, | pointer | :: | get_max_array_size | => | null() |
Get maximum array size |
procedure(measure_controller_update), | public, | pointer | :: | update | => | null() |
Update measure |
Initialize measure controller
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(measure_controller_t), | intent(inout) | :: | controller | |||
character(len=*), | intent(in) | :: | interval_type | |||
real(kind=dp), | intent(in), | optional | :: | step | ||
real(kind=dp), | intent(in), | optional | :: | min_value |
Reset measure controller
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(measure_controller_t), | intent(inout) | :: | controller |