OPAL (Object Oriented Parallel Accelerator Library)
2.2.0
OPAL
|
Classes | |
class | Interpolator3dGridTo1d |
class | Interpolator3dGridTo3d |
class | Mesh |
Base class for meshing routines. More... | |
class | MMatrix |
class | MVector |
class | NDGrid |
class | PolynomialCoefficient |
PolynomialCoefficient represents a coefficient in a multi-dimensional polynomial. More... | |
class | PolynomialPatch |
Patches together many SquarePolynomialVectors to make a multidimensional polynomial spline. More... | |
class | PPSolveFactory |
PPSolveFactory solves the system of linear equations to interpolate from a grid of points using higher order polynomials, creating a PolynomialPatch object. The order of the polynomial is user-defined. More... | |
class | SolveFactory |
SolveFactory is a factory class for solving a set of linear equations to generate a polynomial based on nearby points. More... | |
class | SquarePolynomialVector |
SquarePolynomialVector describes a vector of multivariate polynomials. More... | |
class | ThreeDGrid |
class | TriLinearInterpolator |
class | VectorMap |
Typedefs | |
typedef gsl_complex | m_complex |
typedef PolynomialCoefficient | Coeff |
Functions | |
std::ostream & | operator<< (std::ostream &out, const Mesh::Iterator &it) |
Mesh::Iterator & | operator++ (Mesh::Iterator &lhs) |
Mesh::Iterator & | operator-- (Mesh::Iterator &lhs) |
Mesh::Iterator | operator++ (Mesh::Iterator &lhs, int) |
Mesh::Iterator | operator-- (Mesh::Iterator &lhs, int) |
Mesh::Iterator | operator- (const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
Mesh::Iterator | operator+ (const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
Mesh::Iterator & | operator-= (Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
Mesh::Iterator & | operator+= (Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
Mesh::Iterator | operator- (const Mesh::Iterator &lhs, const int &rhs) |
Mesh::Iterator | operator+ (const Mesh::Iterator &lhs, const int &rhs) |
Mesh::Iterator & | operator-= (Mesh::Iterator &lhs, const int &rhs) |
Mesh::Iterator & | operator+= (Mesh::Iterator &lhs, const int &rhs) |
bool | operator== (const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
bool | operator!= (const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
bool | operator>= (const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
bool | operator<= (const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
bool | operator< (const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
bool | operator> (const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) |
template std::istream & | operator>> (std::istream &in, MMatrix< double > &mat) |
template std::istream & | operator>> (std::istream &in, MMatrix< m_complex > &mat) |
MMatrix< double > & | operator*= (MMatrix< double > &m1, MMatrix< double > m2) |
MMatrix< m_complex > & | operator*= (MMatrix< m_complex > &m1, MMatrix< m_complex > m2) |
template<class Tmplt > | |
std::ostream & | operator<< (std::ostream &out, MMatrix< Tmplt > mat) |
template std::ostream & | operator<< (std::ostream &out, MMatrix< double > mat) |
template std::ostream & | operator<< (std::ostream &out, MMatrix< m_complex > mat) |
template<class Tmplt > | |
std::istream & | operator>> (std::istream &in, MMatrix< Tmplt > &mat) |
const gsl_matrix * | MMatrix_to_gsl (const MMatrix< double > &m) |
const gsl_matrix_complex * | MMatrix_to_gsl (const MMatrix< m_complex > &m) |
MMatrix< double > | re (MMatrix< m_complex > mc) |
MMatrix< double > | im (MMatrix< m_complex > mc) |
MMatrix< m_complex > | complex (MMatrix< double > real) |
MMatrix< m_complex > | complex (MMatrix< double > real, MMatrix< double > imaginary) |
MMatrix< m_complex > & | operator*= (MMatrix< m_complex > &m, m_complex c) |
MMatrix< double > & | operator*= (MMatrix< double > &m, double d) |
MVector< m_complex > | operator* (MMatrix< m_complex > m, MVector< m_complex > v) |
MVector< double > | operator* (MMatrix< double > m, MVector< double > v) |
MMatrix< m_complex > & | operator+= (MMatrix< m_complex > &m1, const MMatrix< m_complex > &m2) |
MMatrix< double > & | operator+= (MMatrix< double > &m1, const MMatrix< double > &m2) |
template<class Tmplt > | |
MMatrix< Tmplt > & | operator-= (MMatrix< double > &m1, MMatrix< double > m2) |
template<class Tmplt > | |
MMatrix< Tmplt > | operator* (MMatrix< Tmplt >, MMatrix< Tmplt >) |
template<class Tmplt > | |
MMatrix< Tmplt > | operator* (MMatrix< Tmplt >, MVector< Tmplt >) |
template<class Tmplt > | |
MMatrix< Tmplt > | operator* (MMatrix< Tmplt >, Tmplt) |
template<class Tmplt > | |
MMatrix< Tmplt > | operator/ (MMatrix< Tmplt >, Tmplt) |
template<class Tmplt > | |
MMatrix< Tmplt > | operator+ (MMatrix< Tmplt >, MMatrix< Tmplt >) |
template<class Tmplt > | |
MMatrix< Tmplt > | operator- (MMatrix< Tmplt >, MMatrix< Tmplt >) |
template<class Tmplt > | |
MMatrix< Tmplt > | operator- (MMatrix< Tmplt >) |
template<class Tmplt > | |
bool | operator== (const MMatrix< Tmplt > &c1, const MMatrix< Tmplt > &c2) |
template<class Tmplt > | |
bool | operator!= (const MMatrix< Tmplt > &c1, const MMatrix< Tmplt > &c2) |
template<class Tmplt > | |
MMatrix< Tmplt > & | operator/= (MMatrix< Tmplt > &m, Tmplt t) |
template<class Tmplt > | |
MMatrix< Tmplt > & | operator-= (MMatrix< Tmplt > &m1, MMatrix< Tmplt > m2) |
std::ostream & | operator<< (std::ostream &out, m_complex c) |
std::istream & | operator>> (std::istream &in, m_complex &c) |
template std::ostream & | operator<< (std::ostream &out, MVector< double > v) |
template std::ostream & | operator<< (std::ostream &out, MVector< m_complex > v) |
template std::istream & | operator>> (std::istream &out, MVector< double > &v) |
template std::istream & | operator>> (std::istream &out, MVector< m_complex > &v) |
template<class Tmplt > | |
bool | operator== (const MVector< Tmplt > &c1, const MVector< Tmplt > &c2) |
template bool | operator== (const MVector< double > &c1, const MVector< double > &c2) |
template bool | operator== (const MVector< m_complex > &c1, const MVector< m_complex > &c2) |
template<class Tmplt > | |
std::ostream & | operator<< (std::ostream &out, MVector< Tmplt > v) |
template<class Tmplt > | |
std::istream & | operator>> (std::istream &in, MVector< Tmplt > &v) |
const gsl_vector * | MVector_to_gsl (const MVector< double > &vd) |
const gsl_vector_complex * | MVector_to_gsl (const MVector< gsl_complex > &vc) |
MVector< m_complex > | complex (MVector< double > real) |
MVector< m_complex > | complex (MVector< double > real, MVector< double > im) |
MVector< double > | re (MVector< m_complex > c) |
MVector< double > | im (MVector< m_complex > c) |
m_complex | m_complex_build (double r, double i) |
m_complex | m_complex_build (double r) |
m_complex | operator* (m_complex c, double d) |
m_complex | operator* (double d, m_complex c) |
m_complex | operator* (m_complex c1, m_complex c2) |
m_complex | operator/ (m_complex c, double d) |
m_complex | operator/ (m_complex c1, m_complex c2) |
m_complex | operator/ (double d, m_complex c) |
m_complex | operator+ (m_complex c, double d) |
m_complex | operator+ (double d, m_complex c) |
m_complex | operator+ (m_complex c1, m_complex c2) |
m_complex | operator- (m_complex c) |
m_complex | operator- (m_complex c, double d) |
m_complex | operator- (double d, m_complex c) |
m_complex | operator- (m_complex c1, m_complex c2) |
m_complex & | operator*= (m_complex &c, double d) |
m_complex & | operator*= (m_complex &c1, m_complex c2) |
m_complex & | operator/= (m_complex &c, double d) |
m_complex & | operator/= (m_complex &c1, m_complex c2) |
m_complex & | operator+= (m_complex &c, double d) |
m_complex & | operator+= (m_complex &c1, m_complex c2) |
m_complex & | operator-= (m_complex &c, double d) |
m_complex & | operator-= (m_complex &c1, m_complex c2) |
bool | operator== (m_complex c1, m_complex c2) |
bool | operator!= (m_complex c1, m_complex c2) |
double & | re (m_complex &c) |
double & | im (m_complex &c) |
const double & | re (const m_complex &c) |
const double & | im (const m_complex &c) |
m_complex | conj (const m_complex &c) |
template<class Tmplt > | |
bool | operator!= (const MVector< Tmplt > &v1, const MVector< Tmplt > &v2) |
MVector< m_complex > & | operator*= (MVector< m_complex > &v, m_complex c) |
MVector< double > & | operator*= (MVector< double > &v, double d) |
template<class Tmplt > | |
MVector< Tmplt > | operator* (MVector< Tmplt > v, Tmplt t) |
template<class Tmplt > | |
MVector< Tmplt > | operator* (Tmplt t, MVector< Tmplt > v) |
template<class Tmplt > | |
MVector< Tmplt > & | operator/= (MVector< Tmplt > &v, Tmplt t) |
template<class Tmplt > | |
MVector< Tmplt > | operator/ (MVector< Tmplt > v, Tmplt t) |
template<class Tmplt > | |
MVector< Tmplt > | operator/ (Tmplt t, MVector< Tmplt > v) |
MVector< m_complex > & | operator+= (MVector< m_complex > &v1, MVector< m_complex > v2) |
MVector< double > & | operator+= (MVector< double > &v1, MVector< double > v2) |
template<class Tmplt > | |
MVector< Tmplt > | operator+ (MVector< Tmplt > v1, MVector< Tmplt > v2) |
template<class Tmplt > | |
MVector< Tmplt > & | operator-= (MVector< Tmplt > &v1, MVector< Tmplt > v2) |
template<class Tmplt > | |
MVector< Tmplt > | operator- (MVector< Tmplt > v1, MVector< Tmplt > v2) |
template<class Tmplt > | |
MVector< Tmplt > | operator- (const MVector< Tmplt > &v) |
std::ostream & | operator<< (std::ostream &out, const PolynomialCoefficient &coeff) |
std::ostream & | operator<< (std::ostream &out, const SquarePolynomialVector &spv) |
Definition at line 48 of file PPSolveFactory.cpp.
typedef gsl_complex interpolation::m_complex |
Wrapper for GSL vector and gsl_complex
MVector class handles maths operators and a few other operators
Use template to define two types: (i) MVector<double> is a vector of doubles (ii) MVector<m_complex> is a vector of m_complex
Maths operators and a few others are defined, but maths operators don't allow operations between types - i.e. you can't multiply a complex matrix by a double matrix. Instead use interface methods like real() and complex() to convert between types first
Definition at line 204 of file MVector.cpp.
References Physics::c, m_complex_build(), interpolation::MVector< Tmplt >::num_row(), and real().
Definition at line 211 of file MVector.cpp.
References Physics::c, im(), m_complex_build(), interpolation::MVector< Tmplt >::num_row(), and real().
Definition at line 407 of file MMatrix.cpp.
References m_complex_build(), interpolation::MMatrix< Tmplt >::num_col(), interpolation::MMatrix< Tmplt >::num_row(), and real().
Definition at line 416 of file MMatrix.cpp.
References m_complex_build(), interpolation::MMatrix< Tmplt >::num_col(), interpolation::MMatrix< Tmplt >::num_row(), and real().
|
inline |
Definition at line 105 of file MVector.h.
References im(), m_complex_build(), and re().
Referenced by ComplexEigen::hqr(), FComplexEigen< N >::hqr(), ComplexEigen::hqr2(), FComplexEigen< N >::hqr2(), MapAnalyser::linTAnalyze(), ComplexEigen::orthes(), FComplexEigen< N >::orthes(), and Werrf().
|
inline |
MVector< double > interpolation::im | ( | MVector< m_complex > | c | ) |
Definition at line 225 of file MVector.cpp.
References Physics::c, im(), and interpolation::MVector< Tmplt >::num_row().
MMatrix< double > interpolation::im | ( | MMatrix< m_complex > | mc | ) |
Definition at line 398 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
Referenced by complex(), conj(), im(), operator<<(), operator>>(), NormalForm::orderModes(), DragtFinnNormalForm< N >::orderModes(), FNormalForm< N >::orderModes(), and SigmaGenerator< Value_type, Size_type >::updateInitialSigma().
|
inline |
Definition at line 62 of file MVector.h.
References Physics::c.
Referenced by complex(), conj(), interpolation::MMatrix< Tmplt >::eigenvalues(), operator*(), operator*=(), and operator/().
|
inline |
Definition at line 63 of file MVector.h.
References Physics::c.
const gsl_matrix * interpolation::MMatrix_to_gsl | ( | const MMatrix< double > & | m | ) |
Definition at line 377 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::_matrix.
const gsl_matrix_complex * interpolation::MMatrix_to_gsl | ( | const MMatrix< m_complex > & | m | ) |
Definition at line 383 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::_matrix.
const gsl_vector * interpolation::MVector_to_gsl | ( | const MVector< double > & | vd | ) |
Definition at line 191 of file MVector.cpp.
References interpolation::MVector< Tmplt >::get_vector().
const gsl_vector_complex * interpolation::MVector_to_gsl | ( | const MVector< gsl_complex > & | vc | ) |
Definition at line 193 of file MVector.cpp.
References interpolation::MVector< Tmplt >::get_vector().
|
inline |
|
inline |
|
inline |
|
inline |
Return true if lhs does not index the same position as rhs
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 278 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::_matrix, interpolation::MVector< Tmplt >::_vector, m_complex_build(), and interpolation::MMatrix< Tmplt >::num_row().
|
inline |
Definition at line 285 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::_matrix, interpolation::MVector< Tmplt >::_vector, and interpolation::MMatrix< Tmplt >::num_row().
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 83 of file MVector.h.
References Physics::c.
|
inline |
Definition at line 222 of file MVector.h.
References interpolation::MVector< Tmplt >::_vector.
|
inline |
Definition at line 224 of file MVector.h.
References interpolation::MVector< Tmplt >::_vector.
Definition at line 272 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::_matrix.
|
inline |
Definition at line 275 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::_matrix.
MMatrix< double > & interpolation::operator*= | ( | MMatrix< double > & | m1, |
MMatrix< double > | m2 | ||
) |
Definition at line 332 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::_matrix, interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
MMatrix< m_complex > & interpolation::operator*= | ( | MMatrix< m_complex > & | m1, |
MMatrix< m_complex > | m2 | ||
) |
Definition at line 340 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::_matrix, m_complex_build(), interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Addition operator - adds offset of rhs of rhs relative to Begin() to lhs
|
inline |
Addition operator - adds rhs to lhs and returns copy of lhs
|
inline |
Prefix increment operator ++it
|
inline |
Postfix increment operator it++ advances iterator by one
|
inline |
Definition at line 89 of file MVector.h.
References Physics::c.
|
inline |
|
inline |
Definition at line 237 of file MVector.h.
References interpolation::MVector< Tmplt >::_vector.
|
inline |
Definition at line 239 of file MVector.h.
References interpolation::MVector< Tmplt >::_vector.
|
inline |
Definition at line 292 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::_matrix.
|
inline |
Definition at line 295 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::_matrix.
|
inline |
Addition operator - adds offset of rhs of rhs relative to Begin() to lhs and returns lhs
|
inline |
Addition operator - subtracts rhs from lhs and returns lhs
|
inline |
Definition at line 77 of file MVector.h.
References Physics::c.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 244 of file MVector.h.
References interpolation::MVector< Tmplt >::num_row().
|
inline |
|
inline |
Definition at line 298 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
|
inline |
Subtraction operator - subtracts offset of rhs relative to Begin() from lhs
|
inline |
Subtraction operator - subtracts from lhs and returns copy of lhs
|
inline |
Prefix decrement operator –it retreats iterator by one
|
inline |
Postfix decrement operator it– retreats iterator by one
|
inline |
Definition at line 92 of file MVector.h.
References Physics::c.
|
inline |
|
inline |
MMatrix<Tmplt>& interpolation::operator-= | ( | MMatrix< double > & | m1, |
MMatrix< double > | m2 | ||
) |
|
inline |
Subtraction operator - subtracts offset of rhs relative to Begin() from lhs and returns lhs
|
inline |
Subtraction operator - subtracts rhs from lhs and returns lhs
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 71 of file MVector.h.
References m_complex_build().
|
inline |
MVector<Tmplt> interpolation::operator/ | ( | Tmplt | t, |
MVector< Tmplt > | v | ||
) |
|
inline |
|
inline |
Definition at line 86 of file MVector.h.
References Physics::c.
|
inline |
|
inline |
|
inline |
|
inline |
Return true if lhs indexes a position less than rhs i.e. successive operation of decrement operator would eventually reach lhs
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
const PolynomialCoefficient & | coeff | ||
) |
Definition at line 3 of file PolynomialCoefficient.cpp.
References interpolation::PolynomialCoefficient::Coefficient(), interpolation::PolynomialCoefficient::InVariables(), and interpolation::PolynomialCoefficient::OutVariable().
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
const Mesh::Iterator & | it | ||
) |
Output iterator to a std ostream object
Definition at line 33 of file Mesh.cpp.
References interpolation::Mesh::Iterator::getPosition(), interpolation::Mesh::Iterator::getState(), and interpolation::Mesh::Iterator::toInteger().
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
m_complex | c | ||
) |
template std::ostream& interpolation::operator<< | ( | std::ostream & | out, |
MVector< double > | v | ||
) |
template std::ostream& interpolation::operator<< | ( | std::ostream & | out, |
MVector< m_complex > | v | ||
) |
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
MVector< Tmplt > | v | ||
) |
Definition at line 175 of file MVector.cpp.
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
const SquarePolynomialVector & | spv | ||
) |
Write out the PolynomialVector (effectively just polyCoeffs).
Definition at line 210 of file SquarePolynomialVector.cpp.
References interpolation::SquarePolynomialVector::_printHeaders, interpolation::SquarePolynomialVector::GetCoefficientsAsMatrix(), and interpolation::SquarePolynomialVector::PrintHeader().
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
MMatrix< Tmplt > | mat | ||
) |
Definition at line 349 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::num_row().
template std::ostream& interpolation::operator<< | ( | std::ostream & | out, |
MMatrix< double > | mat | ||
) |
template std::ostream& interpolation::operator<< | ( | std::ostream & | out, |
MMatrix< m_complex > | mat | ||
) |
|
inline |
Return true if lhs indexes a position less than or equal to rhs i.e. successive operation of decrement operator would eventually reach lhs
|
inline |
bool interpolation::operator== | ( | const MVector< Tmplt > & | c1, |
const MVector< Tmplt > & | c2 | ||
) |
Definition at line 142 of file MVector.cpp.
References interpolation::MVector< Tmplt >::num_row().
template bool interpolation::operator== | ( | const MVector< double > & | c1, |
const MVector< double > & | c2 | ||
) |
template bool interpolation::operator== | ( | const MVector< m_complex > & | c1, |
const MVector< m_complex > & | c2 | ||
) |
bool interpolation::operator== | ( | const MMatrix< Tmplt > & | c1, |
const MMatrix< Tmplt > & | c2 | ||
) |
Definition at line 340 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
|
inline |
Return true if lhs indexes the same position as rhs
|
inline |
Return true if lhs indexes a position greater than rhs i.e. successive operation of increment operator would eventually reach lhs
|
inline |
Return true if lhs indexes a position greater than or equal to rhs i.e. successive operation of increment operator would eventually reach lhs
std::istream & interpolation::operator>> | ( | std::istream & | in, |
m_complex & | c | ||
) |
template std::istream& interpolation::operator>> | ( | std::istream & | in, |
MMatrix< double > & | mat | ||
) |
template std::istream& interpolation::operator>> | ( | std::istream & | in, |
MMatrix< m_complex > & | mat | ||
) |
template std::istream& interpolation::operator>> | ( | std::istream & | out, |
MVector< double > & | v | ||
) |
template std::istream& interpolation::operator>> | ( | std::istream & | out, |
MVector< m_complex > & | v | ||
) |
std::istream & interpolation::operator>> | ( | std::istream & | in, |
MVector< Tmplt > & | v | ||
) |
Definition at line 182 of file MVector.cpp.
References Hypervolume::n, and interpolation::MVector< Tmplt >::num_row().
std::istream & interpolation::operator>> | ( | std::istream & | in, |
MMatrix< Tmplt > & | mat | ||
) |
Definition at line 364 of file MMatrix.cpp.
References nr.
|
inline |
MVector< double > interpolation::re | ( | MVector< m_complex > | c | ) |
Definition at line 218 of file MVector.cpp.
References Physics::c, interpolation::MVector< Tmplt >::num_row(), and re().
MMatrix< double > interpolation::re | ( | MMatrix< m_complex > | mc | ) |
Definition at line 389 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
Referenced by conj(), operator<<(), operator>>(), NormalForm::orderModes(), DragtFinnNormalForm< N >::orderModes(), FNormalForm< N >::orderModes(), and re().