A specialisation of InvJacobianOPoint for a combined mapping FoG where F is a discrete mapping from logical to physical, and G is an inverse circular mapping from physical to logical. More...
Public Member Functions | |
KOKKOS_FUNCTION | InvJacobianOPoint (Mapping const &mapping) |
The constructor of InvJacobianOPoint. | |
KOKKOS_FUNCTION Matrix_2x2 | operator() () const |
Compute the full inverse Jacobian matrix from a coordinate system (x_pc, y_pc) to a coordinate system (x, y) at the central point. | |
A specialisation of InvJacobianOPoint for a combined mapping FoG where F is a discrete mapping from logical to physical, and G is an inverse circular mapping from physical to logical.
The combined mapping FoG therefore maps from a physical domain (Xpc, Ypc) to a physical domain (X,Y).
|
inlineexplicit |
The constructor of InvJacobianOPoint.
[in] | mapping | The mapping for which the inverse of the Jacobian is calculated. |
|
inline |
Compute the full inverse Jacobian matrix from a coordinate system (x_pc, y_pc) to a coordinate system (x, y) at the central point.
The discrete mappings can be difficult to inverse especially at the central point. In case of non analytical invertible mapping, we can work in another domain called pseudo-Cartesian domain. In this domain, it is easier to inverse the Jacobian matrix. The idea is detailed in Edoardo Zoni's article (Solving hyperbolic-elliptic problems on singular mapped disk-like domains with the method of characteristics and spline finite elements, https://doi.org/10.1016/j.jcp.2019.108889)
The current mapping maps from the logical domain to the physical domain \( \mathcal{F}: (r,\theta) \mapsto (x, y)\). The pseudo-Cartesian domain is built with \( \mathcal{F} \) and using the circular mapping \( \mathcal{G} \):
The pseudo-Cartesian domain is obtained by the composition of both mappings: \( (\mathcal{F} \circ \mathcal{G}^{-1})^{-1} \). This new mapping is invertible and its inverse at the central point is given by
So the pseudo-Cartesian Jacobian matrix at the central point, \( (J_{\mathcal{F}}J_{\mathcal{G}}^{-1})^{-1}(0, \theta) \), is obtained by inversing this matrix.