|
The Open FUSION Toolkit 1.0.0-beta6
Modeling tools for plasma and fusion research and engineering
|
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 \).

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(i4) | id |
| 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_ngrid) | rgrid |
| Object mesh. | |
| real(r8), dimension(:,:), pointer | wt |
| Weight values [order(1),order(2)]. | |
|
pure virtualinherited |
Parametric point evaluation.
| [out] | pt | Position vector [3] |
| [in] | u | Parametric coordinate 1 |
| [in] | v | Parametric coordinate 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.
| [out] | pt | Position vector [3] |
| [in] | u | Parametric coordinate 1 |
| [in] | v | Parametric coordinate 2 |
| procedure grid | ( | class(cad_surf), intent(inout) | self | ) |
Generate grid over surface domain.
|
pure virtualinherited |
Physical point location.
| [in] | pt | Position vector [3] |
| [out] | u | Parametric coordinate 1 |
| [out] | v | Parametric coordinate 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.
| [in] | pt | Position vector [3] |
| [out] | u | Parametric coordinate 1 |
| [out] | v | Parametric coordinate 2 |
| 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.
| [in] | self | Source surface to copy |
| [out] | copy | Reflected copy of the source surface |
| [in] | tol | Minimum distance from plane |
| [in] | k | Coordinate index for the reflection plane |
|
inherited |
Input ID of CAD object.
| integer(i4), dimension(2) order |
Surface order [2].