escript
Revision_
|
Describes binary operations performed on double*. More...
#include <cmath>
Go to the source code of this file.
Namespaces | |
escript | |
Macros | |
#define | M_PI 3.14159265358979323846 /* pi */ |
Functions | |
bool | escript::nancheck (double d) |
acts as a wrapper to isnan. More... | |
double | escript::makeNaN () |
returns a NaN. More... | |
void | escript::eigenvalues1 (const double A00, double *ev0) |
solves a 1x1 eigenvalue A*V=ev*V problem More... | |
void | escript::eigenvalues2 (const double A00, const double A01, const double A11, double *ev0, double *ev1) |
solves a 2x2 eigenvalue A*V=ev*V problem for symmetric A More... | |
void | escript::eigenvalues3 (const double A00, const double A01, const double A02, const double A11, const double A12, const double A22, double *ev0, double *ev1, double *ev2) |
solves a 3x3 eigenvalue A*V=ev*V problem for symmetric A More... | |
void | escript::eigenvalues_and_eigenvectors1 (const double A00, double *ev0, double *V00, const double tol) |
solves a 1x1 eigenvalue A*V=ev*V problem for symmetric A More... | |
void | escript::vectorInKernel2 (const double A00, const double A10, const double A01, const double A11, double *V0, double *V1) |
returns a non-zero vector in the kernel of [[A00,A01],[A01,A11]] assuming that the kernel dimension is at least 1. More... | |
void | escript::vectorInKernel3__nonZeroA00 (const double A00, const double A10, const double A20, const double A01, const double A11, const double A21, const double A02, const double A12, const double A22, double *V0, double *V1, double *V2) |
returns a non-zero vector in the kernel of [[A00,A01,A02],[A10,A11,A12],[A20,A21,A22]] assuming that the kernel dimension is at least 1 and A00 is non zero. More... | |
void | escript::eigenvalues_and_eigenvectors2 (const double A00, const double A01, const double A11, double *ev0, double *ev1, double *V00, double *V10, double *V01, double *V11, const double tol) |
solves a 2x2 eigenvalue A*V=ev*V problem for symmetric A. Eigenvectors are ordered by increasing value and eigen vectors are normalizeVector3d such that length is zero and first non-zero component is positive. More... | |
void | escript::normalizeVector3 (double *V0, double *V1, double *V2) |
nomalizes a 3-d vector such that length is one and first non-zero component is positive. More... | |
void | escript::eigenvalues_and_eigenvectors3 (const double A00, const double A01, const double A02, const double A11, const double A12, const double A22, double *ev0, double *ev1, double *ev2, double *V00, double *V10, double *V20, double *V01, double *V11, double *V21, double *V02, double *V12, double *V22, const double tol) |
solves a 2x2 eigenvalue A*V=ev*V problem for symmetric A. Eigenvectors are ordered by increasing value and eigen vectors are normalizeVector3d such that length is zero and first non-zero component is positive. More... | |
void | escript::matrix_matrix_product (const int SL, const int SM, const int SR, const double *A, const double *B, double *C, int transpose) |
template<typename UnaryFunction > | |
void | escript::tensor_unary_operation (const int size, const double *arg1, double *argRes, UnaryFunction operation) |
template<typename BinaryFunction > | |
void | escript::tensor_binary_operation (const int size, const double *arg1, const double *arg2, double *argRes, BinaryFunction operation) |
template<typename BinaryFunction > | |
void | escript::tensor_binary_operation (const int size, double arg1, const double *arg2, double *argRes, BinaryFunction operation) |
template<typename BinaryFunction > | |
void | escript::tensor_binary_operation (const int size, const double *arg1, double arg2, double *argRes, BinaryFunction operation) |
Describes binary operations performed on double*.
For operations on DataAbstract see BinaryOp.h. For operations on DataVector see DataMaths.h.
#define M_PI 3.14159265358979323846 /* pi */ |
Referenced by escript::eigenvalues3().