OPAL (Object Oriented Parallel Accelerator Library)
2021.1.99
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) |
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) |
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 396 of file MMatrix.cpp.
References m_complex_build(), interpolation::MMatrix< Tmplt >::num_col(), interpolation::MMatrix< Tmplt >::num_row(), and real().
Definition at line 405 of file MMatrix.cpp.
References m_complex_build(), interpolation::MMatrix< Tmplt >::num_col(), interpolation::MMatrix< Tmplt >::num_row(), and real().
Definition at line 199 of file MVector.cpp.
References Physics::c, m_complex_build(), and real().
Definition at line 206 of file MVector.cpp.
References Physics::c, im(), m_complex_build(), and real().
Definition at line 105 of file MVector.h.
References Physics::c, im(), m_complex_build(), and re().
Referenced by MapAnalyser::normalizeEigen_m().
|
inline |
Definition at line 102 of file MVector.h.
References Physics::c.
|
inline |
Definition at line 100 of file MVector.h.
References Physics::c.
Definition at line 387 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
Referenced by complex(), conj(), im(), operator<<(), operator<<(), and operator>>().
Definition at line 220 of file MVector.cpp.
References Physics::c, and im().
|
inline |
Definition at line 63 of file MVector.h.
References Physics::c.
|
inline |
Definition at line 62 of file MVector.h.
References Physics::c.
Referenced by complex(), conj(), interpolation::MMatrix< Tmplt >::eigenvalues(), and operator/().
|
inline |
Return true if lhs does not index the same position as rhs
|
inline |
|
inline |
|
inline |
Definition at line 66 of file MVector.h.
References Physics::c.
Definition at line 65 of file MVector.h.
References Physics::c.
Definition at line 83 of file MVector.h.
References Physics::c.
Definition at line 332 of file MMatrix.cpp.
MMatrix< m_complex > & interpolation::operator*= | ( | MMatrix< m_complex > & | m1, |
MMatrix< m_complex > | m2 | ||
) |
Definition at line 340 of file MMatrix.cpp.
|
inline |
Addition operator - adds rhs to lhs and returns copy of lhs
|
inline |
Addition operator - adds offset of rhs of rhs relative to Begin() to lhs
Definition at line 74 of file MVector.h.
References Physics::c.
Definition at line 73 of file MVector.h.
References Physics::c.
|
inline |
Prefix increment operator ++it
|
inline |
Postfix increment operator it++ advances iterator by one
Definition at line 89 of file MVector.h.
References Physics::c.
|
inline |
Addition operator - subtracts rhs from lhs and returns lhs
|
inline |
Addition operator - adds offset of rhs of rhs relative to Begin() to lhs and returns lhs
|
inline |
Subtraction operator - subtracts from lhs and returns copy of lhs
|
inline |
Subtraction operator - subtracts offset of rhs relative to Begin() from lhs
|
inline |
Definition at line 235 of file MVector.h.
References interpolation::MVector< Tmplt >::num_row().
Definition at line 79 of file MVector.h.
References Physics::c.
Definition at line 77 of file MVector.h.
References Physics::c.
Definition at line 78 of file MVector.h.
References Physics::c.
Definition at line 291 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
|
inline |
Prefix decrement operator –it retreats iterator by one
|
inline |
Postfix decrement operator it– retreats iterator by one
Definition at line 92 of file MVector.h.
References Physics::c.
|
inline |
Subtraction operator - subtracts rhs from lhs and returns lhs
|
inline |
Subtraction operator - subtracts offset of rhs relative to Begin() from lhs and returns lhs
MMatrix<Tmplt>& interpolation::operator-= | ( | MMatrix< double > & | m1, |
MMatrix< double > | m2 | ||
) |
Definition at line 71 of file MVector.h.
References Physics::c, and m_complex_build().
Definition at line 69 of file MVector.h.
References Physics::c.
Definition at line 86 of file MVector.h.
References Physics::c.
|
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 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, |
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 SquarePolynomialVector & | spv | ||
) |
Write out the PolynomialVector (effectively just polyCoeffs).
Definition at line 213 of file SquarePolynomialVector.cpp.
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
m_complex | c | ||
) |
Definition at line 34 of file MVector.cpp.
References Physics::c, im(), and re().
template std::ostream& interpolation::operator<< | ( | std::ostream & | out, |
MMatrix< double > | mat | ||
) |
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
MMatrix< Tmplt > | mat | ||
) |
Definition at line 349 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
template std::ostream& interpolation::operator<< | ( | std::ostream & | out, |
MVector< double > | v | ||
) |
std::ostream & interpolation::operator<< | ( | std::ostream & | out, |
MVector< Tmplt > | v | ||
) |
Definition at line 175 of file MVector.cpp.
References interpolation::MVector< Tmplt >::num_row().
|
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 |
Return true if lhs indexes the same position as rhs
bool interpolation::operator== | ( | const MMatrix< Tmplt > & | c1, |
const MMatrix< Tmplt > & | c2 | ||
) |
Definition at line 333 of file MMatrix.h.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< 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 MVector< Tmplt > & | c1, |
const MVector< Tmplt > & | c2 | ||
) |
Definition at line 142 of file MVector.cpp.
References interpolation::MVector< Tmplt >::num_row().
|
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 | ||
) |
Definition at line 40 of file MVector.cpp.
References Physics::c, im(), and re().
template std::istream& interpolation::operator>> | ( | std::istream & | in, |
MMatrix< double > & | mat | ||
) |
std::istream & interpolation::operator>> | ( | std::istream & | in, |
MMatrix< Tmplt > & | mat | ||
) |
Definition at line 364 of file MMatrix.cpp.
References nr.
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().
template std::istream& interpolation::operator>> | ( | std::istream & | out, |
MVector< double > & | v | ||
) |
|
inline |
Definition at line 101 of file MVector.h.
References Physics::c.
|
inline |
Definition at line 99 of file MVector.h.
References Physics::c.
Definition at line 378 of file MMatrix.cpp.
References interpolation::MMatrix< Tmplt >::num_col(), and interpolation::MMatrix< Tmplt >::num_row().
Referenced by conj(), operator<<(), operator>>(), ProbeHistReader::parseHeader(), and re().
Definition at line 213 of file MVector.cpp.
References Physics::c, and re().