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

Detailed Description

Subroutines for nested tesselation of a tetrahedral mesh.

Author
Chris Hansen
Date
June 2012

Functions/Subroutines

subroutine, public tessellate1 (self, rtmp, lctmp)
 Construct point and cell lists for a single tessellation.
 
subroutine, public tessellate2 (self, rtmp, lctmp)
 Construct point and cell lists for a 2 level tessellation.
 
subroutine, public tessellate3 (self, rtmp, lctmp)
 Construct point and cell lists for a 3 level tessellation.
 
subroutine, public tessellate4 (self, rtmp, lctmp)
 Construct point and cell lists for a 3 level tessellation.
 

Variables

integer(i4), dimension(4, 8), parameter tess2 = RESHAPE((/6,5,4,3,7,6,8,2,9,8,4,0,9,7,5,1,7,6,8,4, 7,6,5,4,9,7,5,8,9,5,8,4/), (/4,8/))
 
integer(i4), dimension(4, 27), parameter tess3 = RESHAPE((/16,17,19,18,9,15,19,18,10,4,17,18,7,12, 14,2,11,5,16,18,8,10,15,0,8,14,17,19,6,12,16,17,6,5,4,3,13,11,9,1,13,7,16,19,5,4,17,18,5, 16,17,18,7,14,17,19,7,16,17,19,7,12,14,17,7,12,16,17,8,10,15,18,8,15,19,18,8,17,19,18,8,10, 17,18,6,16,4,17,6,5,16,4,13,11,9,18,13,9,19,18,13,16,19,18,13,11,16,18/), (/4,27/))
 
integer(i4), dimension(4, 64), parameter tess4 = RESHAPE((/7,26,13,25,22,23,24,34,22,26,30,34,22,5, 11,24,31,26,25,34,31,23,27,34,32,33,27,34,8,33,14,27,10,4,23,24,10,32,16,27,6,4,5,3,6,22,12,23, 20,31,14,25,18,31,12,26,18,20,7,2,17,19,9,1,21,32,33,15,21,8,16,0,29,33,25,34,29,19,13,30,28,29, 30,34,28,32,24,34,28,17,11,30,28,29,9,15,26,30,25,34,26,13,30,25,33,27,25,34,33,14,27,25,22,4,5, 24,22,4,23,24,22,30,24,34,22,11,30,24,31,22,23,34,31,22,26,34,31,22,12,23,31,22,12,26,31,27,25, 34,31,14,27,25,8,32,16,27,8,32,33,27,10,23,24,34,10,23,27,34,10,32,24,34,10,32,27,34,6,22,5,23,6, 4,5,23,20,7,26,25,20,31,26,25,18,20,31,7,18,31,7,26,21,8,33,16,21,32,33,16,29,13,30,25,29,30,25, 34,28,32,33,34,28,29,33,34,28,17,19,30,28,29,19,30,28,29,33,15,28,32,33,15,28,29,19,9,28,17,19,9, 28,30,24,34,28,11,30,24/), (/4,64/))
 

Function/Subroutine Documentation

◆ tessellate1()

subroutine, public tessellate1 ( class(oft_mesh), intent(in)  self,
real(r8), dimension(:,:), intent(out), pointer  rtmp,
integer(i4), dimension(:,:), intent(out), pointer  lctmp 
)

Construct point and cell lists for a single tessellation.

This corresponds to the input triangulation with no refinement

  • np_tess = np
  • nc_tess = nc
    Parameters
    [in]selfMesh object
    [out]rtmpTessellated point list [3,np_tess]
    [out]lctmpTessellated cell list [4,nc_tess]

◆ tessellate2()

subroutine, public tessellate2 ( class(oft_mesh), intent(in)  self,
real(r8), dimension(:,:), intent(out), pointer  rtmp,
integer(i4), dimension(:,:), intent(out), pointer  lctmp 
)

Construct point and cell lists for a 2 level tessellation.

