Define the physical domain for the advection. More...
Public Types | |
using | X_adv = X |
The first dimension in the advection domain. | |
using | Y_adv = Y |
The second dimension in the advection domain. | |
using | CoordXY_adv = Coord< X_adv, Y_adv > |
The coordinate type associated to the dimensions in the advection domain. | |
Public Member Functions | |
AdvectionPhysicalDomain (Mapping const &mapping) | |
Instantiate a AdvectionPhysicalDomain advection domain. More... | |
void | advect_feet (host_t< FieldRTheta< CoordRTheta >> feet_coords_rp, host_t< DConstVectorFieldRTheta< X_adv, Y_adv >> advection_field, double dt) const |
Advect the characteristic feet. More... | |
Define the physical domain for the advection.
The physical domain can only be used for analytically invertible mappings.
Here the advection field in the physical domain and the advection domain is the same. So the AdvectionPhysicalDomain::compute_advection_field return the same advection field.
The method to advect is here given by:
|
inline |
Instantiate a AdvectionPhysicalDomain advection domain.
[in] | mapping | The mapping from the logical domain to the physical domain. |
|
inline |
Advect the characteristic feet.
In the Backward Semi-Lagrangian method, the advection of a function uses the conservation along the characteristic property. So, we firstly compute the characteristic feet and then interpolate the function at these characteristic feet.
The function implemented here deals with the computation of the characteristic feet. The IFootFinder class uses a time integration method to solve the characteristic equation. The BslAdvectionRTheta class calls advect_feet to compute the characteristic feet and interpolate the function we want to advect.
The advect_feet implemented here computes only
with
and
[in,out] | feet_coords_rp | The computed characteristic feet in the logical domain. On input: the points we want to advect. On output: the characteristic feet. |
[in] | advection_field | The advection field defined on the advection domain. |
[in] | dt | The time step. |