The Open FUSION Toolkit 1.0.0-8905cc5
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].