|
The Open FUSION Toolkit 1.0.0-beta6
Modeling tools for plasma and fusion research and engineering
|
CAD curve class.
A curve is defined in terms of the parametric coordinate \( u \) as
\[ r (u) = \frac{\sum_0^n x_i \omega_i f^n_i (u) }{\sum_0^n \omega_i f^n_i (u)} \]
where \( n+1 \) is the order of the curve, \( \omega_i, x_i \) 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 curve 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 curve. | |
Public Attributes | |
| integer(i4) | id |
| Input ID of CAD object. | |
| integer(i4) | order |
| Curve order. | |
| real(r8), dimension(:,:), pointer | pt |
| Vertex locations [3,order]. | |
| real(r8), dimension(3, cad_ngrid) | rgrid |
| Object mesh. | |
| real(r8), dimension(:), pointer | wt |
| Weight values [order]. | |
|
pure virtualinherited |
Parametric point evaluation.
| [out] | pt | Position vector [3] |
| [in] | u | Parametric coordinate 1 |
| [in] | v | Parametric coordinate 2 |
| procedure eval | ( | class(cad_curve), 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 (ignored) |
| procedure grid | ( | class(cad_curve), intent(inout) | self | ) |
Generate grid over curve 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_curve), 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 (ignored) |
| procedure reflect | ( | class(cad_curve), intent(in) | self, |
| class(cad_curve), intent(out) | copy, | ||
| real(r8), intent(in) | tol, | ||
| integer(i4), intent(in) | k | ||
| ) |
Reflect curve.
| [in] | self | Source object to copy |
| [out] | copy | Reflected copy of the source curve |
| [in] | tol | Minimum distance from plane |
| [in] | k | Coordinate index for the reflection plane |
|
inherited |
Input ID of CAD object.
| integer(i4) order |
Curve order.
| real(r8), dimension(:,:), pointer pt |
Vertex locations [3,order].
| real(r8), dimension(:), pointer wt |
Weight values [order].