SABER
type_mesh Module Reference

Subroutines/functions list. More...

Data Types

type  row_type
 
type  mesh_type
 

Functions/Subroutines

subroutine mesh_alloc (mesh, n, nam)
 Allocation. More...
 
subroutine mesh_init (mesh, mpl, rng, lon, lat, area)
 Intialization. More...
 
subroutine mesh_dealloc (mesh)
 Release memory. More...
 
subroutine mesh_bnodes (mesh, mpl)
 Find boundary nodes. More...
 
subroutine mesh_inside (mesh, mpl, lon, lat, inside_mesh)
 Find whether a point is inside the mesh. More...
 
subroutine mesh_barycentric (mesh, mpl, lon, lat, tree, b, ib)
 Compute barycentric coordinates. More...
 
subroutine mesh_count_bnda (mesh, gmask, nbnda)
 Count boundary arcs. More...
 
subroutine mesh_get_bnda (mesh, gmask, nbnda, bnda_index)
 Get boundary arcs. More...
 

Variables

logical, parameter shuffle = .true.
 Shuffle mesh order (more efficient to compute the Delaunay triangulation) More...
 
integer, parameter nnmax = 20
 Maximum number of nearest neighbors in the triangle search. More...
 
real(kind_real), parameter acc_fac = five
 Acceptance factor for mesh neighbors. More...
 

Detailed Description

Subroutines/functions list.

Instrumentation functions Mesh derived type

Function/Subroutine Documentation

◆ mesh_alloc()

subroutine type_mesh::mesh_alloc ( class(mesh_type), intent(inout)  mesh,
integer, intent(in)  n,
type(nam_type), intent(in)  nam 
)
private

Allocation.

Parameters
[in]nMesh size
[in]namNamelist

Definition at line 106 of file type_mesh.F90.

◆ mesh_barycentric()

subroutine type_mesh::mesh_barycentric ( class(mesh_type), intent(in)  mesh,
type(mpl_type), intent(inout)  mpl,
real(kind_real), intent(in)  lon,
real(kind_real), intent(in)  lat,
type(tree_type), intent(in)  tree,
real(kind_real), dimension(3), intent(out)  b,
integer, dimension(3), intent(out)  ib 
)
private

Compute barycentric coordinates.

Parameters
[in,out]mplMPI data
[in]lonLongitude
[in]latLatitude
[out]bBarycentric weights
[out]ibBarycentric indices

Definition at line 789 of file type_mesh.F90.

◆ mesh_bnodes()

subroutine type_mesh::mesh_bnodes ( class(mesh_type), intent(inout)  mesh,
type(mpl_type), intent(inout)  mpl 
)
private

Find boundary nodes.

Parameters
[in,out]mplMPI data

Definition at line 513 of file type_mesh.F90.

◆ mesh_count_bnda()

subroutine type_mesh::mesh_count_bnda ( class(mesh_type), intent(in)  mesh,
logical, dimension(mesh%n), intent(in)  gmask,
integer, intent(out)  nbnda 
)
private

Count boundary arcs.

Parameters
[in]gmaskMask
[out]nbndaNumber of boundary nodes

Definition at line 941 of file type_mesh.F90.

◆ mesh_dealloc()

subroutine type_mesh::mesh_dealloc ( class(mesh_type), intent(inout)  mesh)
private

Release memory.

Definition at line 469 of file type_mesh.F90.

◆ mesh_get_bnda()

subroutine type_mesh::mesh_get_bnda ( class(mesh_type), intent(in)  mesh,
logical, dimension(mesh%n), intent(in)  gmask,
integer, intent(in)  nbnda,
integer, dimension(2,nbnda), intent(out)  bnda_index 
)
private

Get boundary arcs.

Parameters
[in]gmaskMask
[in]nbndaNumber of boundary nodes
[out]bnda_indexBoundary node index

Definition at line 990 of file type_mesh.F90.

◆ mesh_init()

subroutine type_mesh::mesh_init ( class(mesh_type), intent(inout)  mesh,
type(mpl_type), intent(inout)  mpl,
type(rng_type), intent(inout)  rng,
real(kind_real), dimension(mesh%n), intent(in)  lon,
real(kind_real), dimension(mesh%n), intent(in)  lat,
real(kind_real), intent(in)  area 
)
private

Intialization.

Parameters
[in,out]mplMPI data
[in,out]rngRandom number generator
[in]lonLongitudes
[in]latLatitudes
[in]areaMesh area

Definition at line 149 of file type_mesh.F90.

◆ mesh_inside()

subroutine type_mesh::mesh_inside ( class(mesh_type), intent(in)  mesh,
type(mpl_type), intent(inout)  mpl,
real(kind_real), intent(in)  lon,
real(kind_real), intent(in)  lat,
logical, intent(out)  inside_mesh 
)
private

Find whether a point is inside the mesh.

Parameters
[in,out]mplMPI data
[in]lonLongitude
[in]latLatitude
[out]inside_meshTrue if the point is inside the mesh

Definition at line 726 of file type_mesh.F90.

Variable Documentation

◆ acc_fac

real(kind_real), parameter type_mesh::acc_fac = five

Acceptance factor for mesh neighbors.

Definition at line 52 of file type_mesh.F90.

◆ nnmax

integer, parameter type_mesh::nnmax = 20

Maximum number of nearest neighbors in the triangle search.

Definition at line 51 of file type_mesh.F90.

◆ shuffle

logical, parameter type_mesh::shuffle = .true.

Shuffle mesh order (more efficient to compute the Delaunay triangulation)

Definition at line 50 of file type_mesh.F90.