![]() |
IgANet
IgANets - Isogeometric Analysis Networks
|
B-spline (common high-level functionality) More...
#include </home/runner/work/iganet/iganet/include/bspline.hpp>
Public Types | |
template<typename real_t , short_t GeoDim, short_t... Degrees> | |
using | derived_self_type = BSplineCommon< typename BSplineCore::template derived_self_type< real_t, GeoDim, Degrees... > > |
Deduces the derived self-type when exposed to different class template parameters real_t and GeoDim , and the Degrees parameter pack. | |
template<template< typename, short_t, short_t... > class T, std::make_signed< short_t >::type degree_elevate = 0> | |
using | derived_type = BSplineCommon< typename BSplineCore::template derived_type< T, degree_elevate > > |
Deduces the type of the template template parameter T when exposed to the class template parameters real_t and GeoDim , and the Degrees parameter pack. The optional template parameter degree_elevate can be used to (de-)elevate the degrees by an additive constant. | |
using | Ptr = std::shared_ptr< BSplineCommon > |
Shared pointer for BSplineCommon. | |
template<typename other_t > | |
using | real_derived_self_type = BSplineCommon< typename BSplineCore::template real_derived_self_type< other_t > > |
Deduces the derived self-type when exposed to a different class template parameter real_t | |
template<std::make_signed< short_t >::type degree_elevate = 0> | |
using | self_type = BSplineCommon< typename BSplineCore::template self_type< degree_elevate > > |
Deduces the self-type possibly degrees (de-)elevated by the additive constant degree_elevate | |
using | uPtr = std::unique_ptr< BSplineCommon > |
Unique pointer for BSplineCommon. | |
Public Member Functions | |
BSplineCommon (BSplineCommon &&)=default | |
Move constructor. | |
BSplineCommon (BSplineCommon &&other, utils::TensorArray< BSplineCore::geoDim_ > &&coeffs) | |
Move constructor with external coefficients. | |
BSplineCommon (const BSplineCommon &)=default | |
Copy constructor. | |
BSplineCommon (const BSplineCommon &other, bool clone) | |
Copy/clone constructor. | |
BSplineCommon (const BSplineCommon &other, const utils::TensorArray< BSplineCore::geoDim_ > &coeffs, bool clone=false) | |
Copy constructor with external coefficients. | |
auto | abs_diff (const BSplineCommon &other, int dim=-1) |
Computes the absolute difference between two compatible B-spline objects. | |
auto | boundingBox () const |
Computes the bounding box of the B-spline object. | |
auto | clone () const |
Returns a clone of the B-spline object. | |
template<bool memory_optimized = false> | |
auto | curl (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices) const |
Returns a block-tensor with the curl of the B-spline object with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | curl (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices) const |
Returns a block-tensor with the curl of the B-spline object with respect to the parametric variables. | |
auto | diff (const BSplineCommon &other, int dim=-1) |
Computes the difference between two compatible B-spline objects. | |
template<bool memory_optimized = false> | |
auto | div (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices) const |
Returns a block-tensor with the divergence of the B-spline object with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | div (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices) const |
Returns a block-tensor with the divergence of the B-spline object with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | grad (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices) const |
Returns a block-tensor with the gradient of the B-spline object in the points xi with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | grad (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices) const |
Returns a block-tensor with the gradient of the B-spline object in the points xi with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | hess (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices) const |
Returns a block-tensor with the Hessian of the B-spline object in the points xi with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | hess (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices) const |
Returns a block-tensor with the Hessian of the B-spline object in the points xi with respect to the parametric variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | icurl (const Geometry &G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G, const torch::Tensor &coeff_indices_G) const |
Returns a block-tensor with the curl of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | icurl (const Geometry G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G) const |
Returns a block-tensor with the curl of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | idiv (const Geometry &G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G, const torch::Tensor &coeff_indices_G) const |
Returns a block-tensor with the divergence of the B-spline object with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | idiv (const Geometry G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G) const |
Returns a block-tensor with the divergence of the B-spline object with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | igrad (const Geometry &G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G, const torch::Tensor &coeff_indices_G) const |
Returns a block-tensor with the gradient of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | igrad (const Geometry G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G) const |
Returns a block-tensor with the gradient of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | ihess (const Geometry &G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G, const torch::Tensor &coeff_indices_G) const |
Returns a block-tensor with the Hessian of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | ihess (const Geometry G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G) const |
Returns a block-tensor with the Hessian of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | ijac (const Geometry &G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G, const torch::Tensor &coeff_indices_G) const |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | ijac (const Geometry G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G) const |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | ilapl (const Geometry &G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G, const torch::Tensor &coeff_indices_G) const |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false, typename Geometry > | |
auto | ilapl (const Geometry G, const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const utils::TensorArray< Geometry::parDim()> &knot_indices_G) const |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi with respect to the physical variables. | |
template<bool memory_optimized = false> | |
auto | jac (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices) const |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | jac (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices) const |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | lapl (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices) const |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi with respect to the parametric variables. | |
template<bool memory_optimized = false> | |
auto | lapl (const utils::TensorArray< BSplineCore::parDim_ > &xi, const utils::TensorArray< BSplineCore::parDim_ > &knot_indices, const torch::Tensor &coeff_indices) const |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi with respect to the parametric variables. | |
BSplineCommon | operator* (std::array< typename BSplineCore::value_type, BSplineCore::geoDim()> v) const |
Returns a new B-spline object whose coefficients are scaled by a vector. | |
BSplineCommon | operator* (typename BSplineCore::value_type s) const |
Returns a new B-spline object whose coefficients are scaled by a scalar. | |
BSplineCommon & | operator*= (std::array< typename BSplineCore::value_type, BSplineCore::geoDim()> v) |
Scales the coefficients by a vector. | |
BSplineCommon & | operator*= (typename BSplineCore::value_type s) |
Scales the coefficients by a scalar. | |
BSplineCommon | operator+ (const BSplineCommon &other) const |
Returns a new B-spline object whose coefficients are the sum of that of two compatible B-spline objects. | |
BSplineCommon & | operator+= (const BSplineCommon &other) |
Adds the coefficients of another B-spline object. | |
BSplineCommon | operator- (const BSplineCommon &other) const |
Returns a new B-spline object whose coefficients are the difference of that of two compatible B-spline objects. | |
BSplineCommon & | operator-= (const BSplineCommon &other) |
Substracts the coefficients of another B-spline object. | |
BSplineCommon | operator/ (std::array< typename BSplineCore::value_type, BSplineCore::geoDim()> v) const |
Returns a new B-spline object whose coefficients are scaled by a vector. | |
BSplineCommon | operator/ (typename BSplineCore::value_type s) const |
Returns a new B-spline object whose coefficients are scaled by a scalar. | |
BSplineCommon & | operator/= (std::array< typename BSplineCore::value_type, BSplineCore::geoDim()> v) |
Scales the coefficients by a vector. | |
BSplineCommon & | operator/= (typename BSplineCore::value_type s) |
Scales the coefficients by a scalar. | |
template<typename Backend = void, typename BSplineCoreColor > | |
auto | plot (const BSplineCommon< BSplineCoreColor > &color, const nlohmann::json &json={}) const |
template<typename Backend = void, typename BSplineCoreColor > | |
auto | plot (const BSplineCommon< BSplineCoreColor > &color, const std::initializer_list< utils::TensorArray< BSplineCore::parDim_ > > &xi, const nlohmann::json &json={}) const |
template<typename Backend = void, typename BSplineCoreColor > | |
auto | plot (const BSplineCommon< BSplineCoreColor > &color, const utils::TensorArray< BSplineCore::parDim_ > &xi, const nlohmann::json &json={}) const |
template<typename Backend = void> | |
auto | plot (const nlohmann::json &json={}) const |
template<typename Backend = void> | |
auto | plot (const std::initializer_list< utils::TensorArray< BSplineCore::parDim_ > > &xi, const nlohmann::json &json={}) const |
template<typename Backend = void> | |
auto | plot (const utils::TensorArray< BSplineCore::parDim_ > &xi, const nlohmann::json &json={}) const |
virtual void | pretty_print (std::ostream &os=Log(log::info)) const noexcept override |
Returns a string representation of the BSplineCommon object. | |
auto | rotate (std::array< typename BSplineCore::value_type, 3 > angle) |
Rotates the B-spline object by three angles in 3d. | |
auto | rotate (typename BSplineCore::value_type angle) |
Rotates the B-spline object by an angle in 2d. | |
auto | scale (std::array< typename BSplineCore::value_type, BSplineCore::geoDim()> v) |
Scales the B-spline object by a vector. | |
auto | scale (typename BSplineCore::value_type s, int dim=-1) |
Scales the B-spline object by a scalar. | |
template<typename real_t > | |
auto | to () const |
Returns a copy of the B-spline object with real_t type. | |
template<typename real_t > | |
auto | to (Options< real_t > options) const |
Returns a copy of the B-spline object with settings from options. | |
auto | to (torch::Device device) const |
Returns a copy of the B-spline object with settings from device. | |
auto | translate (std::array< typename BSplineCore::value_type, BSplineCore::geoDim()> v) |
Translates the B-spline object by a vector. | |
BSplineCommon & | uniform_refine (int numRefine=1, int dim=-1) |
Returns the B-spline object with uniformly refined knot and coefficient vectors. | |
Additional Inherited Members | |
![]() | |
virtual const std::string & | name () const noexcept |
Returns the full qualified name of the object. | |
![]() | |
at::optional< std::string > | name_ |
String storing the full qualified name of the object. | |
B-spline (common high-level functionality)
This class implements some high-level common functionality of all B-spline classes, e.g., plotting which rely on low-level functionality that is implemented differently for uniform and non-uniform B-spline. C++ suggests to use virtual methods for this purpose and implement the common functionality in a base class. However, this is not performant for low-level functionality, e.g., point-wise function evaluation which is called repeatedly. Moreover, virtual methods do not work with templated functions, which is why we implement high-level common functionality here and 'inject' the core functionality by deriving from a particular base class.
using iganet::BSplineCommon< BSplineCore >::derived_self_type = BSplineCommon<typename BSplineCore::template derived_self_type< real_t, GeoDim, Degrees...> > |
Deduces the derived self-type when exposed to different class template parameters real_t
and GeoDim
, and the Degrees
parameter pack.
using iganet::BSplineCommon< BSplineCore >::derived_type = BSplineCommon< typename BSplineCore::template derived_type<T, degree_elevate> > |
Deduces the type of the template template parameter T
when exposed to the class template parameters real_t
and GeoDim
, and the Degrees
parameter pack. The optional template parameter degree_elevate
can be used to (de-)elevate the degrees by an additive constant.
using iganet::BSplineCommon< BSplineCore >::Ptr = std::shared_ptr<BSplineCommon> |
Shared pointer for BSplineCommon.
using iganet::BSplineCommon< BSplineCore >::real_derived_self_type = BSplineCommon< typename BSplineCore::template real_derived_self_type<other_t> > |
Deduces the derived self-type when exposed to a different class template parameter real_t
using iganet::BSplineCommon< BSplineCore >::self_type = BSplineCommon<typename BSplineCore::template self_type<degree_elevate> > |
Deduces the self-type possibly degrees (de-)elevated by the additive constant degree_elevate
using iganet::BSplineCommon< BSplineCore >::uPtr = std::unique_ptr<BSplineCommon> |
Unique pointer for BSplineCommon.
|
default |
Copy constructor.
|
inline |
Copy/clone constructor.
|
inline |
Copy constructor with external coefficients.
|
default |
Move constructor.
|
inline |
Move constructor with external coefficients.
|
inline |
Computes the absolute difference between two compatible B-spline objects.
If dim = -1
the full coefficient vector of other is subtracted from that of the current B-spline object. Otherwise, only the specified direction is subtracted
|
inline |
Computes the bounding box of the B-spline object.
|
inline |
Returns a clone of the B-spline object.
|
inline |
Returns a block-tensor with the curl of the B-spline object with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the curl |
xi
\[ \nabla_{\boldsymbol{\xi}} \times \mathbf{u} = \begin{bmatrix} \mathbf{i}_0 & \cdots & \mathbf{i}_{d_\text{par}} \\ \frac{\partial}{\partial\xi_0} & \cdots & \frac{\partial}{\partial\xi_{d_\text{par}}} \\ u_0 & \cdots & u_{d_\text{par}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the curl of the B-spline object with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the curl |
xi
\[ \nabla_{\boldsymbol{\xi}} \times \mathbf{u} = \begin{bmatrix} \mathbf{i}_0 & \cdots & \mathbf{i}_{d_\text{par}} \\ \frac{\partial}{\partial\xi_0} & \cdots & \frac{\partial}{\partial\xi_{d_\text{par}}} \\ u_0 & \cdots & u_{d_\text{par}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the curl of the B-spline object with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the curl |
[in] | knot_indices | Knot indices where to evaluate the curl |
\[ \nabla_{\boldsymbol{\xi}} \times \mathbf{u} = \begin{bmatrix} \mathbf{i}_0 & \cdots & \mathbf{i}_{d_\text{par}} \\ \frac{\partial}{\partial\xi_0} & \cdots & \frac{\partial}{\partial\xi_{d_\text{par}}} \\ u_0 & \cdots & u_{d_\text{par}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the curl of the B-spline object with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the curl |
[in] | knot_indices | Knot indices where to evaluate the curl |
[in] | coeff_indices | Coefficient indices where to evaluate the curl |
\[ \nabla_{\boldsymbol{\xi}} \cdot \mathbf{u} = \text{trace} ( J_{\boldsymbol{\xi}}(u) ) = \frac{\partial u_0}{\partial \xi_0} + \frac{\partial u_1}{\partial \xi_1} + \dots \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \]
curl = 0, 0, du_y / dx - du_x / dy
Only the third component is returned
curl = du_z / dy - du_y / dz, du_x / dz - du_z / dx, du_y / dx - du_x / dy
|
inline |
Computes the difference between two compatible B-spline objects.
If dim = -1
the full coefficient vector of other is subtracted from that of the current B-spline object. Otherwise, only the specified direction is subtracted
|
inline |
Returns a block-tensor with the divergence of the B-spline object with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the divergence |
xi
\[ \nabla_{\boldsymbol{\xi}} \cdot \mathbf{u} = \text{trace} ( J_{\boldsymbol{\xi}}(u) ) = \frac{\partial u_0}{\partial \xi_0} + \frac{\partial u_1}{\partial \xi_1} + \dots \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \]
|
inline |
Returns a block-tensor with the divergence of the B-spline object with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the divergence |
xi
\[ \nabla_{\boldsymbol{\xi}} \cdot \mathbf{u} = \text{trace} ( J_{\boldsymbol{\xi}}(u) ) = \frac{\partial u_0}{\partial \xi_0} + \frac{\partial u_1}{\partial \xi_1} + \dots \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \]
|
inline |
Returns a block-tensor with the divergence of the B-spline object with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the divergence |
[in] | knot_indices | Knot indices where to evaluate the divergence |
\[ \nabla_{\boldsymbol{\xi}} \cdot \mathbf{u} = \text{trace} ( J_{\boldsymbol{\xi}}(u) ) = \frac{\partial u_0}{\partial \xi_0} + \frac{\partial u_1}{\partial \xi_1} + \dots \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \]
|
inline |
Returns a block-tensor with the divergence of the B-spline object with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the divergence |
[in] | knot_indices | Knot indices where to evaluate the divergence |
[in] | coeff_indices | Coefficient indices where to evaluate the divergence |
\[ \nabla_{\boldsymbol{\xi}} \cdot \mathbf{u} = \text{trace} ( J_{\boldsymbol{\xi}}(u) ) = \frac{\partial u_0}{\partial \xi_0} + \frac{\partial u_1}{\partial \xi_1} + \dots \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \]
|
inline |
Returns a block-tensor with the gradient of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the gradient |
xi
\[ \nabla_{\boldsymbol{\xi}}u = \left(\frac{\partial u}{\partial \xi_0}, \frac{\partial u}{\partial \xi_1}, \dots \frac{\partial u}{\partial \xi_{d_\text{par}}}\right) \]
|
inline |
Returns a block-tensor with the gradient of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the gradient |
xi
\[ \nabla_{\boldsymbol{\xi}}u = \left(\frac{\partial u}{\partial \xi_0}, \frac{\partial u}{\partial \xi_1}, \dots \frac{\partial u}{\partial \xi_{d_\text{par}}}\right) \]
|
inline |
Returns a block-tensor with the gradient of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the gradient |
[in] | knot_indices | Knot indices where to evaluate the gradient |
\[ \nabla_{\boldsymbol{\xi}}u = \left(\frac{\partial u}{\partial \xi_0}, \frac{\partial u}{\partial \xi_1}, \dots \frac{\partial u}{\partial \xi_{d_\text{par}}}\right) \]
|
inline |
Returns a block-tensor with the gradient of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the gradient |
[in] | knot_indices | Knot indices where to evaluate the gradient |
[in] | coeff_indices | Coefficient indices where to evaluate the gradient |
\[ \nabla_{\boldsymbol{\xi}}u = \left(\frac{\partial u}{\partial \xi_0}, \frac{\partial u}{\partial \xi_1}, \dots \frac{\partial u}{\partial \xi_{d_\text{par}}}\right) \]
|
inline |
Returns a block-tensor with the Hessian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Hessian |
xi
\[ H_{\boldsymbol{\xi}}(u) = \begin{bmatrix} \frac{\partial^2 u}{\partial^2 \xi_0}& \frac{\partial^2 u}{\partial \xi_0\partial \xi_1}& \dots& \frac{\partial^2 u}{\partial \xi_0\partial \xi_{d_\text{par}}} \\ \frac{\partial^2 u}{\partial \xi_1\partial \xi_0}& \frac{\partial^2 u}{\partial^2 \xi_1}& \dots& \frac{\partial^2 u}{\partial \xi_1\partial \xi_{d_\text{par}}} \\ \vdots& \vdots & \ddots & \vdots \\ \frac{\partial^2 u}{\partial \xi_{d_\text{par}}\partial \xi_0}& \frac{\partial^2 u}{\partial \xi_{d_\text{par}}\partial \xi_1}& \dots& \frac{\partial^2 u}{\partial^2 \xi_{d_\text{par}}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the Hessian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Hessian |
xi
\[ H_{\boldsymbol{\xi}}(u) = \begin{bmatrix} \frac{\partial^2 u}{\partial^2 \xi_0}& \frac{\partial^2 u}{\partial \xi_0\partial \xi_1}& \dots& \frac{\partial^2 u}{\partial \xi_0\partial \xi_{d_\text{par}}} \\ \frac{\partial^2 u}{\partial \xi_1\partial \xi_0}& \frac{\partial^2 u}{\partial^2 \xi_1}& \dots& \frac{\partial^2 u}{\partial \xi_1\partial \xi_{d_\text{par}}} \\ \vdots& \vdots & \ddots & \vdots \\ \frac{\partial^2 u}{\partial \xi_{d_\text{par}}\partial \xi_0}& \frac{\partial^2 u}{\partial \xi_{d_\text{par}}\partial \xi_1}& \dots& \frac{\partial^2 u}{\partial^2 \xi_{d_\text{par}}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the Hessian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the gradient |
[in] | knot_indices | Knot indices where to evaluate the Hessian |
\[ H_{\boldsymbol{\xi}}(u) = \begin{bmatrix} \frac{\partial^2 u}{\partial^2 \xi_0}& \frac{\partial^2 u}{\partial \xi_0\partial \xi_1}& \dots& \frac{\partial^2 u}{\partial \xi_0\partial \xi_{d_\text{par}}} \\ \frac{\partial^2 u}{\partial \xi_1\partial \xi_0}& \frac{\partial^2 u}{\partial^2 \xi_1}& \dots& \frac{\partial^2 u}{\partial \xi_1\partial \xi_{d_\text{par}}} \\ \vdots& \vdots & \ddots & \vdots \\ \frac{\partial^2 u}{\partial \xi_{d_\text{par}}\partial \xi_0}& \frac{\partial^2 u}{\partial \xi_{d_\text{par}}\partial \xi_1}& \dots& \frac{\partial^2 u}{\partial^2 \xi_{d_\text{par}}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the Hessian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Hessian |
[in] | knot_indices | Knot indices where to evaluate the Hessian |
[in] | coeff_indices | Coefficient indices where to evaluate the Hessian |
\[ H_{\boldsymbol{\xi}}(u) = \begin{bmatrix} \frac{\partial^2 u}{\partial^2 \xi_0}& \frac{\partial^2 u}{\partial \xi_0\partial \xi_1}& \dots& \frac{\partial^2 u}{\partial \xi_0\partial \xi_{d_\text{par}}} \\ \frac{\partial^2 u}{\partial \xi_1\partial \xi_0}& \frac{\partial^2 u}{\partial^2 \xi_1}& \dots& \frac{\partial^2 u}{\partial \xi_1\partial \xi_{d_\text{par}}} \\ \vdots& \vdots & \ddots & \vdots \\ \frac{\partial^2 u}{\partial \xi_{d_\text{par}}\partial \xi_0}& \frac{\partial^2 u}{\partial \xi_{d_\text{par}}\partial \xi_1}& \dots& \frac{\partial^2 u}{\partial^2 \xi_{d_\text{par}}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the curl of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the curl |
\[ \nabla \times {\mathbf{x}} u = \nabla_{\boldsymbol{\xi}} \times u \, \operatorname{det}(\operatorname{det}(J_{\boldsymbol{\xi}}(G))^{-1} \, J_{\boldsymbol{\xi}}(G) , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the curl of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the curl |
\[ \nabla \times {\mathbf{x}} u = \nabla_{\boldsymbol{\xi}} \times u \, \operatorname{det}(\operatorname{det}(J_{\boldsymbol{\xi}}(G))^{-1} \, J_{\boldsymbol{\xi}}(G) , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the curl of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the gradient |
[in] | knot_indices | Knot indices where to evaluate the gradient |
[in] | knot_indices_G | Knot indices where to evaluate the Jacobian of G |
[in] | coeff_indices | Coefficient indices where to evaluate the gradient |
[in] | coeff_indices_G | Coefficient indices where to evaluate the Jacobian of G |
\[ \nabla \times {\mathbf{x}} u = \nabla_{\boldsymbol{\xi}} \times u \, \operatorname{det}(\operatorname{det}(J_{\boldsymbol{\xi}}(G))^{-1} \, J_{\boldsymbol{\xi}}(G) , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the curl of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the gradient |
[in] | knot_indices | Knot indices where to evaluate the gradient |
[in] | knot_indices_G | Knot indices where to evaluate Jacobian of G |
\[ \nabla \times {\mathbf{x}} u = \nabla_{\boldsymbol{\xi}} \times u \, \operatorname{det}(\operatorname{det}(J_{\boldsymbol{\xi}}(G))^{-1} \, J_{\boldsymbol{\xi}}(G) , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the divergence of the B-spline object with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the divergence |
\[ \nabla_{\mathbf{x}} \cdot \mathbf{u} = \text{trace} ( J_{\mathbf{x}}(u) ) = \frac{\partial u_0}{\partial x_0} + \frac{\partial u_1}{\partial x_1} + \frac{\partial u_{d_\text{geo}}}{\partial x_{d_\text{par}}} \]
|
inline |
Returns a block-tensor with the divergence of the B-spline object with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the divergence |
\[ \nabla_{\mathbf{x}} \cdot \mathbf{u} = \text{trace} ( J_{\mathbf{x}}(u) ) = \frac{\partial u_0}{\partial x_0} + \frac{\partial u_1}{\partial x_1} + \frac{\partial u_{d_\text{geo}}}{\partial x_{d_\text{par}}} \]
|
inline |
Returns a block-tensor with the divergence of the B-spline object with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the divergence |
[in] | knot_indices | Knot indices where to evaluate the divergence |
[in] | knot_indices_G | Knot indices where to evaluate the Jacobian of G |
[in] | coeff_indices | Coefficient indices where to evaluate the divergence |
[in] | coeff_indices_G | Coefficient indices where to evaluate the Jacobian of G |
\[ \nabla_{\mathbf{x}} \cdot \mathbf{u} = \text{trace} ( J_{\mathbf{x}}(u) ) = \frac{\partial u_0}{\partial x_0} + \frac{\partial u_1}{\partial x_1} + \frac{\partial u_{d_\text{geo}}}{\partial x_{d_\text{par}}} \]
|
inline |
Returns a block-tensor with the divergence of the B-spline object with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the divergence |
[in] | knot_indices | Knot indices where to evaluate the divergence |
[in] | knot_indices_G | Knot indices where to evaluate the Jacobian of G |
\[ \nabla_{\mathbf{x}} \cdot \mathbf{u} = \text{trace} ( J_{\mathbf{x}}(u) ) = \frac{\partial u_0}{\partial x_0} + \frac{\partial u_1}{\partial x_1} + \frac{\partial u_{d_\text{geo}}}{\partial x_{d_\text{par}}} \]
|
inline |
Returns a block-tensor with the gradient of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the gradient |
\[ \nabla_{\mathbf{x}} u = \nabla_{\boldsymbol{\xi}} u \, J_{\boldsymbol{\xi}}(G)^{-T} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the gradient of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the gradient |
\[ \nabla_{\mathbf{x}} u = \nabla_{\boldsymbol{\xi}} u \, J_{\boldsymbol{\xi}}(G)^{-T} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the gradient of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the gradient |
[in] | knot_indices | Knot indices where to evaluate the gradient |
[in] | knot_indices_G | Knot indices where to evaluate the Jacobian of G |
[in] | coeff_indices | Coefficient indices where to evaluate the gradient |
[in] | coeff_indices_G | Coefficient indices where to evaluate the Jacobian of G |
\[ \nabla_{\mathbf{x}} u = \nabla_{\boldsymbol{\xi}} u \, J_{\boldsymbol{\xi}}(G)^{-T} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the gradient of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the gradient |
[in] | knot_indices | Knot indices where to evaluate the gradient |
[in] | knot_indices_G | Knot indices where to evaluate Jacobian of G |
\[ \nabla_{\mathbf{x}} u = \nabla_{\boldsymbol{\xi}} u \, J_{\boldsymbol{\xi}}(G)^{-T} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Hessian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Hessian |
\[ H_{\mathbf{x}}(u) = J_{\boldsymbol{\xi}}(G)^{-T} \left( H_\boldsymbol{\xi}(u) - \sum_k \nabla_{\mathbf{x},k}u H_{\boldsymbol{\xi}}(G_k) \right) J_{\boldsymbol{\xi}}(G)^{-1} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Hessian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Hessian |
\[ H_{\mathbf{x}}(u) = J_{\boldsymbol{\xi}}(G)^{-T} \left( H_\boldsymbol{\xi}(u) - \sum_k \nabla_{\mathbf{x},k}u H_{\boldsymbol{\xi}}(G_k) \right) J_{\boldsymbol{\xi}}(G)^{-1} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Hessian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Hessian |
[in] | knot_indices | Knot indices where to evaluate the Hessian |
[in] | knot_indices_G | Knot indices where to evaluate the Jacobian of G |
[in] | coeff_indices | Coefficient indices where to evaluate the Hessian |
[in] | coeff_indices_G | Coefficient indices where to evaluate the Jacobian of G |
\[ H_{\mathbf{x}}(u) = J_{\boldsymbol{\xi}}(G)^{-T} \left( H_\boldsymbol{\xi}(u) - \sum_k \nabla_{\mathbf{x},k}u H_{\boldsymbol{\xi}}(G_k) \right) J_{\boldsymbol{\xi}}(G)^{-1} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Hessian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Hessian |
[in] | knot_indices | Knot indices where to evaluate the Hessian |
[in] | knot_indices_G | Knot indices where to evaluate Jacobian of G |
\[ H_{\mathbf{x}}(u) = J_{\boldsymbol{\xi}}(G)^{-T} \left( H_\boldsymbol{\xi}(u) - \sum_k \nabla_{\mathbf{x},k}u H_{\boldsymbol{\xi}}(G_k) \right) J_{\boldsymbol{\xi}}(G)^{-1} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Jacobian |
\[ J_{\mathbf{x}}(u) = J_{\boldsymbol{\xi}}(u) \, J_{\boldsymbol{\xi}}(G)^{-T} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Jacobian |
\[ J_{\mathbf{x}}(u) = J_{\boldsymbol{\xi}}(u) \, J_{\boldsymbol{\xi}}(G)^{-T} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Jacobian |
[in] | knot_indices | Knot indices where to evaluate the Jacobain |
[in] | knot_indices_G | Knot indices where to evaluate the Jacobian of G |
[in] | coeff_indices | Coefficient indices where to evaluate the Jacobian |
[in] | coeff_indices_G | Coefficient indices where to evaluate the Jacobian of G |
\[ J_{\mathbf{x}}(u) = J_{\boldsymbol{\xi}}(u) \, J_{\boldsymbol{\xi}}(G)^{-T} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Jacobian |
[in] | knot_indices | Knot indices where to evaluate the Jacobian |
[in] | knot_indices_G | Knot indices where to evaluate the Jacobian of G |
\[ J_{\mathbf{x}}(u) = J_{\boldsymbol{\xi}}(u) \, J_{\boldsymbol{\xi}}(G)^{-T} , \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Laplacian |
\[ L_{\mathbf{x}}(u) = \text{trace} \left( J_{\boldsymbol{\xi}}(G)^{-T} \left( H_\boldsymbol{\xi}(u) - \sum_k \nabla_{\mathbf{x},k}u H_{\boldsymbol{\xi}}(G_k) \right) J_{\boldsymbol{\xi}}(G)^{-1} \right), \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Laplacian |
\[ L_{\mathbf{x}}(u) = \text{trace} \left( J_{\boldsymbol{\xi}}(G)^{-T} \left( H_\boldsymbol{\xi}(u) - \sum_k \nabla_{\mathbf{x},k}u H_{\boldsymbol{\xi}}(G_k) \right) J_{\boldsymbol{\xi}}(G)^{-1} \right), \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Laplacian |
[in] | knot_indices | Knot indices where to evaluate the Laplacian |
[in] | knot_indices_G | Knot indices where to evaluate the Jacobian of G |
[in] | coeff_indices | Coefficient indices where to evaluate the Laplacian |
[in] | coeff_indices_G | Coefficient indices where to evaluate the Jacobian of G |
\[ L_{\mathbf{x}}(u) = \text{trace} \left( J_{\boldsymbol{\xi}}(G)^{-T} \left( H_\boldsymbol{\xi}(u) - \sum_k \nabla_{\mathbf{x},k}u H_{\boldsymbol{\xi}}(G_k) \right) J_{\boldsymbol{\xi}}(G)^{-1} \right), \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi
with respect to the physical variables.
Geometry | Type of the geometry B-spline object |
[in] | G | B-spline geometry object |
[in] | xi | Point(s) where to evaluate the Laplacian |
[in] | knot_indices | Knot indices where to evaluate the Laplacian |
[in] | knot_indices_G | Knot indices where to evaluate Jacobian of G |
\[ L_{\mathbf{x}}(u) = \text{trace} \left( J_{\boldsymbol{\xi}}(G)^{-T} \left( H_\boldsymbol{\xi}(u) - \sum_k \nabla_{\mathbf{x},k}u H_{\boldsymbol{\xi}}(G_k) \right) J_{\boldsymbol{\xi}}(G)^{-1} \right), \quad \mathbf{x} = G(\boldsymbol{\xi}) \]
|
inline |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Jacobian |
\[ J_{\boldsymbol{\xi}}(u) = \begin{bmatrix} \frac{\partial u_0}{\partial \xi_0}& \frac{\partial u_0}{\partial \xi_1}& \dots& \frac{\partial u_0}{\partial \xi_{d_\text{par}}} \\ \frac{\partial u_1}{\partial \xi_0}& \frac{\partial u_1}{\partial \xi_1}& \dots& \frac{\partial u_1}{\partial \xi_{d_\text{par}}} \\ \vdots& \vdots & \ddots & \vdots \\ \frac{\partial u_{d_\text{geo}}}{\partial \xi_0}& \frac{\partial u_{d_\text{geo}}}{\partial \xi_1}& \dots& \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Jacobian |
\[ J_{\boldsymbol{\xi}}(u) = \begin{bmatrix} \frac{\partial u_0}{\partial \xi_0}& \frac{\partial u_0}{\partial \xi_1}& \dots& \frac{\partial u_0}{\partial \xi_{d_\text{par}}} \\ \frac{\partial u_1}{\partial \xi_0}& \frac{\partial u_1}{\partial \xi_1}& \dots& \frac{\partial u_1}{\partial \xi_{d_\text{par}}} \\ \vdots& \vdots & \ddots & \vdots \\ \frac{\partial u_{d_\text{geo}}}{\partial \xi_0}& \frac{\partial u_{d_\text{geo}}}{\partial \xi_1}& \dots& \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Jacobian |
[in] | knot_indices | Knot indices where to evaluate the Jacobian |
\[ J_{\boldsymbol{\xi}}(u) = \begin{bmatrix} \frac{\partial u_0}{\partial \xi_0}& \frac{\partial u_0}{\partial \xi_1}& \dots& \frac{\partial u_0}{\partial \xi_{d_\text{par}}} \\ \frac{\partial u_1}{\partial \xi_0}& \frac{\partial u_1}{\partial \xi_1}& \dots& \frac{\partial u_1}{\partial \xi_{d_\text{par}}} \\ \vdots& \vdots & \ddots & \vdots \\ \frac{\partial u_{d_\text{geo}}}{\partial \xi_0}& \frac{\partial u_{d_\text{geo}}}{\partial \xi_1}& \dots& \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the Jacobian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Jacobian |
[in] | knot_indices | Knot indices where to evaluate the Jacobian |
[in] | coeff_indices | Coefficient indices where to evaluate the Jacobian |
\[ J_{\boldsymbol{\xi}}(u) = \begin{bmatrix} \frac{\partial u_0}{\partial \xi_0}& \frac{\partial u_0}{\partial \xi_1}& \dots& \frac{\partial u_0}{\partial \xi_{d_\text{par}}} \\ \frac{\partial u_1}{\partial \xi_0}& \frac{\partial u_1}{\partial \xi_1}& \dots& \frac{\partial u_1}{\partial \xi_{d_\text{par}}} \\ \vdots& \vdots & \ddots & \vdots \\ \frac{\partial u_{d_\text{geo}}}{\partial \xi_0}& \frac{\partial u_{d_\text{geo}}}{\partial \xi_1}& \dots& \frac{\partial u_{d_\text{geo}}}{\partial \xi_{d_\text{par}}} \end{bmatrix} \]
|
inline |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Laplacian |
xi
\[ L_{\boldsymbol{\xi}}(u) = \sum_{i,j=0\atop|i+j|=2}^2 \frac{\partial^2 u}{\partial \xi_i\partial \xi_{j}} \]
|
inline |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Laplacian |
xi
\[ L_{\boldsymbol{\xi}}(u) = \sum_{i,j=0\atop|i+j|=2}^2 \frac{\partial^2 u}{\partial \xi_i\partial \xi_{j}} \]
|
inline |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Laplacian |
[in] | knot_indices | Knot indices where to evaluate the Laplacian |
\[ L_{\boldsymbol{\xi}}(u) = \sum_{i,j=0\atop|i+j|=2}^2 \frac{\partial^2 u}{\partial \xi_i\partial \xi_{j}} \]
|
inline |
Returns a block-tensor with the Laplacian of the B-spline object in the points xi
with respect to the parametric variables.
[in] | xi | Point(s) where to evaluate the Laplacian |
[in] | knot_indices | Knot indices where to evaluate the Laplacian |
[in] | coeff_indices | Coefficient indices where to evaluate the Laplacian |
\[ L_{\boldsymbol{\xi}}(u) = \sum_{i,j=0\atop|i+j|=2}^2 \frac{\partial^2 u}{\partial \xi_i\partial \xi_{j}} \]
|
inlinestatic |
Creates a new B-spline object as shared pointer.
|
inlinestatic |
Creates a new B-spline object as shared pointer.
|
inlinestatic |
Creates a new B-spline object as shared pointer.
|
inlinestatic |
Creates a new B-spline object as shared pointer.
|
inlinestatic |
Creates a new B-spline object as shared pointer.
|
inlinestatic |
Creates a new B-spline object as shared pointer.
|
inlinestatic |
Creates a new B-spline object as unique pointer.
|
inlinestatic |
Creates a new B-spline object as unique pointer.
|
inlinestatic |
Creates a new B-spline object as unique pointer.
|
inlinestatic |
Creates a new B-spline object as unique pointer.
|
inlinestatic |
Creates a new B-spline object as unique pointer.
|
inlinestatic |
Creates a new B-spline object as unique pointer.
|
inline |
Returns a new B-spline object whose coefficients are scaled by a vector.
|
inline |
Returns a new B-spline object whose coefficients are scaled by a scalar.
|
inline |
Scales the coefficients by a vector.
|
inline |
Scales the coefficients by a scalar.
|
inline |
Returns a new B-spline object whose coefficients are the sum of that of two compatible B-spline objects.
|
inline |
Adds the coefficients of another B-spline object.
|
inline |
Returns a new B-spline object whose coefficients are the difference of that of two compatible B-spline objects.
|
inline |
Substracts the coefficients of another B-spline object.
|
inline |
Returns a new B-spline object whose coefficients are scaled by a vector.
|
inline |
Returns a new B-spline object whose coefficients are scaled by a scalar.
|
inline |
Scales the coefficients by a vector.
|
inline |
Scales the coefficients by a scalar.
|
inline |
Plots the B-spline object colored by another B-spline object
[in] | color | B-spline object representing the color |
[in] | json | JSON configuration |
|
inline |
Plots the B-spline object colored by another B-spline object together with a set of sampling points
[in] | color | B-spline object representing the color |
[in] | xi | Vector of sampling points |
[in] | json | JSON configuration |
|
inline |
Plots the B-spline object colored by another B-spline object together with a set of sampling points
[in] | color | B-spline object representing the color |
[in] | xi | Sampling points |
[in] | json | JSON configuration |
|
inline |
Plots the B-spline object
[in] | json | JSON configuration |
|
inline |
Plots the B-spline object together with a set of sampling points
[in] | xi | Vector of sampling points |
[in] | json | JSON configuration |
|
inline |
Plots the B-spline object together with a set of sampling points
[in] | xi | Sampling points |
[in] | json | JSON configuration |
|
inlineoverridevirtualnoexcept |
Returns a string representation of the BSplineCommon object.
Implements iganet::utils::FullQualifiedName.
|
inline |
Rotates the B-spline object by three angles in 3d.
|
inline |
Rotates the B-spline object by an angle in 2d.
|
inline |
Scales the B-spline object by a vector.
|
inline |
Scales the B-spline object by a scalar.
|
inline |
Returns a copy of the B-spline object with real_t type.
|
inline |
Returns a copy of the B-spline object with settings from options.
|
inline |
Returns a copy of the B-spline object with settings from device.
|
inline |
Translates the B-spline object by a vector.
|
inline |
Returns the B-spline object with uniformly refined knot and coefficient vectors.
If dim = -1
, new knot values are inserted uniformly in each knot span in all spatial dimensions. Otherwise, i.e., dim != -1
new knots are only inserted in the specified dimension.