MONC
none_manipulation.F90
Go to the documentation of this file.
1 
9  implicit none
10 
11 #ifndef TEST_MODE
12  private
13 #endif
14 
16 contains
17 
18  logical function is_none_time_manipulation_ready_to_write(latest_time, output_frequency, write_time, &
19  latest_timestep, write_timestep)
20  real, intent(in) :: latest_time, output_frequency, write_time
21  integer, intent(in) :: latest_timestep, write_timestep
22 
23  is_none_time_manipulation_ready_to_write=latest_timestep .ge. write_timestep
25 
33  type(data_values_type) function perform_none_time_manipulation(instant_values, output_frequency, &
34  field_name, timestep, time)
35  real(kind=default_precision), dimension(:), intent(in) :: instant_values
36  real, intent(in) :: output_frequency
37  real(kind=default_precision), intent(in) :: time
38  character(len=*), intent(in) :: field_name
39  integer, intent(in) :: timestep
40 
41  allocate(perform_none_time_manipulation%values(size(instant_values)))
42  perform_none_time_manipulation%values=instant_values
43  end function perform_none_time_manipulation
conversions_mod
Conversion between common inbuilt FORTRAN data types.
Definition: conversions.F90:5
forthread_mod::forthread_mutex_lock
integer function forthread_mutex_lock(mutex_id)
Definition: forthread.F90:284
forthread_mod::forthread_mutex_init
integer function forthread_mutex_init(mutex_id, attr_id)
Definition: forthread.F90:274
collections_mod
Collection data structures.
Definition: collections.F90:7
collections_mod::hashmap_type
A hashmap structure, the same as a map but uses hashing for greatly improved performance when storing...
Definition: collections.F90:94
forthread_mod
Definition: forthread.F90:1
forthread_mod::forthread_mutex_destroy
integer function forthread_mutex_destroy(mutex_id)
Definition: forthread.F90:265
none_time_manipulation_mod
Performs no time manipulation and returns the value, basically a no-op.
Definition: none_manipulation.F90:2
collections_mod::c_contains
Determines whether or not a map contains a specific key.
Definition: collections.F90:447
threadpool_mod
This is a thread pool and the single management "main" thread will spawn out free threads in the pool...
Definition: threadpool.F90:5
threadpool_mod::check_thread_status
subroutine, public check_thread_status(ierr)
Checks the error status of any thread operation and reports an error if it failed.
Definition: threadpool.F90:229
collections_mod::c_get_real
Gets a specific double precision real element out of the list, stack, queue or map with the correspon...
Definition: collections.F90:399
none_time_manipulation_mod::is_none_time_manipulation_ready_to_write
logical function, public is_none_time_manipulation_ready_to_write(latest_time, output_frequency, write_time, latest_timestep, write_timestep)
Definition: none_manipulation.F90:20
collections_mod::c_put_real
Puts a double precision real key-value pair into the map.
Definition: collections.F90:344
datadefn_mod
Contains common definitions for the data and datatypes used by MONC.
Definition: datadefn.F90:2
configuration_parser_mod::data_values_type
Definition: configurationparser.F90:34
datadefn_mod::string_length
integer, parameter, public string_length
Default length of strings.
Definition: datadefn.F90:10
forthread_mod::forthread_mutex_unlock
integer function forthread_mutex_unlock(mutex_id)
Definition: forthread.F90:302
none_time_manipulation_mod::perform_none_time_manipulation
type(data_values_type) function, public perform_none_time_manipulation(instant_values, output_frequency, field_name, timestep, time)
Performs no time manipulation and returns data.
Definition: none_manipulation.F90:35
configuration_parser_mod
Parses the XML configuration file to produce the io configuration description which contains the data...
Definition: configurationparser.F90:3
datadefn_mod::default_precision
integer, parameter, public default_precision
MPI communication type which we use for the prognostic and calculation data.
Definition: datadefn.F90:17
conversions_mod::conv_single_real_to_double
real(kind=double_precision) function, public conv_single_real_to_double(input_real)
Converts from a single to double precision real. This applies some rounding to a certain number of de...
Definition: conversions.F90:114