coupler_cfd_init Subroutine

public subroutine coupler_cfd_init(nsteps, dt, icomm_grid, icoord, npxyz_cfd, xyzL, ncxyz, density, ijkcmax, ijkcmin, iTmin, iTmax, jTmin, jTmax, kTmin, kTmax, xgrid, ygrid, zgrid)

  • Uses:

  • mpi

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: nsteps
real(kind=kind(0.d0)), intent(in) :: dt
integer, intent(in) :: icomm_grid
integer, intent(in), dimension(:,:):: icoord
integer, intent(in), dimension(3):: npxyz_cfd
real(kind=kind(0.d0)), intent(in), dimension(3):: xyzL
integer, intent(in), dimension(3):: ncxyz
real(kind=kind(0.d0)), intent(in) :: density
integer, intent(in), dimension(3):: ijkcmax
integer, intent(in), dimension(3):: ijkcmin
integer, intent(in), dimension(:):: iTmin
integer, intent(in), dimension(:):: iTmax
integer, intent(in), dimension(:):: jTmin
integer, intent(in), dimension(:):: jTmax
integer, intent(in), dimension(:):: kTmin
integer, intent(in), dimension(:):: kTmax
real(kind=kind(0.d0)), intent(in), dimension(:,:):: xgrid
real(kind=kind(0.d0)), intent(in), dimension(:,:):: ygrid
real(kind=kind(0.d0)), intent(in), dimension(: ):: zgrid

Description

Initialisation routine for coupler module - Every variable is sent and stored to ensure both md and cfd region have an identical list of parameters

  • Synopsis

  • coupler_cfd_init(nsteps,dt_cfd,icomm_grid,icoord,npxyz_cfd,xyzL,ncxyz, density,ijkcmax,ijkcmin,iTmin,iTmax,jTmin, jTmax,kTmin,kTmax,xg,yg,zg)

  • Input

  • nsteps

  • Number of time steps the CFD code is expected to run for (integer)
  • dt_cfd
  • CFD timestep (dp real)
  • icomm_grid
  • The MPI communicator setup by the MPI_CART_CREATE command in the CFD region (integer)
  • icoord
  • The three coordinate for each rank in the domain (integer array nproc by 3)
  • npxyz_cfd
  • Number of processors in each cartesian dimension (integer array 3)
  • xyzL
  • Size of domain in each cartesian dimension (dp real array 3)
  • ncxyz
  • Global number of cells in each cartesian dimension (integer array 3)
  • density
  • Density of the CFD simulation (dp_real)
  • ijkcmax
  • Global maximum cell in each cartesian dimension (integer array 3)
  • ijkcmin
  • Global minimum cell in each cartesian dimension (integer array 3)
  • iTmin
  • Local minimum cell for each rank (integer array no. procs in x)
  • iTmax
  • Local maximum cell for each rank (integer array no. procs in x)
  • jTmin
  • Local minimum cell for each rank (integer array no. procs in y)
  • jTmax
  • Local maximum cell for each rank (integer array no. procs in y)
  • kTmin
  • Local minimum cell for each rank (integer array no. procs in z)
  • kTmax
  • Local maximum cell for each rank (integer array no. procs in z)
  • xg
  • Array of cell vertices in the x direction (no. cells in x + 1 by no. cells in y + 1)
  • yg
  • Array of cell vertices in the y direction (no. cells in x + 1 by no. cells in y + 1)
  • zg
  • Array of cell vertices in the z direction (no. cells in z + 1)

  • Input/Output

  • NONE

  • Output

  • NONE

@author Edward Smith


Variables

TypeVisibility AttributesNameInitial
integer, public :: i
integer, public :: ib
integer, public :: jb
integer, public :: kb
integer, public :: pcoords(3)
integer, public :: source
integer, public :: nproc
integer, public, dimension(:), allocatable:: buf
integer, public, dimension(:), allocatable:: rank_world2rank_realm
integer, public, dimension(:), allocatable:: rank_world2rank_cart
real(kind=kind(0.d0)), public :: dxmin
real(kind=kind(0.d0)), public :: dxmax
real(kind=kind(0.d0)), public :: dzmin
real(kind=kind(0.d0)), public :: dzmax
real(kind=kind(0.d0)), public, dimension(:), allocatable:: rbuf

Subroutines

subroutine check_mesh()

Arguments

None

Description


© 2015 Fortran Program was written by Edward Smith David Trevelyan.
Documentation generated by FORD.