Routines to interpolate fields on a given element on a point in that element with given r,s,t coordinates.
More...
|
subroutine | point_interpolator_init (this, Xh) |
| Initialization of point interpolation. More...
|
|
subroutine | point_interpolator_free (this) |
| Free pointers. More...
|
|
subroutine | point_interpolator_compute_weights (this, r, s, t, wr, ws, wt) |
| Computes interpolation weights \( w_r, w_s, w_t \) for a list of points. More...
|
|
real(kind=rp) function, dimension(:), allocatable | point_interpolator_interpolate_scalar (this, rst, X) |
| Interpolates a scalar field \( X \) on a set of \( N \) points \( \mathbf{r}_i , i\in[1,N]\). Returns a vector of N coordinates \( [x_i(\mathbf{r}_i)], i\in[1,N]\). More...
|
|
type(point_t) function, dimension(:), allocatable | point_interpolator_interpolate_vector (this, rst, X, Y, Z) |
| Interpolates a vector field \( \vec f = (X,Y,Z) \) on a set of \( N \) points \( \mathbf{r}_i \). Returns an array of N points \( [x(\mathbf{r}_i), y(\mathbf{r}_i), z(\mathbf{r}_i)], i\in[1,N]\). More...
|
|
type(point_t) function | point_interpolator_interpolate_vector_jacobian (this, jac, rst, X, Y, Z) |
| Interpolates a vector field \( \vec f = (X,Y,Z) \) and constructs the Jacobian at a point \( (r,s,t) \). Returns a vector \( [x(\mathbf{r}_i), y(\mathbf{r}_i), z(\mathbf{r}_i)], i\in[1,N]\). More...
|
|
real(kind=rp) function, dimension(3, 3) | point_interpolator_interpolate_jacobian (this, rst, X, Y, Z) |
| Constructs the Jacobian, returns a 3-by-3 array where \( [J(\mathbf{r}]_{ij} = \frac{d\mathbf{x}_i}{d\mathbf{r}_j}\). More...
|
|
Routines to interpolate fields on a given element on a point in that element with given r,s,t coordinates.
type(point_t) function, dimension(:), allocatable point_interpolator::point_interpolator_interpolate_vector |
( |
class(point_interpolator_t), intent(in) |
this, |
|
|
type(point_t), dimension(:), intent(in) |
rst, |
|
|
real(kind=rp), dimension(this%xh%lx, this%xh%ly, this%xh%lz), intent(inout) |
X, |
|
|
real(kind=rp), dimension(this%xh%lx, this%xh%ly, this%xh%lz), intent(inout) |
Y, |
|
|
real(kind=rp), dimension(this%xh%lx, this%xh%ly, this%xh%lz), intent(inout) |
Z |
|
) |
| |
|
private |
Interpolates a vector field \( \vec f = (X,Y,Z) \) on a set of \( N \) points \( \mathbf{r}_i \). Returns an array of N points \( [x(\mathbf{r}_i), y(\mathbf{r}_i), z(\mathbf{r}_i)], i\in[1,N]\).
- Parameters
-
N | number of points (use 1 to interpolate a scalar). |
X | Values of the field \( X \) at GLL points in one element. |
Y | Values of the field \( Y \) at GLL points in one element. |
Z | Values of the field \( Z \) at GLL points in one element. |
Definition at line 200 of file point_interpolator.f90.
type(point_t) function point_interpolator::point_interpolator_interpolate_vector_jacobian |
( |
class(point_interpolator_t), intent(in) |
this, |
|
|
real(kind=rp), dimension(3,3), intent(inout) |
jac, |
|
|
type(point_t), intent(in) |
rst, |
|
|
real(kind=rp), dimension(this%xh%lx, this%xh%ly, this%xh%lz), intent(inout) |
X, |
|
|
real(kind=rp), dimension(this%xh%lx, this%xh%ly, this%xh%lz), intent(inout) |
Y, |
|
|
real(kind=rp), dimension(this%xh%lx, this%xh%ly, this%xh%lz), intent(inout) |
Z |
|
) |
| |
|
private |
Interpolates a vector field \( \vec f = (X,Y,Z) \) and constructs the Jacobian at a point \( (r,s,t) \). Returns a vector \( [x(\mathbf{r}_i), y(\mathbf{r}_i), z(\mathbf{r}_i)], i\in[1,N]\).
- Parameters
-
jac | Jacobian. |
rst | r,s,t coordinates; |
X | Values of the field \( X \) at GLL points in one element. |
Y | Values of the field \( Y \) at GLL points in one element. |
Z | Values of the field \( Z \) at GLL points in one element. |
Definition at line 274 of file point_interpolator.f90.