grid Module

The grid module contains the grid definition (locations of the grid points) as well as procedures to load these from a file.


Uses

  • module~~grid~~UsesGraph module~grid grid module~mapping mapping module~grid->module~mapping module~vartypes vartypes module~grid->module~vartypes mpi mpi module~grid->mpi module~mapping->module~vartypes iso_fortran_env iso_fortran_env module~vartypes->iso_fortran_env

Used by

  • module~~grid~~UsedByGraph module~grid grid module~solver solver module~solver->module~grid program~main main program~main->module~solver

Contents


Subroutines

public subroutine setup_grid(files, nodes, control, bc, dims)

Read the grid file and initialize the grid

Arguments

Type IntentOptional AttributesName
type(filetype), intent(in) :: files

Files' name and handler

type(nodetype), intent(out), dimension(:,:,:), allocatable:: nodes

Grid points

type(controltype), intent(in) :: control

Control parameters

type(boundarytype), intent(inout) :: bc

boundary conditions and fixed values

type(extent), intent(out) :: dims

Extent of the domain:imx,jmx,kmx

private subroutine extract_grid_size(file_handler, dims)

Extract the grid size from the grid file header

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: file_handler

(input)file handling unit

type(extent), intent(out) :: dims

Extent of the domain:imx,jmx,kmx

private subroutine populate_grid_points(file_handler, nodes, dims)

Use the grid file to populate the grid points.

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: file_handler

(input)file handling unit

type(nodetype), intent(out), dimension(-2:dims%imx+3,-2:dims%jmx+3,-2:dims%kmx+3):: nodes

Grid points

type(extent), intent(in) :: dims

Extent of the domain:imx,jmx,kmx

private subroutine ghost_grid(nodes, dims)

generate ghost grid for the various operations later.

Arguments

Type IntentOptional AttributesName
type(nodetype), intent(inout), dimension(-2:dims%imx+3,-2:dims%jmx+3,-2:dims%kmx+3):: nodes

grid points

type(extent), intent(in) :: dims

Extent of the domain:imx,jmx,kmx