The Open FUSION Toolkit 1.0.0-8905cc5
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
Functions/Subroutines | Variables
multigrid_build Module Reference

Detailed Description

Multigrid initialization using nested meshes.

Authors
George Marklin and Chris Hansen
Date
December 2009

Functions/Subroutines

subroutine multigrid_add_quad (mg_mesh)
 Add node points for quadratic elements.
 
subroutine multigrid_add_quad_surf (smesh)
 Add node points for quadratic elements.
 
subroutine multigrid_check_ho (mesh)
 Check high order geometric representation.
 
subroutine multigrid_construct (mg_mesh, grnd_pt)
 Construct multi-level mesh.
 
subroutine multigrid_construct_surf (mg_mesh, grnd_pt)
 Construct multi-level surface mesh.
 
subroutine multigrid_corners (mg_mesh)
 Set corner flags for distributed and local meshes.
 
subroutine multigrid_load (mg_mesh, cad_type)
 Load in mesh and CAD information.
 
subroutine multigrid_load_surf (mg_mesh, cad_type)
 Load in mesh and CAD information.
 
subroutine multigrid_reffix (mg_mesh)
 Adjust boundary points to CAD boundary following refinement.
 
subroutine multigrid_reffix_surf (mg_mesh)
 Adjust boundary points to CAD boundary following refinement.
 

Variables

real(r8), private cad_feature_angle = pi/4.d0
 
logical, private fix_boundary = .TRUE.
 
real(r8), private jac_ratio_tol = 10.d0
 
integer(i4), private part_meth = 1
 

Function/Subroutine Documentation

◆ multigrid_add_quad()

subroutine multigrid_add_quad ( type(multigrid_mesh), intent(inout)  mg_mesh)

Add node points for quadratic elements.

◆ multigrid_add_quad_surf()

subroutine multigrid_add_quad_surf ( class(oft_bmesh), intent(inout)  smesh)

Add node points for quadratic elements.

◆ multigrid_check_ho()

subroutine multigrid_check_ho ( class(oft_mesh), intent(inout)  mesh)

Check high order geometric representation.

Validates the high order geometric representation and disables curvature locally when negative grid jacobians are detected. Cells where ill conditioned mappings are found are straightened back to their original linear spatial mapping.

◆ multigrid_construct()

subroutine multigrid_construct ( type(multigrid_mesh), intent(inout)  mg_mesh,
real(r8), dimension(3), intent(in), optional  grnd_pt 
)

Construct multi-level mesh.

  • Read in mesh options
  • Load base mesh
  • Setup local meshes
  • Decompose mesh
  • Setup distributed meshes
    Parameters
    [in,out]mg_meshMulti-level mesh object
    [in]grnd_ptReference location for global grounding point (default: [1,0,0])

◆ multigrid_construct_surf()

subroutine multigrid_construct_surf ( type(multigrid_mesh), intent(inout)  mg_mesh,
real(r8), dimension(3), intent(in), optional  grnd_pt 
)

Construct multi-level surface mesh.

  • Read in mesh options
  • Load base mesh
  • Setup local meshes
  • Decompose mesh
  • Setup distributed meshes
    Parameters
    [in,out]mg_meshMulti-level mesh object
    [in]grnd_ptReference location for global grounding point (default: [1,0,0])

◆ multigrid_corners()

subroutine multigrid_corners ( type(multigrid_mesh), intent(inout)  mg_mesh)

Set corner flags for distributed and local meshes.

◆ multigrid_load()

subroutine multigrid_load ( type(multigrid_mesh), intent(inout)  mg_mesh,
integer(i4), intent(in)  cad_type 
)

Load in mesh and CAD information.

  • Read in mesh points and cells
  • Read in CAD information for refinement
    Parameters
    [in]cad_typeMesh type to load

◆ multigrid_load_surf()

subroutine multigrid_load_surf ( type(multigrid_mesh), intent(inout)  mg_mesh,
integer(i4), intent(in)  cad_type 
)

Load in mesh and CAD information.

  • Read in mesh points and cells
  • Read in CAD information for refinement

◆ multigrid_reffix()

subroutine multigrid_reffix ( type(multigrid_mesh), intent(inout)  mg_mesh)

Adjust boundary points to CAD boundary following refinement.

◆ multigrid_reffix_surf()

subroutine multigrid_reffix_surf ( type(multigrid_mesh), intent(inout)  mg_mesh)

Adjust boundary points to CAD boundary following refinement.

Variable Documentation

◆ cad_feature_angle

real(r8), private cad_feature_angle = pi/4.d0
private

◆ fix_boundary

logical, private fix_boundary = .TRUE.
private

◆ jac_ratio_tol

real(r8), private jac_ratio_tol = 10.d0
private

◆ part_meth

integer(i4), private part_meth = 1
private