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
nurbs_surf Type Referenceabstract

Detailed Description

CAD surface class.

Inheritance diagram for nurbs_surf:
Inheritance graph
[legend]

Public Member Functions

procedure(nurbs_dummy_eval), deferred eval (self, pt, u, v)
 Parametric point evaluation.
 
procedure eval (self, pt, u, v)
 Parametric point evaluation.
 
procedure(nurbs_dummy_grid), deferred grid (self)
 Physical point location.
 
procedure grid (self)
 Generate grid over surface domain.
 
procedure(nurbs_dummy_find), deferred locate (self, pt, u, v, ierr)
 Physical point location.
 
procedure locate (self, pt, u, v, ierr)
 Physical point location.
 
procedure(nurbs_dummy_unwrap), deferred unwrap (self, u1, u2, v1, v2)
 Parametric point evaluation.
 
procedure unwrap (self, u1, u2, v1, v2)
 Parametric point evaluation.
 
procedure(nurbs_dummy_wrap), deferred wrap (self, u, v)
 Parametric point evaluation.
 
procedure wrap (self, u, v)
 Physical point location.
 

Public Attributes

real(r8), dimension(3) coord_scales = 1.d0
 Scaling for each coordinate.
 
real(r8), dimension(2, 2) domain
 Extent in parametric domain.
 
integer(i4id
 Input ID of CAD object.
 
integer(i4), dimension(2) nspan
 Size of span vectors.
 
logical, dimension(2) periodic = .FALSE.
 Surface is periodic.
 
logical planar = .FALSE.
 Surface is flat.
 
integer(i4reflect = -1
 Index to reflect.
 
real(r8), dimension(3, nurbs_ngrid, nurbs_ngridrgrid
 Object mesh.
 
integer(i4sid
 Surface ID in OFT indexing.
 
logical, dimension(2, 2) singular = .FALSE.
 Surface edge is singular.
 
real(r8), dimension(:), pointer span1
 Currently unused.
 
real(r8), dimension(:), pointer span2
 Currently unused.
 

Member Function/Subroutine Documentation

◆ eval() [1/2]

procedure(nurbs_dummy_eval), deferred eval ( class(nurbs_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
[in]selfNURBS object
[out]ptEvaluated position [3]
[in]uParametric coordinate 1
[in]vParametric coordinate 2 (unused if curve)

◆ eval() [2/2]

procedure eval ( class(nurbs_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
    [in]selfSurface object
    [out]ptPhysical position [3]
    [in]uParametric coordinate 1
    [in]vParametric coordinate 2

◆ grid() [1/2]

procedure(nurbs_dummy_grid), deferred grid ( class(nurbs_entity), intent(inout)  self)
pure virtualinherited

Physical point location.

Parameters
[in,out]selfNURBS object

◆ grid() [2/2]

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

Generate grid over surface domain.

Parameters
[in,out]selfSurface object

◆ locate() [1/2]

procedure(nurbs_dummy_find), deferred locate ( class(nurbs_entity), intent(in), target  self,
real(r8), dimension(3), intent(in)  pt,
real(r8), intent(out)  u,
real(r8), intent(out)  v,
integer(i4), intent(out)  ierr 
)
pure virtualinherited

Physical point location.

Parameters
[in]selfNURBS object
[in]ptTest position [3]
[out]uParametric coordinate 1
[out]vParametric coordinate 2 (unused if curve)
[out]ierrError status (point not found if ierr<0)

◆ locate() [2/2]

procedure locate ( class(nurbs_surf), intent(in), target  self,
real(r8), dimension(3), intent(in)  pt,
real(r8), intent(out)  u,
real(r8), intent(out)  v,
integer(i4), intent(out)  ierr 
)

Physical point location.

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

◆ unwrap() [1/2]

procedure(nurbs_dummy_unwrap), deferred unwrap ( class(nurbs_entity), intent(in)  self,
real(r8), intent(inout)  u1,
real(r8), intent(inout)  u2,
real(r8), intent(inout)  v1,
real(r8), intent(inout)  v2 
)
pure virtualinherited

Parametric point evaluation.

Parameters
[in]selfNURBS object
[in,out]u1Parametric coordinate 1 of first point
[in,out]u2Parametric coordinate 2 of first point (unused if curve)
[in,out]v1Parametric coordinate 1 of second point
[in,out]v2Parametric coordinate 2 of second point (unused if curve)

◆ unwrap() [2/2]

procedure unwrap ( class(nurbs_surf), intent(in)  self,
real(r8), intent(inout)  u1,
real(r8), intent(inout)  u2,
real(r8), intent(inout)  v1,
real(r8), intent(inout)  v2 
)

Parametric point evaluation.

  • Example: For a periodic domain of \( [0,2 \pi] (3 \pi/4,0) -> (-\pi/4,0) \)
    Parameters
    [in]selfSurface object
    [in,out]u1Parametric coordinate 1 of first point
    [in,out]u2Parametric coordinate 2 of first point
    [in,out]v1Parametric coordinate 1 of second point
    [in,out]v2Parametric coordinate 2 of second point

◆ wrap() [1/2]

procedure(nurbs_dummy_wrap), deferred wrap ( class(nurbs_entity), intent(in)  self,
real(r8), intent(inout)  u,
real(r8), intent(inout)  v 
)
pure virtualinherited

Parametric point evaluation.

Parameters
[in]selfNURBS object
[in,out]uParametric coordinate 1
[in,out]vParametric coordinate 2 (unused if curve)

◆ wrap() [2/2]

procedure wrap ( class(nurbs_surf), intent(in)  self,
real(r8), intent(inout)  u,
real(r8), intent(inout)  v 
)

Physical point location.

  • Example: For a periodic domain of \( [0,2 \pi] (-\pi/4,0) -> (3 \pi/4,0) \)
    Parameters
    [in]selfSurface object
    [in,out]uParametric coordinate 1
    [in,out]vParametric coordinate 2

Member Data Documentation

◆ coord_scales

real(r8), dimension(3) coord_scales = 1.d0
inherited

Scaling for each coordinate.

◆ domain

real(r8), dimension(2,2) domain

Extent in parametric domain.

◆ id

integer(i4) id
inherited

Input ID of CAD object.

◆ nspan

integer(i4), dimension(2) nspan

Size of span vectors.

◆ periodic

logical, dimension(2) periodic = .FALSE.

Surface is periodic.

◆ planar

logical planar = .FALSE.

Surface is flat.

◆ reflect

integer(i4) reflect = -1
inherited

Index to reflect.

◆ rgrid

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

Object mesh.

◆ sid

integer(i4) sid

Surface ID in OFT indexing.

◆ singular

logical, dimension(2,2) singular = .FALSE.

Surface edge is singular.

◆ span1

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

Currently unused.

◆ span2

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

Currently unused.


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