| 
    MONC
    
   | 
 
Does the field stepping Stepping is called at the end of processing a column and steps the x-2 column. More...
Functions/Subroutines | |
| type(component_descriptor_type) function, public | stepfields_get_descriptor () | 
| Provides the descriptor back to the caller and is used in component registration.  More... | |
| subroutine | initialisation_callback (current_state) | 
| Initialisation callback.  More... | |
| subroutine | finalisation_callback (current_state) | 
| Finalisation callback.  More... | |
| subroutine | timestep_callback (current_state) | 
| Called at each timestep and will perform swapping and smoothing as required.  More... | |
| subroutine | step_all_fields (current_state) | 
| Steps all fields.  More... | |
| subroutine | determine_local_flow_minmax (current_state, local_y, local_x) | 
| Determines the minimum and maximum values for the local flow field. These are before the stepping, and are all reduced later on in the cfl test.  More... | |
| subroutine | reset_local_minmax_values (current_state) | 
| Resets the local min and max values for the flow fields.  More... | |
| subroutine | remove_negative_rounding_errors_for_single_field (x_local_index, y_local_index, x_prev, y_prev, field, local_grid) | 
| Removes the negative rounding errors from a specific single field. This works two columns behind and then catches up on the last column.  More... | |
| subroutine | remove_negative_rounding_errors_in_slice (y_local_index, x_prev, y_prev, field, local_grid) | 
| Removes the negative rounding errors from a slice of a single field. This works two columns behind and then catches up on the last column.  More... | |
| subroutine | step_single_field (x_local_index, y_local_index, x_prev, y_prev, field, zfield, sfield, local_grid, flow_field, direction, dtm, gal, c1, c2, do_timesmoothing, sav) | 
| Steps a single specific field. This will step on the yth column of the x-2 slice and x-1 and x if this is the last slice.  More... | |
| subroutine | perform_timesmooth_for_field (field, zfield, local_grid, x_index, y_index, c1, c2) | 
| Performs initial timesmoothing for a theta or Q field using Robert filter. This is finished off in swapsmooth.  More... | |
| subroutine | step_column_in_slice (y_local_index, x_prev, y_prev, field, zfield, sfield, local_grid, flow_field, direction, dtm, gal, c1, c2, do_timesmoothing, sav) | 
| Will step a column in a specific slice. If y_prev is large enough then will step the y-1 column and if this is the last column of the slice then will also step the current column.  More... | |
| subroutine | step_field (x_local_index, y_local_index, field, zfield, sfield, local_grid, flow_field, direction, dtm, gal, sav) | 
| Will do the actual field stepping.  More... | |
| subroutine | compute_component_tendencies (current_state, cxn, cyn, txn, tyn) | 
| Computation of component tendencies.  More... | |
| subroutine | field_information_retrieval_callback (current_state, name, field_information) | 
| Field information retrieval callback, this returns information for a specific component's published field.  More... | |
| subroutine | field_value_retrieval_callback (current_state, name, field_value) | 
| Field value retrieval callback, this returns the value of a specific published field.  More... | |
| subroutine | set_published_field_value (field_value, real_1d_field, real_2d_field, real_3d_field) | 
| Sets the published field value from the temporary diagnostic values held by this component.  More... | |
Variables | |
| logical | determine_flow_minmax =.false. | 
| logical | cfl_is_enabled | 
| real(kind=default_precision), dimension(:), allocatable | resetq_min | 
| logical | l_nonconservative_positive_q =.true. | 
| real(kind=default_precision), dimension(:,:,:), allocatable | tend_3d_th | 
| real(kind=default_precision), dimension(:,:,:), allocatable | tend_3d_qv | 
| real(kind=default_precision), dimension(:,:,:), allocatable | tend_3d_ql | 
| real(kind=default_precision), dimension(:,:,:), allocatable | tend_3d_qi | 
| real(kind=default_precision), dimension(:,:,:), allocatable | tend_3d_qr | 
| real(kind=default_precision), dimension(:,:,:), allocatable | tend_3d_qs | 
| real(kind=default_precision), dimension(:,:,:), allocatable | tend_3d_qg | 
| real(kind=default_precision), dimension(:,:,:), allocatable | tend_3d_tabs | 
| logical | l_tend_3d_th | 
| logical | l_tend_3d_qv | 
| logical | l_tend_3d_ql | 
| logical | l_tend_3d_qi | 
| logical | l_tend_3d_qr | 
| logical | l_tend_3d_qs | 
| logical | l_tend_3d_qg | 
| logical | l_tend_3d_tabs | 
| real(kind=default_precision), dimension(:), allocatable | tend_pr_tot_th | 
| real(kind=default_precision), dimension(:), allocatable | tend_pr_tot_qv | 
| real(kind=default_precision), dimension(:), allocatable | tend_pr_tot_ql | 
| real(kind=default_precision), dimension(:), allocatable | tend_pr_tot_qi | 
| real(kind=default_precision), dimension(:), allocatable | tend_pr_tot_qr | 
| real(kind=default_precision), dimension(:), allocatable | tend_pr_tot_qs | 
| real(kind=default_precision), dimension(:), allocatable | tend_pr_tot_qg | 
| real(kind=default_precision), dimension(:), allocatable | tend_pr_tot_tabs | 
| logical | l_tend_pr_tot_th | 
| logical | l_tend_pr_tot_qv | 
| logical | l_tend_pr_tot_ql | 
| logical | l_tend_pr_tot_qi | 
| logical | l_tend_pr_tot_qr | 
| logical | l_tend_pr_tot_qs | 
| logical | l_tend_pr_tot_qg | 
| logical | l_tend_pr_tot_tabs | 
| integer | iqv =0 | 
| integer | iql =0 | 
| integer | iqr =0 | 
| integer | iqi =0 | 
| integer | iqs =0 | 
| integer | iqg =0 | 
| integer | diagnostic_generation_frequency | 
Does the field stepping Stepping is called at the end of processing a column and steps the x-2 column.
      
  | 
  private | 
