Interpolations
SemiLagrangian.AbstractInterpolation — Type
Abstract supertype for all interpolation type
Type parameters
T: type of number on witch interpolation worksedge: type of edge treatmentorder: order of interpolation
Implementation constraint
tabfct::Vector: this attribut must be on the implementation, it is a table of function of size order+1
SemiLagrangian.CachePrecal — Type
mutable struct CachePrecal{T, N, I}SemiLagrangian.ValInv — Type
struct ValInv{T}Base.isless — Method
isless(a, b)
SemiLagrangian.autointerp! — Method
autointerp!(
to,
from,
nb,
interp_t;
mpid,
t_split,
cachethreads
)
SemiLagrangian.get_allprecal — Method
get_allprecal(interp, decint, decfloat)
SemiLagrangian.get_order — Method
get_order(_)
Return the order of interpolation implementation
SemiLagrangian.getinverse — Method
getinverse(dec, interp)
SemiLagrangian.getprecal — Method
getprecal(self, alpha)
SemiLagrangian.getprecal — Method
getprecal(self, alpha)
SemiLagrangian.getprecal — Method
getprecal(self, alpha)
SemiLagrangian.getprecal — Method
getprecal(self, alpha)
SemiLagrangian.getprecal — Method
getprecal(self, alpha)
SemiLagrangian.interpbufc! — Method
interpbufc!(t_buf, bufdec, interp_t; ...)
interpbufc!(
t_buf,
bufdec,
interp_t,
nb;
mpid,
t_split,
cachethreads
)
SemiLagrangian.interpolate! — Method
interpolate!(fp, fi, decint, precal, interp)
interpolate!(fp, fi, decint, precal, interp, tabmod)
SemiLagrangian.interpolate! — Method
interpolate!(
fp,
fi,
bufdec,
interp_t;
tabmod,
mpid,
t_split,
cachethreads
)
SemiLagrangian.interpolate! — Method
interpolate!(fp, fi, dec, interp_t; tabmod, cache)
SemiLagrangian.interpolate! — Method
interpolate!(fp, fi, decint, precal, tinterp)
interpolate!(fp, fi, decint, precal, tinterp, tabmod)
SemiLagrangian.interpolate! — Method
interpolate!(fp, fi, decint, allprecal, interp)
interpolate!(fp, fi, decint, allprecal, interp, tabmod)
apply an offset to the function fi interpolate by interp struct, the result is in fp vector, decint and precal are precompute with getprecal method, the TypeEdge is InsideEdge, it is a marginal case
Arguments
fp::AbstractVector: output vectorfi::AbstractVector: input vectordecint: offset in units of dxallprecal::Vector{Vector{T}}: vector of vector of length order+1 precompute with getprecal(interp, dec) (dec is the offset)interp::AbstractInterpolation{T, InsideEdge, order}: interpolation implementation, note that TypeEdge is CircEdgetabmod=gettabmod(length(fi)): precompute for "begin at one" modulo
Returns :
- No return
SemiLagrangian.interpolate! — Method
interpolate!(fp, fi, decint, precal, interp)
interpolate!(fp, fi, decint, precal, interp, tabmod)
apply an offset to the function fi interpolate by interp struct, the result is in fp vector, decint and precal are precompute with getprecal method, the TypeEdge is CircEdge
Arguments
fp::AbstractVector: output vectorfi::AbstractVector: input vectordecint: offset in units of dxprecal::Vector: vector of length order+1 precompute with getprecal(interp, dec) (dec is the offset)interp::AbstractInterpolation{T, CircEdge, order}: interpolation implementation, note that TypeEdge is CircEdgetabmod=gettabmod(length(fi)): precompute for "begin at one" modulo
Returns :
- No return
SemiLagrangian.interpolate! — Method
interpolate!(fp, fi, dec, interp)
apply the offset dec to the function fi interpolate by interp struct, the result is in fp Vector
Arguments
fp: output vector of length nfi: input vector of length ndec: offset in units of dxinterp::AbstractInterpolation: interpolation implementation
Returns :
- No return
SemiLagrangian.interpolatemod! — Method
interpolatemod!(fp, fi, bufc, interp_t, lgmesh)
SemiLagrangian.sol — Method
sol(_, b)
Interface method to transform the treated line, by default this method does nothing
Arguments :
_::AbstractInterpolation: interpolation implementationline::AbstractVector: line to transform
Return :
The transformed line
SemiLagrangian.sol — Method
sol(interp_t, b)