22 #ifndef ASTSHIM_CHEBYMAP_H 23 #define ASTSHIM_CHEBYMAP_H 29 #include "astshim/base.h" 30 #include "astshim/Mapping.h" 45 ChebyDomain(std::vector<double>
const &
lbnd, std::vector<double>
const &
ubnd) : lbnd(lbnd), ubnd(ubnd) {}
46 std::vector<double>
const lbnd;
47 std::vector<double>
const ubnd;
161 explicit ChebyMap(ndarray::Array<double, 2, 2>
const &coeff_f,
162 ndarray::Array<double, 2, 2>
const &coeff_i, std::vector<double>
const &lbnd_f,
163 std::vector<double>
const &ubnd_f, std::vector<double>
const &lbnd_i,
164 std::vector<double>
const &ubnd_i, std::string
const &options =
"")
165 :
Mapping(reinterpret_cast<AstMapping *>(
166 _makeRawChebyMap(coeff_f, coeff_i, lbnd_f, ubnd_f, lbnd_i, ubnd_i, options))) {}
184 explicit ChebyMap(ndarray::Array<double, 2, 2>
const &coeff_f,
int nout,
185 std::vector<double>
const &lbnd_f, std::vector<double>
const &ubnd_f,
186 std::string
const &options =
"IterInverse=0")
187 :
Mapping(reinterpret_cast<AstMapping *>(
188 _makeRawChebyMap(coeff_f, nout, lbnd_f, ubnd_f, options))) {}
198 std::shared_ptr<ChebyMap>
copy()
const {
return std::static_pointer_cast<
ChebyMap>(copyPolymorphic()); }
297 ChebyMap polyTran(
bool forward,
double acc,
double maxacc,
int maxorder, std::vector<double>
const &
lbnd,
298 std::vector<double>
const &
ubnd)
const;
304 ChebyMap polyTran(
bool forward,
double acc,
double maxacc,
int maxorder)
const;
308 return copyImpl<ChebyMap, AstChebyMap>();
316 AstChebyMap *_makeRawChebyMap(ndarray::Array<double, 2, 2>
const &coeff_f,
317 ndarray::Array<double, 2, 2>
const &coeff_i,
318 std::vector<double>
const &lbnd_f, std::vector<double>
const &ubnd_f,
319 std::vector<double>
const &lbnd_i, std::vector<double>
const &ubnd_i,
320 std::string
const &options =
"")
const;
323 AstChebyMap *_makeRawChebyMap(ndarray::Array<double, 2, 2>
const &coeff_f,
int nout,
324 std::vector<double>
const &lbnd_f, std::vector<double>
const &ubnd_f,
325 std::string
const &options =
"")
const;
ChebyMap(ndarray::Array< double, 2, 2 > const &coeff_f, ndarray::Array< double, 2, 2 > const &coeff_i, std::vector< double > const &lbnd_f, std::vector< double > const &ubnd_f, std::vector< double > const &lbnd_i, std::vector< double > const &ubnd_i, std::string const &options="")
Definition: ChebyMap.h:161
std::vector< double > const ubnd
upper bound of domain (one element per axis)
Definition: ChebyMap.h:47
AST wrapper classes and functions.
Definition: attributes_channel.dox:1
std::shared_ptr< ChebyMap > copy() const
Return a deep copy of this object.
Definition: ChebyMap.h:198
Definition: ChebyMap.h:37
ChebyDomain(std::vector< double > const &lbnd, std::vector< double > const &ubnd)
Definition: ChebyMap.h:45
virtual std::shared_ptr< Object > copyPolymorphic() const override
Definition: ChebyMap.h:307
ChebyMap(ndarray::Array< double, 2, 2 > const &coeff_f, int nout, std::vector< double > const &lbnd_f, std::vector< double > const &ubnd_f, std::string const &options="IterInverse=0")
Definition: ChebyMap.h:184
Definition: ChebyMap.h:97
std::vector< double > const lbnd
lower bound of domain (one element per axis)
Definition: ChebyMap.h:46