Computation of component tendencies.
| current_state | Current model state | 
| cxn | The current slice, x, index | 
| cyn | The current column, y, index. | 
| txn | target_x_index | 
| tyn | target_y_index | 
Definition at line 628 of file stepfields.F90.

      
  | 
  private | 
Determines the minimum and maximum values for the local flow field. These are before the stepping, and are all reduced later on in the cfl test.
| current_state | The current model state | 
| local_y | The local y index | 
| local_x | The local x index | 
Definition at line 365 of file stepfields.F90.

      
  | 
  private | 
Field information retrieval callback, this returns information for a specific component's published field.
| current_state | Current model state | 
| name | The name of the field to retrieve information for | 
| field_information | Populated with information about the field | 
| strcomp | Starting index within 1st argument string that matches substring (2nd argument); 0 if not a match. | 
Definition at line 693 of file stepfields.F90.

      
  | 
  private | 
Field value retrieval callback, this returns the value of a specific published field.
| current_state | Current model state | 
| name | The name of the field to retrieve the value for | 
| field_value | Populated with the value of the field | 
Definition at line 768 of file stepfields.F90.


      
  | 
  private | 
Finalisation callback.
| current_state | The current model state | 
Definition at line 209 of file stepfields.F90.

      
  | 
  private | 
Initialisation callback.
| current_state | The current model state | 
Definition at line 89 of file stepfields.F90.


      
  | 
  private | 
Performs initial timesmoothing for a theta or Q field using Robert filter. This is finished off in swapsmooth.
| field | The field to smooth | 
| zfield | The zfield to use in smoothing | 
| local_grid | Description of the local grid | 
| x_index | The X index to work on | 
| y_index | The Y index to work on | 
| c1 | Constant to use in smoothing | 
| c2 | Constant to use in smoothing | 
Definition at line 515 of file stepfields.F90.

      
  | 
  private | 
Removes the negative rounding errors from a specific single field. This works two columns behind and then catches up on the last column.
| x_local_index | The current local x index | 
| y_local_index | The current local y index | 
| x_prev | The previous x index to step | 
| y_prev | The previous y index to step | 
| field | The prognostic field | 
| local_grid | Description of the local grid | 
Definition at line 409 of file stepfields.F90.


      
  | 
  private | 
Removes the negative rounding errors from a slice of a single field. This works two columns behind and then catches up on the last column.
| y_local_index | The current local y index | 
| x_prev | The previous x index to step | 
| y_prev | The previous y index to step | 
| field | The prognostic field | 
| local_grid | Description of the local grid | 
Definition at line 432 of file stepfields.F90.

      
  | 
  private | 
Resets the local min and max values for the flow fields.
| current_state | The current model state | 
Definition at line 390 of file stepfields.F90.

      
  | 
  private | 
Sets the published field value from the temporary diagnostic values held by this component.
| field_value | Populated with the value of the field | 
| real_1d_field | Optional one dimensional real of values to publish | 
| real_2d_field | Optional two dimensional real of values to publish | 
Definition at line 817 of file stepfields.F90.

      
  | 
  private | 
Steps all fields.
| current_state | The current model state_mod | 
Definition at line 315 of file stepfields.F90.


      
  | 
  private | 
Will step a column in a specific slice. If y_prev is large enough then will step the y-1 column and if this is the last column of the slice then will also step the current column.
| x_local_index | The current local x index | 
| y_local_index | The current local y index | 
| x_prev | The previous x index to step | 
| y_prev | The previous y index to step | 
| field | The prognostic field | 
| zfield | Z prognostic field | 
| sfield | Source terms for the prognostic field | 
| local_grid | Description of the local grid | 
| flow_field | Whether or not this is a flow field | 
| direction | The stepping direction (centred or forward) | 
| dtm | The delta time per timestep | 
| gal | Galilean transformation | 
| c1 | Constant to use in smoothing | 
| c2 | Constant to use in smoothing | 
| do_timesmoothing | Whether timesmoothing using Robert filter should be done on the field | 
| sav | Optional sav field | 
Definition at line 546 of file stepfields.F90.


      
  | 
  private | 
