|
type(component_descriptor_type) function, public | petsc_solver_mod::petsc_solver_get_descriptor () |
| Provides the descriptor back to the caller and is used in component registration. More...
|
|
subroutine | petsc_solver_mod::finalisation_callback (current_state) |
|
subroutine | petsc_solver_mod::init_callback (current_state) |
| Called upon model initialisation. Will basically read from the options database and set options in the database that are appropriate. More...
|
|
subroutine | petsc_solver_mod::ksp_monitor (ksp, n, rnorm, dummy, ierr) |
| Monitor procedure called on each iteration, this is provided only at debugging level. More...
|
|
subroutine | petsc_solver_mod::timestep_callback (current_state) |
| Timestep hook which is called at each timestep to solve the pressure equation via PETSc. This will call to set and precondition the matrix on the first call (first timestep) only, and will set the RHS and X initial guess on each call as one would expect. At the end a halo swap is performed on p, which is needed for pstep. More...
|
|
character(len=string_length) function | petsc_solver_mod::determine_convegence_reason (r_code) |
|
subroutine | petsc_solver_mod::compute_initial_guess (ksp, x, dummy, ierr) |
| Determines the initial guess, this is called from within PETSc and sets it to be the last value of P or zero if it is the first timestep. More...
|
|
subroutine | petsc_solver_mod::compute_rhs (ksp, b, dummy, ierr) |
| Callback issued from the PETSc library to compute the RHS, this is called every timestep (as we have a different RHS) More...
|
|
subroutine | petsc_solver_mod::copy_data_to_petsc_pointer (x, zs, ys, xs, zm, ym, xm, src_values) |
| Copies data into a data pointer which is provided by PETSc, doing it this ways allows us to give a shape to the pointer data and hence the data copy is simpler code wise. More...
|
|
subroutine | petsc_solver_mod::copy_petsc_pointer_to_data (x, z_start_idx, z_end_idx, y_start_idx, y_end_idx, x_start_idx, x_end_idx, target_values) |
| Copies the data in a pointer that was provided by PETSc into some target data, doing it this way means we can give a shape to the pointer. More...
|
|
subroutine | petsc_solver_mod::compute_matrix (ksp, A, B, dummy, ierr) |
| Call back issued from within PETSc to create the matrix, this is only called once (the first PETSc run) More...
|
|
subroutine | petsc_solver_mod::apply_dimension_bounds (dim_size, dim_processes, length_array) |
| Applies dimension bounds to determine the number of elements held locally for each process in that dimension. More...
|
|
subroutine | petsc_solver_mod::complete_psrce_calculation (current_state, y_halo_size, x_halo_size) |
| Completes the psrce calculation by waiting on all outstanding psrce communications to complete and then combine the received values with the P field for U and V. More...
|
|
subroutine | petsc_solver_mod::copy_p_to_halo_buffer (current_state, neighbour_description, dim, source_index, pid_location, current_page, source_data) |
| Copies the p field data to halo buffers for a specific process in a dimension and halo cell. More...
|
|
subroutine | petsc_solver_mod::copy_halo_buffer_to_p (current_state, neighbour_description, dim, target_index, neighbour_location, current_page, source_data) |
|
subroutine | petsc_solver_mod::perform_local_data_copy_for_p (current_state, halo_depth, involve_corners, source_data) |
| Does local data copying for P variable halo swap. More...
|
|
|
integer | petsc_solver_mod::z_start |
|
integer | petsc_solver_mod::z_end |
|
integer | petsc_solver_mod::y_start |
|
integer | petsc_solver_mod::y_end |
|
integer | petsc_solver_mod::x_start |
|
integer | petsc_solver_mod::x_end |
|
type(halo_communication_type), save | petsc_solver_mod::halo_swap_state |
|
real(kind=default_precision), dimension(:,:,:), allocatable | petsc_solver_mod::p_source |
|
real(kind=default_precision), dimension(:,:,:), allocatable | petsc_solver_mod::prev_p |
|
real(kind=default_precision) | petsc_solver_mod::cx |
|
real(kind=default_precision) | petsc_solver_mod::cy |
|
real(kind=default_precision), dimension(:), allocatable | petsc_solver_mod::rdzn |
|
real(kind=default_precision), dimension(:), allocatable | petsc_solver_mod::rdz |
|
real(kind=default_precision), dimension(:), allocatable | petsc_solver_mod::rho |
|
real(kind=default_precision), dimension(:), allocatable | petsc_solver_mod::rhon |
|
real(kind=default_precision), dimension(:), allocatable | petsc_solver_mod::dz |
|
real(kind=default_precision), dimension(:), allocatable | petsc_solver_mod::dzn |
|