Interpolations
SemiLagrangian.AbstractInterpolation
— TypeAbstract 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
— Typemutable struct CachePrecal{T, N, I}
SemiLagrangian.ValInv
— Typestruct ValInv{T}
Base.isless
— Methodisless(a, b)
SemiLagrangian.autointerp!
— Methodautointerp!(
to,
from,
nb,
interp_t;
mpid,
t_split,
cachethreads
)
SemiLagrangian.get_allprecal
— Methodget_allprecal(interp, decint, decfloat)
SemiLagrangian.get_order
— Methodget_order(_)
Return the order of interpolation implementation
SemiLagrangian.getinverse
— Methodgetinverse(dec, interp)
SemiLagrangian.getprecal
— Methodgetprecal(self, alpha)
SemiLagrangian.getprecal
— Methodgetprecal(self, alpha)
SemiLagrangian.getprecal
— Methodgetprecal(self, alpha)
SemiLagrangian.getprecal
— Methodgetprecal(self, alpha)
SemiLagrangian.getprecal
— Methodgetprecal(self, alpha)
SemiLagrangian.interpbufc!
— Methodinterpbufc!(t_buf, bufdec, interp_t; ...)
interpbufc!(
t_buf,
bufdec,
interp_t,
nb;
mpid,
t_split,
cachethreads
)
SemiLagrangian.interpolate!
— Methodinterpolate!(fp, fi, decint, precal, interp)
interpolate!(fp, fi, decint, precal, interp, tabmod)
SemiLagrangian.interpolate!
— Methodinterpolate!(
fp,
fi,
bufdec,
interp_t;
tabmod,
mpid,
t_split,
cachethreads
)
SemiLagrangian.interpolate!
— Methodinterpolate!(fp, fi, dec, interp_t; tabmod, cache)
SemiLagrangian.interpolate!
— Methodinterpolate!(fp, fi, decint, precal, tinterp)
interpolate!(fp, fi, decint, precal, tinterp, tabmod)
SemiLagrangian.interpolate!
— Methodinterpolate!(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!
— Methodinterpolate!(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!
— Methodinterpolate!(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!
— Methodinterpolatemod!(fp, fi, bufc, interp_t, lgmesh)
SemiLagrangian.sol
— Methodsol(_, 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
— Methodsol(interp_t, b)