Will do the actual field stepping.
| flow_field | Whether or not we are stepping a flow field | 
| direction | 1=forward, 0=centred | 
| x_index | The local X slice index | 
| y_index | The local Y column index | 
| kkp | Points in the vertical column | 
| dtm | The model timestep | 
| field | The prognostic field | 
| zfield | The prognostic z field (which goes to timestep t+1) | 
| xfield | The tendency of the field | 
| gal | The galilean transformation | 
Definition at line 590 of file stepfields.F90.

      
  | 
  private | 
Steps a single specific field. This will step on the yth column of the x-2 slice and x-1 and x if this is the last slice.
| x_local_index | The current local x index | 
| y_local_index | The current local y index | 
| x_prev | The previous x index to step | 
| y_prev | The previous y index to step | 
| field | The prognostic field | 
| zfield | Z prognostic field | 
| sfield | Source terms for the prognostic field | 
| local_grid | Description of the local grid | 
| flow_field | Whether or not this is a flow field | 
| direction | The stepping direction (centred or forward) | 
| dtm | The delta time per timestep | 
| gal | Galilean transformation | 
| c1 | Constant to use in smoothing | 
| c2 | Constant to use in smoothing | 
| do_timesmoothing | Whether timesmoothing using Robert filter should be done on the field | 
| sav | Optional sav field | 
Definition at line 466 of file stepfields.F90.


| type(component_descriptor_type) function, public stepfields_mod::stepfields_get_descriptor | 
Provides the descriptor back to the caller and is used in component registration.
Definition at line 56 of file stepfields.F90.

      
  | 
  private | 
Called at each timestep and will perform swapping and smoothing as required.
| current_state | The current model state_mod | 
Definition at line 236 of file stepfields.F90.


      
  | 
  private | 
Definition at line 22 of file stepfields.F90.
      
  | 
  private | 
Definition at line 22 of file stepfields.F90.
      
  | 
  private | 
Definition at line 47 of file stepfields.F90.
      
  | 
  private | 
Definition at line 46 of file stepfields.F90.
      
  | 
  private | 
Definition at line 46 of file stepfields.F90.
      
  | 
  private | 
Definition at line 46 of file stepfields.F90.
      
  | 
  private | 
Definition at line 46 of file stepfields.F90.
      
  | 
  private | 
Definition at line 46 of file stepfields.F90.
      
  | 
  private | 
Definition at line 46 of file stepfields.F90.
      
  | 
  private | 
Definition at line 26 of file stepfields.F90.
      
  | 
  private | 
Definition at line 34 of file stepfields.F90.
      
  | 
  private | 
Definition at line 34 of file stepfields.F90.
      
  | 
  private | 
Definition at line 34 of file stepfields.F90.
      
  | 
  private | 
Definition at line 34 of file stepfields.F90.
      
  | 
  private | 
Definition at line 34 of file stepfields.F90.
      
  | 
  private | 
Definition at line 34 of file stepfields.F90.
      
  | 
  private | 
Definition at line 34 of file stepfields.F90.
      
  | 
  private | 
Definition at line 34 of file stepfields.F90.
      
  | 
  private | 
Definition at line 42 of file stepfields.F90.
      
  | 
  private | 
Definition at line 42 of file stepfields.F90.
      
  | 
  private | 
Definition at line 42 of file stepfields.F90.
      
  | 
  private | 
Definition at line 42 of file stepfields.F90.
      
  | 
  private | 
Definition at line 42 of file stepfields.F90.
      
  | 
  private | 
Definition at line 42 of file stepfields.F90.
      
  | 
  private | 
Definition at line 42 of file stepfields.F90.
      
  | 
  private | 
Definition at line 42 of file stepfields.F90.
      
  | 
  private | 
Definition at line 25 of file stepfields.F90.
      
  | 
  private | 
Definition at line 30 of file stepfields.F90.
      
  | 
  private | 
Definition at line 30 of file stepfields.F90.
      
  | 
  private | 
Definition at line 30 of file stepfields.F90.
      
  | 
  private | 
Definition at line 30 of file stepfields.F90.
      
  | 
  private | 
Definition at line 30 of file stepfields.F90.
      
  | 
  private | 
Definition at line 30 of file stepfields.F90.
      
  | 
  private | 
Definition at line 30 of file stepfields.F90.
      
  | 
  private | 
Definition at line 30 of file stepfields.F90.
      
  | 
  private | 
Definition at line 38 of file stepfields.F90.
      
  | 
  private | 
Definition at line 38 of file stepfields.F90.
      
  | 
  private | 
Definition at line 38 of file stepfields.F90.
      
  | 
  private | 
Definition at line 38 of file stepfields.F90.
      
  | 
  private | 
Definition at line 38 of file stepfields.F90.
      
  | 
  private | 
Definition at line 38 of file stepfields.F90.
      
  | 
  private | 
Definition at line 38 of file stepfields.F90.
      
  | 
  private | 
Definition at line 38 of file stepfields.F90.