cee::SymmetricTensor
-
class
SymmetricTensor A symmetric 3x3 tensor represented by 6 values: xx, yy, zz, xy, yz, zx.
Subclassed by SharedMemorySymmetricTensor
Public Functions
-
SymmetricTensor() Constructs a null tensor.
-
SymmetricTensor(const SymmetricTensor &other) Constructs a tensor as a copy of other.
-
SymmetricTensor(double xx, double yy, double zz, double xy, double yz, double zx) Constructs a tensor from the 6 values (xx, yy, zz, xy, yz, zx)
-
SymmetricTensor &
operator=(const SymmetricTensor &SymmetricTensor) Assigns other to this tensor and returns a reference to this tensor.
-
bool
operator==(const SymmetricTensor &rhs) const Returns true if two tensors are equal, otherwise returns false.
An exact match is required xx() == rhs.xx(), etc.
-
bool
operator!=(const SymmetricTensor &rhs) const Returns true if two tensors are not equal, otherwise returns false.
Exact comparison is used (!= between doubles)
-
const SymmetricTensor
operator+(const SymmetricTensor &rhs) const Returns a tensor that is this tensor added with rhs.
-
const SymmetricTensor
operator-(const SymmetricTensor &rhs) const Returns a tensor that is this tensor subtracted with rhs.
-
SymmetricTensor &
operator+=(const SymmetricTensor &rhs) Adds the given rhs tensor to this.
-
SymmetricTensor &
operator-=(const SymmetricTensor &rhs) Subtracts the given rhs tensor from this.
-
const Vec3d
operator*(const Vec3d &v) const Returns a vector that is this tensor multiplied by vector.
-
const SymmetricTensor
operator*(double scalar) const Returns a tensor that is this tensor multiplied by scalar.
-
const SymmetricTensor
operator/(double scalar) const Returns a tensor that is this vector divided by scalar.
-
SymmetricTensor &
operator*=(double scalar) Multiplies every component of this tensor by the given scalar.
-
SymmetricTensor &
operator/=(double scalar) Divides every component of this tensor by the given scalar.
-
const double &
xx() const XX element of the tensor.
-
const double &
yy() const YY element of the tensor.
-
const double &
zz() const ZZ element of the tensor.
-
const double &
xy() const XY element of the tensor.
-
const double &
yz() const YZ element of the tensor.
-
const double &
zx() const ZX element of the tensor.
-
double &
xx() XX element of the tensor.
-
double &
yy() YY element of the tensor.
-
double &
zz() ZZ element of the tensor.
-
double &
xy() XY element of the tensor.
-
double &
yz() YZ element of the tensor.
-
double &
zx() ZX element of the tensor.
-
void
set(double xx, double yy, double zz, double xy, double yz, double zx) Sets xx, yy, zz, xy, yz, zx values.
-
const double *
rawPointer() const Returns a pointer to the raw array storing the 6 components.
-
double
trace() const Returns trace.
-
SymmetricTensor
deviator() const Returns the deviator.
-
double
vonMises() const Returns vonMises value.
-
double
firstPrincipalValue() const Returns first principal value.
-
double
secondPrincipalValue() const Returns second principal value.
-
double
thirdPrincipalValue() const Returns third principal value.
Public Static Functions
-
static SymmetricTensor
identity() Returns identity tensor.
Protected Functions
-
SymmetricTensor(double *values) Constructs a null tensor which will not own its data. Use SharedMemorySymmetricTensor to achieve this.
Friends
-
inline friend SymmetricTensor
operator*(double scalar, const SymmetricTensor &t)
-