|
MONC
|
Component to set up the model based upon a KiD model configuration. More...
Functions/Subroutines | |
| type(component_descriptor_type) function, public | kidreader_get_descriptor () |
| Provides the descriptor back to the caller and is used in component registration. More... | |
| subroutine | initialise_callback (current_state) |
| Initialisation hook which will parse the configuration NetCDF file and set up the model based upon this. More... | |
| subroutine | set_up_q_fields (current_state) |
| subroutine | populate_q_tracer (current_state, q_field) |
| Populates the Q tracer field based upon the configuration that has been read in from the simulation file. More... | |
| subroutine | initialise_single_q_field (current_state, q_id, z_size, y_size, x_size) |
| subroutine | decompose_grid (current_state) |
| Calls the decomposition procedure to decompose the grid and determine neighbouring processes If no decomposition procedure is specified then this results in an error. More... | |
| subroutine | initalise_source_and_z_fields (current_state) |
| Based upon the local grid this will initialise the Source, Z and SAV fields for each prognostic. More... | |
| subroutine | initialise_velocity_field (local_grid, field, z_grid, y_grid, x_grid, data) |
| Will initialise a velocity field with the loaded data. More... | |
| subroutine | create_grid (specific_grid, z, x, z_dim, x_dim, my_rank) |
| Creates a specific grid based upon the data read from the KiD model NetCDF file. More... | |
| subroutine | define_vertical_levels (current_state, z, z_size) |
| Defines the vertical levels of the grid. This is both the grid points and corresponding height for each point in metres. More... | |
| subroutine | check_kinematics_file (ncid) |
| Checks that the kinematics file that has been loaded is consistent with what we expect. More... | |
| subroutine | read_variables (ncid, time_dim, z_dim, z_half_dim, x_dim, x_half_dim, time, x, z, x_half, z_half, u, w, v) |
| Reads the variables from the NetCDF KiD model file. More... | |
| subroutine | read_single_variable (ncid, key, data1d, data3d) |
| Reads a single variable out of a NetCDF file. More... | |
| subroutine | read_dimensions (ncid, time_dim, z_dim, z_half_dim, x_dim, x_half_dim) |
| Reads the dimensions from the NetCDF file. More... | |
| subroutine | read_global_attributes (ncid, pid) |
| Will read the global attributes of the NetCDF KiD model dump and log_log them to debug. More... | |
| character(len=:) function, allocatable, target | read_specific_global_attribute (ncid, key) |
| Will read a specific global NetCDF attribute. More... | |
| subroutine | check_status (status) |
| Will check a NetCDF status and write to log_log error any decoded statuses. More... | |
Variables | |
| integer, parameter | number_q_coords = 100 |
| Number of Q field value coords that can be specified. More... | |
| character(len= *), parameter | time_key = "time" |
| Corresponding NetCDF data time key. More... | |
| character(len= *), parameter | z_key = "z" |
| Corresponding NetCDF data z (primal grid) key. More... | |
| character(len= *), parameter | z_half_key = "z_half" |
| Corresponding NetCDF data z half (dual grid) key. More... | |
| character(len= *), parameter | x_key = "x" |
| Corresponding NetCDF data x (primal grid) key. More... | |
| character(len= *), parameter | x_half_key = "x_half" |
| Corresponding NetCDF data x half (primal grid) key. More... | |
| character(len= *), parameter | u_key ="u" |
| Corresponding NetCDF data u flow field key. More... | |
| character(len= *), parameter | w_key ="w" |
| Corresponding NetCDF data w flow field key. More... | |
| logical | flood_q = .false. |
| logical | float_q = .false. |
| logical | clone_to_3d = .false. |
| logical | rotate_xy =.false. |
| integer | domain_multiplication =1 |
| The Q field coordinates configured by the user. More... | |
| integer, dimension(number_q_coords), save | q_coordinates_x |
| integer, dimension(number_q_coords), save | q_coordinates_y |
| integer, dimension(number_q_coords), save | q_coordinates_z |
| integer, dimension(number_q_coords), save | q_coordinates_value |
| character(len=string_length) | configuration_file |
| NetCDF model file to load. More... | |
Component to set up the model based upon a KiD model configuration.
These data files are in NetCDF format
|
private |
Checks that the kinematics file that has been loaded is consistent with what we expect.
This checks the file against a number of limitations of the current KiD reading functionality to ensure that this component can parse it correctly
Definition at line 379 of file kidreader.F90.


|
private |
Will check a NetCDF status and write to log_log error any decoded statuses.
| status | The NetCDF status flag |
Definition at line 536 of file kidreader.F90.

|
private |
Creates a specific grid based upon the data read from the KiD model NetCDF file.
| specific_grid | The grid to create |
| z | Array of grid points in the z dimension |
| x | Array of grid points in the x dimension |
| z_dim | The number of points in the z dimension |
| x_dim | The number of points in the x dimension |
Definition at line 305 of file kidreader.F90.

