![]() |
OGS
|
Contains all mathematical functionality used in OpenGeoSys, from defining a vector or calculating a norm to integration schemes and matrix preconditioners.
Namespaces | |
detail | |
details | |
KelvinVector | |
LinAlg | |
Nonlinear | |
ODE | |
Classes | |
class | PiecewiseLinearMonotonicCurve |
Class for strong monotonic curves. More... | |
class | TemplatePoint |
class-template for points can be instantiated by a numeric type. More... | |
struct | GaussLegendre |
struct | GaussLegendrePyramid |
struct | GaussLegendrePyramid< 2 > |
struct | GaussLegendrePyramid< 3 > |
struct | GaussLegendreTet |
struct | GaussLegendreTet< 2 > |
struct | GaussLegendreTet< 3 > |
struct | GaussLegendreTri |
struct | GaussLegendreTri< 2 > |
struct | GaussLegendreTri< 3 > |
struct | GaussLegendreTri< 4 > |
struct | WeightedSum |
class | LinearIntervalInterpolation |
Class (template) LinearIntervalInterpolation is a functional object performing an interval mapping f: [a,b] \to [c,d]. More... | |
class | PiecewiseLinearInterpolation |
class | EigenLinearSolverBase |
class | EigenLinearSolver |
class | EigenMatrix |
struct | SetMatrixSparsity< EigenMatrix, SPARSITY_PATTERN > |
Sets the sparsity pattern of the underlying EigenMatrix. More... | |
struct | EigenOption |
Option for Eigen sparse solver. More... | |
class | EigenVector |
Global vector based on Eigen vector. More... | |
class | EigenLisLinearSolver |
class | LisLinearSolver |
Linear solver using Lis (http://www.ssisc.org/lis/) More... | |
class | LisMatrix |
LisMatrix is a wrapper class for matrix types of the linear iterative solvers library. More... | |
struct | SetMatrixSparsity< LisMatrix, SPARSITY_PATTERN > |
Sets the sparsity pattern of the underlying LisMatrix. More... | |
struct | LisOption |
class | LisVector |
Lis vector wrapper class. More... | |
struct | MatrixSpecifications |
struct | MatrixVectorTraits |
class | PETScLinearSolver |
class | PETScMatrix |
Wrapper class for PETSc matrix routines for matrix. More... | |
struct | PETScMatrixOption |
This a struct data containing the configuration information to create a PETSc type matrix. More... | |
class | PETScVector |
Wrapper class for PETSc vector. More... | |
struct | RowColumnIndices |
struct | SetMatrixSparsity |
class | Point3dWithID |
class | TemplateWeightedPoint |
Typedefs | |
using | Point3d = MathLib::TemplatePoint< double, 3 > |
template<typename IndexType > | |
using | SparsityPattern = std::vector< IndexType > |
A vector telling how many nonzeros there are in each global matrix row. More... | |
using | WeightedPoint1D = TemplateWeightedPoint< double, double, 1 > |
using | WeightedPoint2D = TemplateWeightedPoint< double, double, 2 > |
using | WeightedPoint3D = TemplateWeightedPoint< double, double, 3 > |
Enumerations | |
enum | TriangleTest { GAUSS , BARYCENTRIC } |
enum class | VecNormType { NORM1 , NORM2 , INFINITY_N , INVALID } |
Norm type. Not declared as class type in order to use the members as integers. More... | |
Functions | |
template<typename CurveType > | |
std::unique_ptr< CurveType > | createPiecewiseLinearCurve (BaseLib::ConfigTree const &config) |
double | orientation3d (MathLib::Point3d const &p, MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c) |
double | calcTetrahedronVolume (MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c, MathLib::Point3d const &d) |
double | calcTriangleArea (MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c) |
bool | isPointInTetrahedron (MathLib::Point3d const &p, MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c, MathLib::Point3d const &d, double eps) |
bool | isPointInTriangle (MathLib::Point3d const &p, MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c, double eps_pnt_out_of_plane, double eps_pnt_out_of_tri, MathLib::TriangleTest algorithm) |
bool | gaussPointInTriangle (MathLib::Point3d const &q, MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c, double eps_pnt_out_of_plane, double eps_pnt_out_of_tri) |
bool | barycentricPointInTriangle (MathLib::Point3d const &p, MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c, double eps_pnt_out_of_plane, double eps_pnt_out_of_tri) |
bool | isPointInTriangleXY (MathLib::Point3d const &p, MathLib::Point3d const &a, MathLib::Point3d const &b, MathLib::Point3d const &c) |
bool | dividedByPlane (const MathLib::Point3d &a, const MathLib::Point3d &b, const MathLib::Point3d &c, const MathLib::Point3d &d) |
bool | isCoplanar (const MathLib::Point3d &a, const MathLib::Point3d &b, const MathLib::Point3d &c, const MathLib::Point3d &d) |
Checks if the four given points are located on a plane. More... | |
static std::array< std::array< double, 3 >, GaussLegendreTet< 3 >::NPoints > | initGLTet3X () |
template<typename Matrix > | |
Eigen::Map< Matrix > | createZeroedMatrix (std::vector< double > &data, Eigen::MatrixXd::Index rows, Eigen::MatrixXd::Index cols) |
template<typename Matrix > | |
Eigen::Map< const Matrix > | toMatrix (std::vector< double > const &data, Eigen::MatrixXd::Index rows, Eigen::MatrixXd::Index cols) |
template<typename Matrix > | |
Eigen::Map< Matrix > | toMatrix (std::vector< double > &data, Eigen::MatrixXd::Index rows, Eigen::MatrixXd::Index cols) |
template<typename Vector > | |
Eigen::Map< Vector > | createZeroedVector (std::vector< double > &data, Eigen::VectorXd::Index size) |
template<typename Vector > | |
Eigen::Map< const Vector > | toVector (std::vector< double > const &data, Eigen::VectorXd::Index size) |
Creates an Eigen mapped vector from the given data vector. More... | |
template<typename Vector > | |
Eigen::Map< Vector > | toVector (std::vector< double > &data, Eigen::VectorXd::Index size) |
Creates an Eigen mapped vector from the given data vector. More... | |
Eigen::Map< const Eigen::VectorXd > | toVector (std::vector< double > const &data) |
Eigen::Map< Eigen::VectorXd > | toVector (std::vector< double > &data) |
void | applyKnownSolution (EigenMatrix &A, EigenVector &b, EigenVector &, const std::vector< EigenMatrix::IndexType > &vec_knownX_id, const std::vector< double > &vec_knownX_x, double) |
template<typename MAT_T > | |
bool | finalizeMatrixAssembly (MAT_T &) |
template<typename VEC_T > | |
void | finalizeVectorAssembly (VEC_T &) |
General function to finalize the vector assembly. More... | |
std::string | convertVecNormTypeToString (VecNormType normType) |
convert VecNormType to string More... | |
VecNormType | convertStringToVecNormType (const std::string &str) |
convert string to VecNormType More... | |
void | ignoreOtherLinearSolvers (const BaseLib::ConfigTree &config, const std::string &solver_name) |
bool | checkLisError (int err) |
bool | finalizeMatrixAssembly (LisMatrix &mat) |
finish assembly to make this matrix be ready for use More... | |
SPECIALIZE_MATRIX_VECTOR_TRAITS (PETScMatrix, PETScMatrix::IndexType) | |
SPECIALIZE_MATRIX_VECTOR_TRAITS (PETScVector, PETScVector::IndexType) | |
bool | finalizeMatrixAssembly (PETScMatrix &mat, const MatAssemblyType asm_type=MAT_FINAL_ASSEMBLY) |
General interface for the matrix assembly. More... | |
void | applyKnownSolution (PETScMatrix &A, PETScVector &b, PETScVector &x, const std::vector< PetscInt > &vec_knownX_id, const std::vector< PetscScalar > &vec_knownX_x) |
apply known solutions to a system of linear equations More... | |
void | finalizeVectorAssembly (PETScVector &vec) |
Function to finalize the vector assembly. More... | |
template<typename MATRIX , typename SPARSITY_PATTERN > | |
void | setMatrixSparsity (MATRIX &matrix, SPARSITY_PATTERN const &sparsity_pattern) |
void | setVector (PETScVector &v, std::initializer_list< double > values) |
void | setVector (PETScVector &v, MatrixVectorTraits< PETScVector >::Index const index, double const value) |
void | setMatrix (PETScMatrix &m, std::initializer_list< double > values) |
void | setMatrix (PETScMatrix &m, Eigen::MatrixXd const &tmp) |
void | addToMatrix (PETScMatrix &m, std::initializer_list< double > values) |
double | calcProjPntToLineAndDists (Point3d const &pp, Point3d const &pa, Point3d const &pb, double &lambda, double &d0) |
double | getAngle (Point3d const &p0, Point3d const &p1, Point3d const &p2) |
template<typename MATRIX > | |
MathLib::Point3d | operator* (MATRIX const &mat, MathLib::Point3d const &p) |
double | sqrDist (MathLib::Point3d const &p0, MathLib::Point3d const &p1) |
double | sqrDist2d (MathLib::Point3d const &p0, MathLib::Point3d const &p1) |
template<typename T , std::size_t DIM> | |
bool | operator== (TemplatePoint< T, DIM > const &a, TemplatePoint< T, DIM > const &b) |
template<typename T , std::size_t DIM> | |
bool | operator< (TemplatePoint< T, DIM > const &a, TemplatePoint< T, DIM > const &b) |
template<typename T , std::size_t DIM> | |
bool | lessEq (TemplatePoint< T, DIM > const &a, TemplatePoint< T, DIM > const &b, double eps=std::numeric_limits< double >::epsilon()) |
template<typename T , std::size_t DIM> | |
std::ostream & | operator<< (std::ostream &os, const TemplatePoint< T, DIM > &p) |
template<typename T , std::size_t DIM> | |
std::istream & | operator>> (std::istream &is, TemplatePoint< T, DIM > &p) |
Variables | |
static const double | p = 0.1126879257180162 / 6. |
static const double | q = 0.0734930431163619 / 6. |
static const double | r = 0.0425460207770812 / 6. |
const Point3d | ORIGIN {{{0.0, 0.0, 0.0}}} |
typedef MathLib::TemplatePoint< double, 3 > MathLib::Point3d |
Definition at line 19 of file GeometricBasics.h.
using MathLib::SparsityPattern = typedef std::vector<IndexType> |
A vector telling how many nonzeros there are in each global matrix row.
Definition at line 19 of file SparsityPattern.h.
using MathLib::WeightedPoint1D = typedef TemplateWeightedPoint<double, double, 1> |
Definition at line 34 of file TemplateWeightedPoint.h.
using MathLib::WeightedPoint2D = typedef TemplateWeightedPoint<double, double, 2> |
Definition at line 35 of file TemplateWeightedPoint.h.
using MathLib::WeightedPoint3D = typedef TemplateWeightedPoint<double, double, 3> |
Definition at line 36 of file TemplateWeightedPoint.h.
|
strong |
Norm type. Not declared as class type in order to use the members as integers.
Enumerator | |
---|---|
NORM1 | \sum_i |x_i| |
NORM2 | \sqrt(\sum_i (x_i)^2) |
INFINITY_N | \mathrm{max}_i |x_i| |
INVALID |
Definition at line 21 of file LinAlgEnums.h.
void MathLib::addToMatrix | ( | PETScMatrix & | m, |
std::initializer_list< double > | values | ||
) |
Definition at line 71 of file UnifiedMatrixSetters.cpp.
References MathLib::PETScMatrix::add(), MaterialPropertyLib::c, MathLib::PETScMatrix::getNumberOfColumns(), MathLib::PETScMatrix::getNumberOfRows(), and r.
Referenced by setMatrix().
void MathLib::applyKnownSolution | ( | EigenMatrix & | A, |
EigenVector & | b, | ||
EigenVector & | , | ||
const std::vector< EigenMatrix::IndexType > & | vec_knownX_id, | ||
const std::vector< double > & | vec_knownX_x, | ||
double | penalty_scaling = 1e+10 |
||
) |
apply known solutions to a system of linear equations
A | Coefficient matrix |
b | RHS vector |
vec_knownX_id | a vector of known solution entry IDs |
vec_knownX_x | a vector of known solutions |
penalty_scaling | value for scaling some matrix and right hand side entries to enforce some conditions, value ignored in the current implementation |
Definition at line 17 of file EigenTools.cpp.
References MaterialPropertyLib::c, MathLib::EigenMatrix::getRawMatrix(), and MathLib::EigenVector::getRawVector().
Referenced by NumLib::TimeDiscretizedODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Newton >::applyKnownSolutionsNewton(), and NumLib::TimeDiscretizedODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard >::applyKnownSolutionsPicard().
void MathLib::applyKnownSolution | ( | PETScMatrix & | A, |
PETScVector & | b, | ||
PETScVector & | x, | ||
const std::vector< PetscInt > & | vec_knownX_id, | ||
const std::vector< PetscScalar > & | vec_knownX_x | ||
) |
apply known solutions to a system of linear equations
A | Coefficient matrix |
b | RHS vector |
x | Solution vector |
vec_knownX_id | A vector of known solution entry IDs |
vec_knownX_x | A vector of known solutions |
Definition at line 21 of file PETScTools.cpp.
References MathLib::PETScVector::finalizeAssembly(), MathLib::PETScMatrix::finalizeAssembly(), MathLib::PETScVector::set(), and MathLib::PETScMatrix::setRowsColumnsZero().
bool MathLib::barycentricPointInTriangle | ( | MathLib::Point3d const & | p, |
MathLib::Point3d const & | a, | ||
MathLib::Point3d const & | b, | ||
MathLib::Point3d const & | c, | ||
double | eps_pnt_out_of_plane = std::numeric_limits< float >::epsilon() , |
||
double | eps_pnt_out_of_tri = std::numeric_limits< float >::epsilon() |
||
) |
Tests if the given point p is within the triangle, defined by its edge nodes a, b and c. Using two eps-values it is possible to test an 'epsilon' neighbourhood around the triangle as well as an 'epsilon' outside the triangles plane. Algorithm based on "Fundamentals of Computer Graphics" by Peter Shirley.
p | test point |
a | edge node of triangle |
b | edge node of triangle |
c | edge node of triangle |
eps_pnt_out_of_plane | eps allowing for p to be slightly off the plane spanned by abc |
eps_pnt_out_of_tri | eps allowing for p to be slightly off outside of abc |
Definition at line 162 of file GeometricBasics.cpp.
References MaterialPropertyLib::alpha, MaterialPropertyLib::beta, MaterialPropertyLib::c, calcTriangleArea(), MathLib::TemplatePoint< T, DIM >::getCoords(), orientation3d(), and p.
Referenced by isPointInTriangle().
double MathLib::calcProjPntToLineAndDists | ( | MathLib::Point3d const & | pp, |
MathLib::Point3d const & | pa, | ||
MathLib::Point3d const & | pb, | ||
double & | lambda, | ||
double & | d0 | ||
) |
calcProjPntToLineAndDists computes the orthogonal projection of a point p to the line described by the points a and b, g(\lambda) = a + \lambda (b - a), the distance between p and the projected point and the distances between the projected point and the end points pa, pb of the line
pp | the (mesh) point |
pa | first point of line |
pb | second point of line |
lambda | the projected point described by the line equation above |
d0 | distance to the line point a |
Definition at line 19 of file MathTools.cpp.
References MathLib::TemplatePoint< T, DIM >::getCoords(), MathLib::LinAlg::norm(), and p.
Referenced by GeoLib::Polyline::getDistanceAlongPolyline(), and MeshLib::LineRule2::isPntInElement().
double MathLib::calcTetrahedronVolume | ( | MathLib::Point3d const & | a, |
MathLib::Point3d const & | b, | ||
MathLib::Point3d const & | c, | ||
MathLib::Point3d const & | d | ||
) |
Calculates the volume of a tetrahedron. The formula is V=1/6*|a(b x c)| with a=x1->x2, b=x1->x3 and c=x1->x4.
Definition at line 35 of file GeometricBasics.cpp.
References MaterialPropertyLib::c, and MathLib::TemplatePoint< T, DIM >::getCoords().
Referenced by MeshLib::HexRule8::computeVolume(), MeshLib::PrismRule6::computeVolume(), MeshLib::PyramidRule5::computeVolume(), and MeshLib::TetRule4::computeVolume().
double MathLib::calcTriangleArea | ( | MathLib::Point3d const & | a, |
MathLib::Point3d const & | b, | ||
MathLib::Point3d const & | c | ||
) |
Calculates the area of the triangle defined by its edge nodes a, b and c. The formula is A= \frac{1}{2} \cdot |u \times v|, i.e. half of the area of the parallelogram specified by the vectors u=b-a and v=c-a.
Definition at line 50 of file GeometricBasics.cpp.
References MaterialPropertyLib::c, and MathLib::TemplatePoint< T, DIM >::getCoords().
Referenced by barycentricPointInTriangle(), MeshLib::QuadRule4::computeVolume(), MeshLib::TriRule3::computeVolume(), and GeoLib::IO::TINInterface::readTIN().
|
inline |
check Lis error codes
err | Lis error code |
Definition at line 32 of file LisCheck.h.
References ERR().
Referenced by MathLib::LisMatrix::LisMatrix(), MathLib::LisMatrix::~LisMatrix(), MathLib::SetMatrixSparsity< LisMatrix, SPARSITY_PATTERN >::operator()(), MathLib::LisMatrix::setZero(), MathLib::LisVector::size(), and MathLib::LisLinearSolver::solve().
VecNormType MathLib::convertStringToVecNormType | ( | const std::string & | str | ) |
convert string to VecNormType
Definition at line 32 of file LinAlgEnums.cpp.
References INFINITY_N, INVALID, NORM1, and NORM2.
Referenced by NumLib::createConvergenceCriterionDeltaX(), NumLib::createConvergenceCriterionPerComponentDeltaX(), NumLib::createConvergenceCriterionPerComponentResidual(), and NumLib::createConvergenceCriterionResidual().
std::string MathLib::convertVecNormTypeToString | ( | VecNormType | normType | ) |
convert VecNormType to string
Definition at line 17 of file LinAlgEnums.cpp.
References INFINITY_N, NORM1, and NORM2.
std::unique_ptr< CurveType > MathLib::createPiecewiseLinearCurve | ( | BaseLib::ConfigTree const & | config | ) |
Create a curve
config | ConfigTree object has a tag of <curve> |
Definition at line 21 of file CreatePiecewiseLinearCurve-impl.h.
References BaseLib::ConfigTree::getConfigParameter(), and OGS_FATAL.
Referenced by MaterialLib::PorousMedium::createCapillaryPressureModel(), MaterialLib::PorousMedium::createRelativePermeabilityModel(), and ProjectData::parseCurves().
|
inline |
Creates an Eigen mapped matrix having its entries stored in the given data
vector.
data
vector must have zero size. data
has size rows
* cols
.Creates an Eigen mapped matrix having its entries stored in the given data
vector.
This is a convenience method which makes the specification of dynamically allocated Eigen matrices as return type easier.
Definition at line 32 of file EigenMapTools.h.
Referenced by ProcessLib::StokesFlow::LocalAssemblerData< ShapeFunctionLiquidVelocity, ShapeFunctionPressure, IntegrationMethod, GlobalDim >::assemble(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assemble(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::assemble(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::assembleWithJacobian(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::CentralDifferencesJacobianAssembler::assembleWithJacobian(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForDeformationEquations(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobianForDeformationEquations(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForDeformationEquations(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForHeatConductionEquations(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForHeatConductionEquations(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForPhaseFieldEquations(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobianForPressureEquations(), ProcessLib::ComponentTransport::LocalAssemblerData< ShapeFunction, IntegrationMethod, GlobalDim >::calculateIntPtDarcyVelocity(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getEpsilon(), ProcessLib::getIntegrationPointKelvinVectorData(), ProcessLib::getIntegrationPointScalarData(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocity(), ProcessLib::RichardsComponentTransport::LocalAssemblerData< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtDarcyVelocity(), ProcessLib::RichardsFlow::LocalAssemblerData< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtDarcyVelocity(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocity(), ProcessLib::SteadyStateDiffusion::LocalAssemblerData< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtDarcyVelocity(), ProcessLib::TES::TESLocalAssembler< ShapeFunction_, IntegrationMethod_, GlobalDim >::getIntPtDarcyVelocity(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocity(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtDarcyVelocity(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocity(), ProcessLib::LiquidFlow::LiquidFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtDarcyVelocity(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocityGas(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocityLiquid(), ProcessLib::HT::HTFEM< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtDarcyVelocityLocal(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtHeatFlux(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtSwellingStress(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtSwellingStress(), and ProcessLib::Deformation::solidMaterialInternalToSecondaryVariables().
Eigen::Map<Vector> MathLib::createZeroedVector | ( | std::vector< double > & | data, |
Eigen::VectorXd::Index | size | ||
) |
Creates an Eigen mapped vector having its entries stored in the given data
vector.
data
vector must have zero size. data
has size size
. Definition at line 153 of file EigenMapTools.h.
Referenced by ProcessLib::StokesFlow::LocalAssemblerData< ShapeFunctionLiquidVelocity, ShapeFunctionPressure, IntegrationMethod, GlobalDim >::assemble(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assemble(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::assemble(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::assembleWithJacobian(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForDeformationEquations(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobianForDeformationEquations(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForDeformationEquations(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForHeatConductionEquations(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForHeatConductionEquations(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForPhaseFieldEquations(), and ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobianForPressureEquations().
bool MathLib::dividedByPlane | ( | const MathLib::Point3d & | a, |
const MathLib::Point3d & | b, | ||
const MathLib::Point3d & | c, | ||
const MathLib::Point3d & | d | ||
) |
Checks if a and b can be placed on a plane such that c and d lie on different sides of said plane. (In 2D space this checks if c and d are on different sides of a line through a and b.)
a | first point on plane |
b | second point on plane |
c | first point to test |
d | second point to test |
Definition at line 217 of file GeometricBasics.cpp.
References MaterialPropertyLib::c.
Referenced by MeshLib::QuadRule4::validate().
bool MathLib::finalizeMatrixAssembly | ( | LisMatrix & | mat | ) |
bool MathLib::finalizeMatrixAssembly | ( | MAT_T & | ) |
Definition at line 18 of file FinalizeMatrixAssembly.h.
Referenced by ProcessLib::LiquidFlow::LiquidFlowProcess::assembleConcreteProcess(), ProcessLib::HeatConduction::HeatConductionProcess::assembleConcreteProcess(), MathLib::LisLinearSolver::solve(), and ProcessLib::ComponentTransport::ComponentTransportProcess::solveReactionEquation().
bool MathLib::finalizeMatrixAssembly | ( | PETScMatrix & | mat, |
const MatAssemblyType | asm_type = MAT_FINAL_ASSEMBLY |
||
) |
General interface for the matrix assembly.
mat | The matrix to be finalized. |
asm_type | Assmebly type, either MAT_FLUSH_ASSEMBLY or MAT_FINAL_ASSEMBLY. |
Definition at line 152 of file PETScMatrix.cpp.
void MathLib::finalizeVectorAssembly | ( | PETScVector & | vec | ) |
Function to finalize the vector assembly.
Definition at line 320 of file PETScVector.cpp.
void MathLib::finalizeVectorAssembly | ( | VEC_T & | ) |
General function to finalize the vector assembly.
Definition at line 19 of file FinalizeVectorAssembly.h.
Referenced by ProcessLib::LiquidFlow::LiquidFlowProcess::assembleConcreteProcess(), ProcessLib::HeatConduction::HeatConductionProcess::assembleConcreteProcess(), NumLib::PETScNonlinearSolver::solve(), and ProcessLib::ComponentTransport::ComponentTransportProcess::solveReactionEquation().
bool MathLib::gaussPointInTriangle | ( | MathLib::Point3d const & | q, |
MathLib::Point3d const & | a, | ||
MathLib::Point3d const & | b, | ||
MathLib::Point3d const & | c, | ||
double | eps_pnt_out_of_plane = std::numeric_limits< float >::epsilon() , |
||
double | eps_pnt_out_of_tri = std::numeric_limits< float >::epsilon() |
||
) |
Tests if the given point q is within the triangle, defined by its edge nodes a, b and c. Using two eps-values it is possible to test an 'epsilon' neighbourhood around the triangle as well as an 'epsilon' outside the triangles plane.
q | test point |
a | edge node of triangle |
b | edge node of triangle |
c | edge node of triangle |
eps_pnt_out_of_plane | eps allowing for p to be slightly off the plane spanned by abc ((orthogonal distance to the plane spaned by triangle) |
eps_pnt_out_of_tri | eps allowing for p to be slightly off outside of abc |
Definition at line 120 of file GeometricBasics.cpp.
References MaterialPropertyLib::c, MathLib::TemplatePoint< T, DIM >::getCoords(), q, and sqrDist().
Referenced by isPointInTriangle().
Let p_0, p_1, p_2 \in R^3. The function getAngle computes the angle between the edges (p_0,p_1) and (p_1,p_2)
p0 | start point of edge 0 |
p1 | end point of edge 0 and start point of edge 1 |
p2 | end point of edge 1 |
Definition at line 42 of file MathTools.cpp.
References MaterialPropertyLib::c, and MathLib::TemplatePoint< T, DIM >::getCoords().
Referenced by MeshLib::anonymous_namespace{AngleSkewMetric.cpp}::getMinMaxAngle().
void MathLib::ignoreOtherLinearSolvers | ( | BaseLib::ConfigTree const & | config, |
std::string const & | solver_name | ||
) |
Ignore linear solver settings not needed for the selected one.
The project files support specifying linear solver options for all known solver libraries (currently PETSC, LIS, Eigen) even though for a specific build only one of those settings is used. That clearly conflicts with the requirement of the config tree that each setting present in the project file must be read exactly once.
The purpose of this function is to explicitly ignore all the settings that are not relevant for the currently used linear solver
config | The config tree snippet for the linear solver. |
solver_name | The tag under which the relevant configuration is found. All other configurations will be ignored. |
This function is currently used in the option parsing code of our EigenLinearSolver
, LisOption
and PETScLinearSolver
Definition at line 12 of file LinearSolverOptions.cpp.
References BaseLib::ConfigTree::ignoreConfigParameter(), and known_linear_solvers.
Referenced by MathLib::LisOption::LisOption(), MathLib::PETScLinearSolver::PETScLinearSolver(), and MathLib::EigenLinearSolver::setOption().
|
static |
bool MathLib::isCoplanar | ( | const MathLib::Point3d & | a, |
const MathLib::Point3d & | b, | ||
const MathLib::Point3d & | c, | ||
const MathLib::Point3d & | d | ||
) |
Checks if the four given points are located on a plane.
Definition at line 236 of file GeometricBasics.cpp.
References MaterialPropertyLib::c, and MathLib::TemplatePoint< T, DIM >::getCoords().
Referenced by GeoLib::MinimalBoundingSphere::MinimalBoundingSphere(), MeshLib::MeshRevision::constructFourNodeElement(), GeoLib::Polyline::isCoplanar(), GeoLib::lineSegmentIntersect(), MeshLib::MeshRevision::reducePrism(), and MeshLib::QuadRule4::validate().
bool MathLib::isPointInTetrahedron | ( | MathLib::Point3d const & | p, |
MathLib::Point3d const & | a, | ||
MathLib::Point3d const & | b, | ||
MathLib::Point3d const & | c, | ||
MathLib::Point3d const & | d, | ||
double | eps = std::numeric_limits< double >::epsilon() |
||
) |
Tests if the given point p is located within a tetrahedron spanned by points a, b, c, d. If the tet specified by a, b, c, d is degenerated (i.e. all points are coplanar) the function will return false because there is no meaningful concept of "inside" for such elements.
p | test point |
a | edge node of tetrahedron |
b | edge node of tetrahedron |
c | edge node of tetrahedron |
d | edge node of tetrahedron |
eps | Accounts for numerical inaccuracies by allowing a point to be slightly outside of the element and still be regarded as inside. |
Definition at line 62 of file GeometricBasics.cpp.
References MaterialPropertyLib::c, orientation3d(), and p.
Referenced by MeshLib::HexRule8::isPntInElement(), MeshLib::PrismRule6::isPntInElement(), MeshLib::PyramidRule5::isPntInElement(), and MeshLib::TetRule4::isPntInElement().
bool MathLib::isPointInTriangle | ( | MathLib::Point3d const & | p, |
MathLib::Point3d const & | a, | ||
MathLib::Point3d const & | b, | ||
MathLib::Point3d const & | c, | ||
double | eps_pnt_out_of_plane = std::numeric_limits< float >::epsilon() , |
||
double | eps_pnt_out_of_tri = std::numeric_limits< float >::epsilon() , |
||
MathLib::TriangleTest | algorithm = MathLib::GAUSS |
||
) |
Tests if the given point p is within the triangle, defined by its edge nodes a, b and c.Using two eps-values it is possible to test an 'epsilon' neighbourhood around the triangle as well as an 'epsilon' outside the triangles plane.
p | test point |
a | edge node of triangle |
b | edge node of triangle |
c | edge node of triangle |
eps_pnt_out_of_plane | eps allowing for p to be slightly off the plane spanned by abc |
eps_pnt_out_of_tri | eps allowing for p to be slightly off outside of abc |
algorithm | defines the method to use |
Definition at line 96 of file GeometricBasics.cpp.
References BARYCENTRIC, barycentricPointInTriangle(), MaterialPropertyLib::c, ERR(), GAUSS, gaussPointInTriangle(), and p.
Referenced by GeoLib::Triangle::containsPoint(), GeoLib::EarClippingTriangulation::isEar(), MeshLib::QuadRule4::isPntInElement(), and MeshLib::TriRule3::isPntInElement().
bool MathLib::isPointInTriangleXY | ( | MathLib::Point3d const & | p, |
MathLib::Point3d const & | a, | ||
MathLib::Point3d const & | b, | ||
MathLib::Point3d const & | c | ||
) |
Checks if the point p' is in the triangle defined by the points a', b', c', where the p', a', b', c' are the orthogonal projections to the x- y plane of the points p, a, b, c, respectively.
Definition at line 197 of file GeometricBasics.cpp.
References MaterialPropertyLib::c, and p.
Referenced by MeshLib::isPointInElementXY().
bool MathLib::lessEq | ( | TemplatePoint< T, DIM > const & | a, |
TemplatePoint< T, DIM > const & | b, | ||
double | eps = std::numeric_limits<double>::epsilon() |
||
) |
Lexicographic comparison of points taking an epsilon into account.
a | first input point. |
b | second input point. |
eps | tolerance used in comparison of coordinates. |
Definition at line 148 of file TemplatePoint.h.
|
inline |
bool MathLib::operator< | ( | TemplatePoint< T, DIM > const & | a, |
TemplatePoint< T, DIM > const & | b | ||
) |
Definition at line 117 of file TemplatePoint.h.
std::ostream& MathLib::operator<< | ( | std::ostream & | os, |
const TemplatePoint< T, DIM > & | p | ||
) |
overload the output operator for class Point
Definition at line 173 of file TemplatePoint.h.
References p.
bool MathLib::operator== | ( | TemplatePoint< T, DIM > const & | a, |
TemplatePoint< T, DIM > const & | b | ||
) |
Equality of TemplatePoint's up to an epsilon.
Definition at line 109 of file TemplatePoint.h.
References sqrDist().
std::istream& MathLib::operator>> | ( | std::istream & | is, |
TemplatePoint< T, DIM > & | p | ||
) |
overload the input operator for class Point
Definition at line 181 of file TemplatePoint.h.
References p.
double MathLib::orientation3d | ( | MathLib::Point3d const & | p, |
MathLib::Point3d const & | a, | ||
MathLib::Point3d const & | b, | ||
MathLib::Point3d const & | c | ||
) |
Checks if a point p is on the left or right side of a plane spanned by three points a, b, c.
p | point to test |
a | first point on plane |
b | second point on plane |
c | third point on plane |
Definition at line 19 of file GeometricBasics.cpp.
References MaterialPropertyLib::c, MathLib::TemplatePoint< T, DIM >::getCoords(), and p.
Referenced by barycentricPointInTriangle(), and isPointInTetrahedron().
void MathLib::setMatrix | ( | PETScMatrix & | m, |
Eigen::MatrixXd const & | tmp | ||
) |
Definition at line 48 of file UnifiedMatrixSetters.cpp.
References MathLib::PETScMatrix::add(), MathLib::PETScMatrix::getNumberOfColumns(), MathLib::PETScMatrix::getNumberOfRows(), and MathLib::PETScMatrix::setZero().
void MathLib::setMatrix | ( | PETScMatrix & | m, |
std::initializer_list< double > | values | ||
) |
Definition at line 42 of file UnifiedMatrixSetters.cpp.
References addToMatrix(), and MathLib::PETScMatrix::setZero().
void MathLib::setMatrixSparsity | ( | MATRIX & | matrix, |
SPARSITY_PATTERN const & | sparsity_pattern | ||
) |
Sets the sparsity pattern of the underlying matrix. To allow partial specialization a SetMatrixSparsity template is instantiated, to which the matrix and the sparsity_pattern are passed.
Definition at line 31 of file SetMatrixSparsity.h.
void MathLib::setVector | ( | PETScVector & | v, |
MatrixVectorTraits< PETScVector >::Index const | index, | ||
double const | value | ||
) |
Definition at line 35 of file UnifiedMatrixSetters.cpp.
References MathLib::PETScVector::set().
void MathLib::setVector | ( | PETScVector & | v, |
std::initializer_list< double > | values | ||
) |
Definition at line 26 of file UnifiedMatrixSetters.cpp.
References MathLib::PETScVector::set().
Referenced by detail::applyKnownSolutions().
MathLib::SPECIALIZE_MATRIX_VECTOR_TRAITS | ( | PETScMatrix | , |
PETScMatrix::IndexType | |||
) |
MathLib::SPECIALIZE_MATRIX_VECTOR_TRAITS | ( | PETScVector | , |
PETScVector::IndexType | |||
) |
|
inline |
Computes the squared dist between the two points p0 and p1.
Definition at line 48 of file Point3d.h.
References MathLib::TemplatePoint< T, DIM >::getCoords().
Referenced by MeshGeoToolsLib::BoundaryElementsAtPoint::BoundaryElementsAtPoint(), MeshLib::EdgeRatioMetric::calculateQuality(), MeshLib::MeshRevision::collapseNodeIndices(), MeshLib::computeSqrEdgeLengthRange(), MeshLib::computeSqrNodeDistanceRange(), MeshLib::LineRule2::computeVolume(), GeoLib::Polygon::containsSegment(), createPoints(), MeshGeoToolsLib::createSubSegmentsForElement(), MeshLib::findElementsWithinRadius(), gaussPointInTriangle(), GeoLib::Polyline::getLocationOfPoint(), MeshGeoToolsLib::MeshNodeSearcher::getMeshNodeIDs(), MeshLib::PointRule1::isPntInElement(), GeoLib::lineSegmentIntersect(), main(), MeshGeoToolsLib::mapLineSegment(), GeoLib::operator==(), operator==(), GeoLib::MinimalBoundingSphere::pointDistanceSquared(), GeoLib::pointsAreIdentical(), and GeoLib::sortSegments().
|
inline |
Computes the squared distance between the orthogonal projection of the two points p0
and p1
onto the xy-plane.
Definition at line 58 of file Point3d.h.
Referenced by MeshLib::isPointInElementXY(), GeoLib::lineSegmentIntersect2d(), and MeshGeoToolsLib::snapPointToElementNode().
|
inline |
Creates an Eigen mapped matrix from the given data vector.
Creates an Eigen mapped matrix from the given data vector.
This is a convenience method which makes the specification of dynamically allocated Eigen matrices as return type easier.
Definition at line 111 of file EigenMapTools.h.
|
inline |
Creates an Eigen mapped matrix from the given data vector.
Creates an Eigen mapped matrix from the given data vector.
This is a convenience method which makes the specification of dynamically allocated Eigen matrices as return type easier.
Definition at line 72 of file EigenMapTools.h.
Referenced by ProcessLib::VectorMatrixAssembler::assemble(), ProcessLib::ComponentTransport::ComponentTransportLocalAssemblerInterface::assembleReactionEquation(), ProcessLib::CentralDifferencesJacobianAssembler::assembleWithJacobian(), ProcessLib::CompareJacobiansJacobianAssembler::assembleWithJacobian(), ProcessLib::VectorMatrixAssembler::assembleWithJacobian(), NumLib::LocalLinearLeastSquaresExtrapolator::calculateResidualElement(), ProcessLib::ComponentTransport::LocalAssemblerData< ShapeFunction, IntegrationMethod, GlobalDim >::computeSecondaryVariableConcrete(), NumLib::LocalLinearLeastSquaresExtrapolator::extrapolateElement(), ProcessLib::TES::TESLocalAssembler< ShapeFunction_, IntegrationMethod_, GlobalDim >::getIntPtDarcyVelocity(), and ProcessLib::transposeInPlace().
|
inline |
Creates an Eigen mapped vector from the given data vector.
This is a convenience method which makes the specification of dynamically allocated Eigen vectors as return type easier.
Definition at line 207 of file EigenMapTools.h.
Eigen::Map<Vector> MathLib::toVector | ( | std::vector< double > & | data, |
Eigen::VectorXd::Index | size | ||
) |
Creates an Eigen mapped vector from the given data vector.
Definition at line 180 of file EigenMapTools.h.
|
inline |
Creates an Eigen mapped vector from the given data vector.
This is a convenience method which makes the specification of dynamically allocated Eigen vectors as return type easier.
Definition at line 196 of file EigenMapTools.h.
Eigen::Map<const Vector> MathLib::toVector | ( | std::vector< double > const & | data, |
Eigen::VectorXd::Index | size | ||
) |
Creates an Eigen mapped vector from the given data vector.
Definition at line 167 of file EigenMapTools.h.
Referenced by ProcessLib::PythonBoundaryConditionLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::assemble(), ProcessLib::VectorMatrixAssembler::assemble(), ProcessLib::SourceTerms::Python::PythonSourceTermLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::assemble(), ProcessLib::ComponentTransport::ComponentTransportLocalAssemblerInterface::assembleReactionEquation(), ProcessLib::CompareJacobiansJacobianAssembler::assembleWithJacobian(), ProcessLib::VectorMatrixAssembler::assembleWithJacobian(), ProcessLib::LocalAssemblerInterface::computeSecondaryVariable(), ProcessLib::ComponentTransport::createComponentTransportProcess(), ProcessLib::HT::createHTProcess(), ProcessLib::LiquidFlow::createLiquidFlowProcess(), ProcessLib::RichardsComponentTransport::createRichardsComponentTransportProcess(), ProcessLib::RichardsFlow::createRichardsFlowProcess(), ProcessLib::ThermalTwoPhaseFlowWithPP::createThermalTwoPhaseFlowWithPPProcess(), ProcessLib::TwoPhaseFlowWithPP::createTwoPhaseFlowWithPPProcess(), ProcessLib::TwoPhaseFlowWithPrho::createTwoPhaseFlowWithPrhoProcess(), NumLib::LocalLinearLeastSquaresExtrapolator::extrapolateElement(), ProcessLib::ComponentTransport::ComponentTransportLocalAssemblerInterface::initializeChemicalSystem(), ProcessLib::LocalAssemblerInterface::postTimestep(), ProcessLib::ComponentTransport::ComponentTransportLocalAssemblerInterface::setChemicalSystem(), and ProcessLib::Deformation::solidMaterialInternalToSecondaryVariables().
|
extern |
Definition at line 26 of file Point3d.h.
Referenced by MeshLib::getBulkElementPoint(), and getOrigin().
|
static |
Definition at line 62 of file GaussLegendreTet.cpp.
Referenced by ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobianForDeformationEquations(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobianForPressureEquations(), barycentricPointInTriangle(), calcProjPntToLineAndDists(), ModelTest::checkChildren(), MaterialLib::Fluid::FluidPropertiesWithDensityDependentModels::compute_df_drho_drho_dp(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::computeSecondaryVariableConcrete(), VtkImageDataToPointCloudFilter::createPoints(), VtkImageDataToSurfacePointsFilter::createPointSurface(), VtkColorLookupTable::expInterpolation(), getClosestPointElevation(), MeshLib::PropertyVector< T * >::getComponent(), MaterialLib::Fluid::FluidPropertiesWithDensityDependentModels::getdValue(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocity(), DiagramList::getPath(), DiagramList::getPoint(), MeshLib::PropertyVector< T * >::initPropertyValue(), VtkImageDataToPointCloudFilter::interpolate(), isPointInTetrahedron(), isPointInTriangle(), isPointInTriangleXY(), MathLib::PiecewiseLinearMonotonicCurve::isStrongMonotonic(), ModelTest::layoutChanged(), VtkColorLookupTable::linInterpolation(), main(), MeshGeoToolsLib::mapPointOnSurfaceElement(), MeshGeoToolsLib::mapPolylineOnSurfaceMesh(), mark_used(), operator*(), operator<<(), operator>>(), orientation3d(), ProjectData::parseParameters(), ProjectData::parseProcesses(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::postNonLinearSolverConcrete(), VtkColorByHeightFilter::RequestData(), VtkImageDataToLinePolyDataFilter::RequestData(), VtkImageDataToPointCloudFilter::RequestData(), VtkImageDataToSurfacePointsFilter::RequestData(), rotateGeometryToXY(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::setInitialConditionsConcrete(), DiagramList::setList(), ElementTreeModel::setMesh(), VtkCompositeNodeSelectionFilter::setSelectionArray(), VisualizationWidget::showAll(), MeshGeoToolsLib::snapPointToElementNode(), and testTriangleIntersectingAABB().
|
static |
Definition at line 63 of file GaussLegendreTet.cpp.
Referenced by GeoLib::MinimalBoundingSphere::MinimalBoundingSphere(), ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerMatrix< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, GlobalDim >::assembleBlockMatricesWithJacobian(), GeoLib::Triangle::containsPoint(), gaussPointInTriangle(), ProcessLib::ComponentTransport::LocalAssemblerData< ShapeFunction, IntegrationMethod, GlobalDim >::getFlux(), ProcessLib::HT::HTFEM< ShapeFunction, IntegrationMethod, GlobalDim >::getFlux(), GeoLib::lineSegmentIntersect2d(), MeshGeoToolsLib::mapPointOnSurfaceElement(), BaseLib::GradualSubdivisionFixedNum::operator()(), and GeoLib::triangleLineIntersection().
|
static |
Definition at line 64 of file GaussLegendreTet.cpp.
Referenced by GeoLib::MinimalBoundingSphere::MinimalBoundingSphere(), addToMatrix(), Adsorption::alphaTWaterDean(), ProcessLib::TES::TESLocalAssemblerInner< Traits >::assembleIntegrationPoint(), ModelTest::checkChildren(), NumLib::ShapeHex20::computeGradShapeFunction(), NumLib::ShapeHex8::computeGradShapeFunction(), NumLib::ShapeLine3::computeGradShapeFunction(), NumLib::ShapeQuad4::computeGradShapeFunction(), NumLib::ShapeQuad8::computeGradShapeFunction(), NumLib::ShapeQuad9::computeGradShapeFunction(), NumLib::ShapeTet10::computeGradShapeFunction(), NumLib::ShapeTri6::computeGradShapeFunction(), NumLib::ShapePyra13::computeGradShapeFunction(), NumLib::ShapePyra5::computeGradShapeFunction(), NumLib::TemplateIsoparametric< ShapeFunctionType_, ShapeMatrixTypes_ >::computeIntegralMeasure(), MaterialPropertyLib::RelPermNonWettingPhaseVanGenuchtenMualem::computeSaturationForMinimumRelativePermeability(), NumLib::ShapeHex20::computeShapeFunction(), NumLib::ShapeHex8::computeShapeFunction(), NumLib::ShapeLine2::computeShapeFunction(), NumLib::ShapeLine3::computeShapeFunction(), NumLib::ShapeQuad4::computeShapeFunction(), NumLib::ShapeQuad8::computeShapeFunction(), NumLib::ShapeQuad9::computeShapeFunction(), NumLib::ShapeTet10::computeShapeFunction(), NumLib::ShapeTet4::computeShapeFunction(), NumLib::ShapeTri3::computeShapeFunction(), NumLib::ShapeTri6::computeShapeFunction(), NumLib::ShapePyra13::computeShapeFunction(), NumLib::ShapePyra5::computeShapeFunction(), DataHolderLib::createColor(), anonymous_namespace{ShapeHex20-impl.h}::dShapeFunctionHexHQ_Corner(), anonymous_namespace{ShapeHex20-impl.h}::dShapeFunctionHexHQ_Middle(), anonymous_namespace{CompareJacobiansJacobianAssembler.cpp}::dump_py(), FileIO::Gocad::Layer::hasRegion(), ProcessLib::TES::TESFEMReactionAdaptorAdsorption::initReaction_slowDownUndershootStrategy(), MaterialLib::Solids::Creep::CreepBGRa< DisplacementDim >::integrateStress(), VtkImageDataToPointCloudFilter::interpolate(), NumLib::TemplateIsoparametric< ShapeFunctionType_, ShapeMatrixTypes_ >::interpolateZerothCoordinate(), ProcessLib::DeactivatedSubdomain::isDeactivated(), main(), anonymous_namespace{MFront.cpp}::MFrontToOGS(), anonymous_namespace{TESLocalAssembler-impl.h}::ogs5OutMat(), anonymous_namespace{TESLocalAssembler-impl.h}::ogs5OutVec(), anonymous_namespace{MFront.cpp}::OGSToMFront(), FileIO::Gocad::operator<<(), FileIO::Gocad::Region::operator==(), FileIO::Gocad::parseLayer(), FileIO::Gocad::parseRegion(), FileIO::XmlLutReader::readFromFile(), anonymous_namespace{ShapeHex20-impl.h}::ShapeFunctionHexHQ_Corner(), anonymous_namespace{ShapeHex20-impl.h}::ShapeFunctionHexHQ_Middle(), NumLib::PETScNonlinearSolver::solve(), testAABBIntersectingPlane(), and testTriangleIntersectingAABB().