| 
    MONC
    
   | 
 
Go to the source code of this file.
Modules | |
| module | pressuresource_mod | 
| Calculates the gradient of the source flow fields (SU, SV, SW.) This is based upon the P field values already set for the divergence error in the diverr component. Note that some communication is required, as a process needs to know the x and y -1 values, which are held on the -1 neighbour in that dimension. These are computed here and sent to neighbour +1, the recvs from a process to neighbour -1 are also registered here and the handles are waited upon the the results combined into P in the solver. If the neighbour is local in any dimension then it is just a local memory copy.  | |
Functions/Subroutines | |
| type(component_descriptor_type) function, public | pressuresource_mod::pressuresource_get_descriptor () | 
| Descriptor of this component for registration.  More... | |
| subroutine | pressuresource_mod::initialisation_callback (current_state) | 
| On initialisation this will allocate the buffer areas required and set communication handles to null.  More... | |
| subroutine | pressuresource_mod::timestep_callback (current_state) | 
| The timestep callback will update the values of P for each column.  More... | |
| subroutine | pressuresource_mod::finalisation_callback (current_state) | 
| Frees up the allocated buffers (if such were allocated)  More... | |
| subroutine | pressuresource_mod::calculate_psrce (current_state) | 
| Combines the source fields with the pressure values. For U and V, if this is on the low boundary then delay dealing with the -1 values as they will be communicated. Equally, for those fields if this is the high boundary then compute the values and send them on to the neighbouring process.  More... | |
| subroutine | pressuresource_mod::send_neighbouring_pressure_data (current_state) | 
| Sends the computed source pressure data terms to the p+1 process.  More... | |
| subroutine | pressuresource_mod::register_neighbouring_pressure_data_recv (current_state) | 
| Registers the receive requests for each neighbouring process if that is not local, is recieves from p-1.  More... | |
Variables | |
| real(kind=default_precision), dimension(:,:), allocatable | pressuresource_mod::send_buffer_x | 
| real(kind=default_precision), dimension(:,:), allocatable | pressuresource_mod::send_buffer_y |