|
private |
Calls the decomposition procedure to decompose the grid and determine neighbouring processes If no decomposition procedure is specified then this results in an error.
| current_state | The current model state_mod |
Definition at line 192 of file kidreader.F90.

|
private |
Defines the vertical levels of the grid. This is both the grid points and corresponding height for each point in metres.
| current_state | The current model state_mod |
| z | Array of grid heights in metres |
| z_size | Number of grid points |
Definition at line 359 of file kidreader.F90.

|
private |
Based upon the local grid this will initialise the Source, Z and SAV fields for each prognostic.
| current_state |
Definition at line 204 of file kidreader.F90.

|
private |
Initialisation hook which will parse the configuration NetCDF file and set up the model based upon this.
| current_state | The current model state_mod |
Definition at line 55 of file kidreader.F90.


|
private |
Definition at line 175 of file kidreader.F90.

|
private |
Will initialise a velocity field with the loaded data.
| field | The velocity field to initialise |
| z_dim | The size of the z dimension |
| y_dim | The size of the y dimension |
| x_dim | The size of the x dimension |
| grid | The applicable grid to place this field upon |
| data | The NetCDF KiD model data to load into the velocity field |
Definition at line 245 of file kidreader.F90.

| type(component_descriptor_type) function, public kidreader_mod::kidreader_get_descriptor | ( | ) |
Provides the descriptor back to the caller and is used in component registration.
Definition at line 46 of file kidreader.F90.

|
private |
Populates the Q tracer field based upon the configuration that has been read in from the simulation file.
| current_state | The current model state_mod |
| q_field | The qfield that we are going to fill in |
Definition at line 132 of file kidreader.F90.

|
private |
Reads the dimensions from the NetCDF file.
| ncid | The NetCDF file id |
| time_dim | Number of elements in the time dimension |
| z_dim | Number of elements in the z dimension of the primal grid |
| z_half_dim | Number of elements in the z dimension of the dual grid |
| x_dim | Number of elements in the x dimension of the primal grid |
| x_half_dim | Number of elements in the x dimension of the dual grid |
Definition at line 483 of file kidreader.F90.


|
private |
Will read the global attributes of the NetCDF KiD model dump and log_log them to debug.
| ncid | The NetCDF file id |
Definition at line 504 of file kidreader.F90.


|
private |
Reads a single variable out of a NetCDF file.
| ncid | The NetCDF file id |
| key | The variable key (name) to access |
| data1d | Optional one dimensional data to read into |
| data3d | Optional three dimensional data to read into |
Definition at line 452 of file kidreader.F90.


|
private |
Will read a specific global NetCDF attribute.
| ncid | The NetCDF file id |
| key | The name (key) of the attribute to read |
Definition at line 522 of file kidreader.F90.


|
private |
Reads the variables from the NetCDF KiD model file.
| ncid | The id of the NetCDF file |
| time_dim | The number of elements in the time dimension |
| z_dim | The number of elements in the z primal grid dimension |
| z_half_dim | The number of elements in the z dual grid dimension |
| x_dim | The number of elements in the x primal grid dimension |
| x_half_dim | The number of elements in the x dual grid dimension |
| time | The time data field that is to be read |
| x | The points on the primal grid in x dimension |
| z | The points on the primal grid z dimension |
| x_half | The points on the dual grid x dimension |
| z_half | The points on the dual grid z dimension |
| u | Velocity field in dimension x to read |
| w | Velocity field in dimension z to read |
Definition at line 405 of file kidreader.F90.


|
private |
Definition at line 107 of file kidreader.F90.


|
private |
Definition at line 31 of file kidreader.F90.
|
private |
NetCDF model file to load.
Definition at line 37 of file kidreader.F90.
|
private |
The Q field coordinates configured by the user.
Definition at line 32 of file kidreader.F90.
|
private |
Definition at line 31 of file kidreader.F90.
|
private |
Definition at line 31 of file kidreader.F90.
|
private |
Number of Q field value coords that can be specified.
Definition at line 22 of file kidreader.F90.
|
private |
Definition at line 35 of file kidreader.F90.
|
private |
Definition at line 35 of file kidreader.F90.
|
private |
Definition at line 35 of file kidreader.F90.
|
private |
Definition at line 35 of file kidreader.F90.
|
private |
Definition at line 31 of file kidreader.F90.
|
private |
Corresponding NetCDF data time key.
Definition at line 23 of file kidreader.F90.
|
private |
Corresponding NetCDF data u flow field key.
Definition at line 23 of file kidreader.F90.
|
private |
Corresponding NetCDF data w flow field key.
Definition at line 23 of file kidreader.F90.
|
private |
Corresponding NetCDF data x half (primal grid) key.
Definition at line 23 of file kidreader.F90.
|
private |
Corresponding NetCDF data x (primal grid) key.
Definition at line 23 of file kidreader.F90.
|
private |
Corresponding NetCDF data z half (dual grid) key.
Definition at line 23 of file kidreader.F90.
|
private |
Corresponding NetCDF data z (primal grid) key.
Definition at line 23 of file kidreader.F90.
1.8.14