The Open FUSION Toolkit 1.0.0-8905cc5
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
cad_surf Type Referenceabstract

Detailed Description

CAD surface class.

A surface is defined in terms of the parametric coordinates \( u,v \) as

\[ r (u,v) = \frac{ \sum_{i=0}^n \sum_{j=0}^m x_{ij} \omega_{ij} f^n_i (u) f^m_j (v) }{\sum_{i=0}^n \sum_{j=0}^m \omega_{ij} f^n_i (u) f^m_j (v)} \]

where \( n+1, m+1 \) are the orders of each bounding curve, \( \omega_{ij}, x_{ij} \) are the weights and positions of the control points, and \( f^k_l \) is the Bernstein polynomial of degree \( k \) and kind \( l \).

Inheritance diagram for cad_surf:
Inheritance graph
[legend]

Public Member Functions

procedure(cad_dummy_eval), deferred eval (self, pt, u, v)
 Parametric point evaluation.
 
procedure eval (self, pt, u, v)
 Parametric point evaluation.
 
procedure grid (self)
 Generate grid over surface domain.
 
procedure(cad_dummy_find), deferred locate (self, pt, u, v)
 Physical point location.
 
procedure locate (self, pt, u, v)
 Physical point location.
 
procedure reflect (self, copy, tol, k)
 Reflect surface.
 

Public Attributes

integer(i4id
 Input ID of CAD object.
 
integer(i4), dimension(2) order
 Surface order [2].
 
real(r8), dimension(:,:,:), pointer pt
 Vertex locations [3,order(1),order(2)].
 
real(r8), dimension(3, cad_ngrid, cad_ngridrgrid
 Object mesh.
 
real(r8), dimension(:,:), pointer wt
 Weight values [order(1),order(2)].
 

Member Function/Subroutine Documentation

◆ eval() [1/2]

procedure(cad_dummy_eval), deferred eval ( class(cad_entity), intent(in)  self,
real(r8), dimension(3), intent(out)  pt,
real(r8), intent(in)  u,
real(r8), intent(in)  v 
)
pure virtualinherited

Parametric point evaluation.

Parameters
[out]ptPosition vector [3]
[in]uParametric coordinate 1
[in]vParametric coordinate 2

◆ eval() [2/2]

procedure eval ( class(cad_surf), intent(in)  self,
real(r8), dimension(3), intent(out)  pt,
real(r8), intent(in)  u,
real(r8), intent(in)  v 
)

Parametric point evaluation.

  • (u,v) -> (x,y,z)
    Parameters
    [out]ptPosition vector [3]
    [in]uParametric coordinate 1
    [in]vParametric coordinate 2

◆ grid()

procedure grid ( class(cad_surf), intent(inout)  self)

Generate grid over surface domain.

◆ locate() [1/2]

procedure(cad_dummy_find), deferred locate ( class(cad_entity), intent(in)  self,
real(r8), dimension(3), intent(in)  pt,
real(r8), intent(out)  u,
real(r8), intent(out)  v 
)
pure virtualinherited

Physical point location.

Parameters
[in]ptPosition vector [3]
[out]uParametric coordinate 1
[out]vParametric coordinate 2

◆ locate() [2/2]

procedure locate ( class(cad_surf), intent(in)  self,
real(r8), dimension(3), intent(in)  pt,
real(r8), intent(out)  u,
real(r8), intent(out)  v 
)

Physical point location.

  • (x,y,z) -> (u,v)
    Parameters
    [in]ptPosition vector [3]
    [out]uParametric coordinate 1
    [out]vParametric coordinate 2

◆ reflect()

procedure reflect ( class(cad_surf), intent(in)  self,
class(cad_surf), intent(out)  copy,
real(r8), intent(in)  tol,
integer(i4), intent(in)  k 
)

Reflect surface.

Parameters
[in]selfSource surface to copy
[out]copyReflected copy of the source surface
[in]tolMinimum distance from plane
[in]kCoordinate index for the reflection plane

Member Data Documentation

◆ id

integer(i4) id
inherited

Input ID of CAD object.

◆ order

integer(i4), dimension(2) order

Surface order [2].

◆ pt

real(r8), dimension(:,:,:), pointer pt

Vertex locations [3,order(1),order(2)].

◆ rgrid

real(r8), dimension(3,cad_ngrid,cad_ngrid) rgrid

Object mesh.

◆ wt

real(r8), dimension(:,:), pointer wt

Weight values [order(1),order(2)].


The documentation for this type was generated from the following file: