gstlearn
1.0.0
CCC
|
TODO : public ASpaceObject. More...
#include <Tensor.hpp>
Public Member Functions | |
Tensor (unsigned int ndim=2) | |
Tensor (const Tensor &r) | |
Tensor & | operator= (const Tensor &r) |
virtual | ~Tensor () |
virtual String | toString (const AStringFormat *strfmt=nullptr) const override |
Interface for AStringable. More... | |
void | init (int ndim) |
void | setTensorDirect (const MatrixSquareGeneral &tensor) |
void | setTensorInverse (const MatrixSquareGeneral &tensor) |
void | setRadius (double radius) |
void | setRadiusVec (const VectorDouble &radius) |
void | setRadiusDir (unsigned int idim, double radius) |
void | setRotation (const Rotation &rot) |
void | setRotationAngles (const VectorDouble &angles) |
void | setRotationAngle (unsigned int idim, double angle) |
const VectorDouble & | getAngles () const |
const MatrixSquareGeneral & | getTensorDirect () const |
const MatrixSquareGeneral & | getTensorInverse () const |
const VectorDouble & | getRadius () const |
const Rotation & | getRotation () const |
const MatrixSquareGeneral & | getMatrixDirect () const |
const MatrixSquareGeneral & | getMatrixInverse () const |
bool | isIsotropic () const |
bool | hasRotation () const |
VectorDouble | applyDirect (const VectorDouble &vec) const |
VectorDouble | applyInverse (const VectorDouble &vec) const |
void | applyInverseInPlace (const VectorDouble &vec, VectorDouble &out) const |
void | applyDirectInPlace (const VectorDouble &vec, VectorDouble &out) const |
Public Member Functions inherited from AStringable | |
AStringable () | |
AStringable (const AStringable &r) | |
AStringable & | operator= (const AStringable &r) |
virtual | ~AStringable () |
virtual void | display (const AStringFormat *strfmt=nullptr) const final |
virtual void | display (int level) const final |
Private Member Functions | |
void | _updateIsotropic () |
void | _fillTensors () |
Private Attributes | |
unsigned int | _nDim |
MatrixSquareGeneral | _tensorDirect |
Number of dimensions. More... | |
MatrixSquareGeneral | _tensorInverse |
Direct Tensor matrix (definite positive) More... | |
VectorDouble | _radius |
Inverse Tensor matrix (definite positive) More... | |
Rotation | _rotation |
Ellipsoid radius. More... | |
bool | _isotropic |
Ellipsoid rotation. More... | |
TODO : public ASpaceObject.
Tensor::Tensor | ( | unsigned int | ndim = 2 | ) |
Tensor::Tensor | ( | const Tensor & | r | ) |
|
virtual |
|
private |
|
private |
VectorDouble Tensor::applyDirect | ( | const VectorDouble & | vec | ) | const |
void Tensor::applyDirectInPlace | ( | const VectorDouble & | vec, |
VectorDouble & | out | ||
) | const |
VectorDouble Tensor::applyInverse | ( | const VectorDouble & | vec | ) | const |
void Tensor::applyInverseInPlace | ( | const VectorDouble & | vec, |
VectorDouble & | out | ||
) | const |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void Tensor::init | ( | int | ndim | ) |
|
inline |
void Tensor::setRadius | ( | double | radius | ) |
void Tensor::setRadiusDir | ( | unsigned int | idim, |
double | radius | ||
) |
void Tensor::setRadiusVec | ( | const VectorDouble & | radius | ) |
void Tensor::setRotation | ( | const Rotation & | rot | ) |
void Tensor::setRotationAngle | ( | unsigned int | idim, |
double | angle | ||
) |
void Tensor::setRotationAngles | ( | const VectorDouble & | angles | ) |
TODO : Rotation angles in 2D
|
inline |
|
inline |
|
overridevirtual |
Interface for AStringable.
Reimplemented from AStringable.
|
private |
Ellipsoid rotation.
|
private |
|
private |
Inverse Tensor matrix (definite positive)
|
private |
Ellipsoid radius.
|
private |
Number of dimensions.
|
private |
Direct Tensor matrix (definite positive)