This corresponds to the input triangulation with quadratic nodes added

  • np_tess = np + ne
  • nc_tess = nc*8
    Parameters
    [in]selfMesh object
    [out]rtmpTessellated point list [3,np_tess]
    [out]lctmpTessellated cell list [4,nc_tess]

◆ tessellate3()

subroutine, public tessellate3 ( class(oft_mesh), intent(in)  self,
real(r8), dimension(:,:), intent(out), pointer  rtmp,
integer(i4), dimension(:,:), intent(out), pointer  lctmp 
)

Construct point and cell lists for a 3 level tessellation.

This corresponds to the input triangulation with cubic nodes added

  • np_tess = np + 2*ne + nf
  • nc_tess = nc*27
    Parameters
    [in]selfMesh object
    [out]rtmpTessellated point list [3,np_tess]
    [out]lctmpTessellated cell list [4,nc_tess]

◆ tessellate4()

subroutine, public tessellate4 ( class(oft_mesh), intent(in)  self,
real(r8), dimension(:,:), intent(out), pointer  rtmp,
integer(i4), dimension(:,:), intent(out), pointer  lctmp 
)

Construct point and cell lists for a 3 level tessellation.

This corresponds to the input triangulation with cubic nodes added

  • np_tess = np + 3*ne + 3*nf + nc
  • nc_tess = nc*64
    Parameters
    [in]selfMesh object
    [out]rtmpTessellated point list [3,np_tess]
    [out]lctmpTessellated cell list [4,nc_tess]

Variable Documentation

◆ tess2

integer(i4), dimension(4,8), parameter tess2 = RESHAPE((/6,5,4,3,7,6,8,2,9,8,4,0,9,7,5,1,7,6,8,4, 7,6,5,4,9,7,5,8,9,5,8,4/), (/4,8/))
private

◆ tess3

integer(i4), dimension(4,27), parameter tess3 = RESHAPE((/16,17,19,18,9,15,19,18,10,4,17,18,7,12, 14,2,11,5,16,18,8,10,15,0,8,14,17,19,6,12,16,17,6,5,4,3,13,11,9,1,13,7,16,19,5,4,17,18,5, 16,17,18,7,14,17,19,7,16,17,19,7,12,14,17,7,12,16,17,8,10,15,18,8,15,19,18,8,17,19,18,8,10, 17,18,6,16,4,17,6,5,16,4,13,11,9,18,13,9,19,18,13,16,19,18,13,11,16,18/), (/4,27/))
private

◆ tess4

integer(i4), dimension(4,64), parameter tess4 = RESHAPE((/7,26,13,25,22,23,24,34,22,26,30,34,22,5, 11,24,31,26,25,34,31,23,27,34,32,33,27,34,8,33,14,27,10,4,23,24,10,32,16,27,6,4,5,3,6,22,12,23, 20,31,14,25,18,31,12,26,18,20,7,2,17,19,9,1,21,32,33,15,21,8,16,0,29,33,25,34,29,19,13,30,28,29, 30,34,28,32,24,34,28,17,11,30,28,29,9,15,26,30,25,34,26,13,30,25,33,27,25,34,33,14,27,25,22,4,5, 24,22,4,23,24,22,30,24,34,22,11,30,24,31,22,23,34,31,22,26,34,31,22,12,23,31,22,12,26,31,27,25, 34,31,14,27,25,8,32,16,27,8,32,33,27,10,23,24,34,10,23,27,34,10,32,24,34,10,32,27,34,6,22,5,23,6, 4,5,23,20,7,26,25,20,31,26,25,18,20,31,7,18,31,7,26,21,8,33,16,21,32,33,16,29,13,30,25,29,30,25, 34,28,32,33,34,28,29,33,34,28,17,19,30,28,29,19,30,28,29,33,15,28,32,33,15,28,29,19,9,28,17,19,9, 28,30,24,34,28,11,30,24/), (/4,64/))
private