MONC
|
Calculates fields related to distributions of data on full-domain horizontal 2d slices. More...
Functions/Subroutines | |
type(component_descriptor_type) function, public | pdf_analysis_get_descriptor () |
Returns the component descriptor of pdf analysis module. More... | |
subroutine | init_callback (current_state) |
Called on MONC initialisation, will allocate appropriate data structures. More... | |
subroutine | timestep_callback (current_state) |
Will sort the values across the whole domain and calculate the value corresponding to the percentile threshold. More... | |
subroutine | finalisation_callback (current_state) |
Frees up the temporary data for the tm_allp. More... | |
subroutine | calculate_w_percentiles (current_state) |
Calculates the w percentiles over the whole domain and stores these in the w up/dwn percentile arrays of current_state. More... | |
subroutine | mergesortmerge (A, NA, B, NB, C, NC) |
Combines with MergeSort sorting algorithm taken from: More... | |
recursive subroutine | mergesort (A, N, T) |
Combines with MergeSortMerge sorting algorithm taken from: More... | |
subroutine | field_information_retrieval_callback (current_state, name, field_information) |
Field information retrieval callback, this returns information for a specific components 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... | |
Variables | |
integer | start_x |
integer | end_x |
integer | start_y |
integer | end_y |
integer | xsize |
integer | ysize |
real(kind=default_precision) | uppercrit |
real(kind=default_precision) | dwnpercrit |
real(kind=default_precision), dimension(:), allocatable | tmp_all |
integer, dimension(:), allocatable | gpts_on_proc |
integer, dimension(:), allocatable | displacements |
integer | tpts |
integer | lpts |
logical | show_critical_w |
integer | diagnostic_generation_frequency |
Calculates fields related to distributions of data on full-domain horizontal 2d slices.
|
private |
Calculates the w percentiles over the whole domain and stores these in the w up/dwn percentile arrays of current_state.
current_state | The current model state |
initialize diagnostic thresholds
reset thresholds
Loop over levels
specify local data area
Reshape to 1-D array
Perform sort of data on local process
Gather 2d field to single process
Perform global operations
Sort the global data on single process
Determine threshold updraft and downdraft values
do some stdout diagnostic work
Inform all processes of calculated thresholds
Display some diagnostics, if requested
Definition at line 136 of file pdf_analysis.F90.
|
private |
Field information retrieval callback, this returns information for a specific components 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 |
Definition at line 314 of file pdf_analysis.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 333 of file pdf_analysis.F90.
|
private |
Frees up the temporary data for the tm_allp.
current_state | The current model state |
Definition at line 127 of file pdf_analysis.F90.
|
private |
Called on MONC initialisation, will allocate appropriate data structures.
current_state | The current model state |
Allocate space for the global 2d field only on a single process
Allocate and collect horizontal local sizes, send to all proceses
Allocate and initialize displacement values
Allocate critial fields in current_state if a cold start
Definition at line 59 of file pdf_analysis.F90.
|
private |
Combines with MergeSortMerge sorting algorithm taken from:
Definition at line 277 of file pdf_analysis.F90.
|
private |
Combines with MergeSort sorting algorithm taken from:
Definition at line 242 of file pdf_analysis.F90.
type(component_descriptor_type) function, public pdf_analysis_mod::pdf_analysis_get_descriptor |
Returns the component descriptor of pdf analysis module.
Definition at line 41 of file pdf_analysis.F90.
|
private |
Will sort the values across the whole domain and calculate the value corresponding to the percentile threshold.
current_state | The current model state |
Current forumulation only handles vertical velocity percentiles. Future enhancements may employ this component to perform additional operations that require access to full horizontal fields, such as pdf calculations.
Definition at line 112 of file pdf_analysis.F90.
|
private |
Definition at line 32 of file pdf_analysis.F90.
|
private |
Definition at line 23 of file pdf_analysis.F90.
|
private |
Definition at line 21 of file pdf_analysis.F90.
|
private |
Definition at line 19 of file pdf_analysis.F90.
|
private |
Definition at line 19 of file pdf_analysis.F90.
|
private |
Definition at line 23 of file pdf_analysis.F90.
|
private |
Definition at line 28 of file pdf_analysis.F90.
|
private |
Definition at line 30 of file pdf_analysis.F90.
|
private |
Definition at line 19 of file pdf_analysis.F90.
|
private |
Definition at line 19 of file pdf_analysis.F90.
|
private |
Definition at line 22 of file pdf_analysis.F90.
|
private |
Definition at line 27 of file pdf_analysis.F90.
|
private |
Definition at line 21 of file pdf_analysis.F90.
|
private |
Definition at line 19 of file pdf_analysis.F90.
|
private |
Definition at line 19 of file pdf_analysis.F90.