82 return a * b * c / ( ( b + c - a ) * ( a + c - b ) * ( a + b - c ) ) - 1.0;
90 double min_rcond = 1.0, rcond;
96 if ( rcond < min_rcond ) {
100 return min_rcond < 1e-6 ? 1e6 : 1.0 / min_rcond;
105 double error = 0.0, temp;
108 if ( temp > error ) {
double giveDeterminant() const
Returns the trace (sum of diagonal components) of the receiver.
virtual IntegrationRule * giveDefaultIntegrationRulePtr()
Access method for default integration rule.
Domain * domain
Link to domain object, useful for communicating with other FEM components.
double sgn(double i)
Returns the signum of given value (if value is < 0 returns -1, otherwise returns 1) ...
Abstract base class for all finite elements.
EE_ErrorType
Type characterizing different type of element errors.
virtual FEInterpolation * giveInterpolation() const
double computeReciprocalCondition(char p= '1') const
Computes the conditioning of the receiver.
Abstract base class representing integration rule.
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
virtual double giveElementError(EE_ErrorType type, Element *elem, TimeStep *tStep)
Returns the element error.
double distance(const FloatArray &x) const
Computes the distance between position represented by receiver and position given as parameter...
Class representing a general abstraction for finite element interpolation class.
static double computeJacobianError(FEInterpolation &fei, IntegrationRule &ir, Element *elem)
Computes the error based on the conditioning of the Jacobian.
Wrapper around element definition to provide FEICellGeometry interface.
virtual double giveValue(EE_ValueType type, TimeStep *tStep)
Gives the max error from any element in the domain.
virtual int estimateError(EE_ErrorMode mode, TimeStep *tStep)
Empty implementation.
Class representing vector of real numbers.
Implementation of matrix containing floating point numbers.
EE_ErrorMode
Type determining whether temporary or equilibrated variables are used for error evaluation.
IRResultType
Type defining the return values of InputRecord reading operations.
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
virtual void giveJacobianMatrixAt(FloatMatrix &jacobianMatrix, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
Gives the jacobian matrix at the local coordinates.
static double computeTriangleRadiusError(Element *elem)
Computes error based on the inscribed triangle/circle ratio.
virtual FloatArray * giveCoordinates()
EE_ValueType
Type characterizing different type of errors.
std::vector< std::unique_ptr< Element > > & giveElements()
virtual Element_Geometry_Type giveGeometryType() const
Returns the element geometry type.
the oofem namespace is to define a context or scope in which all oofem names are defined.
Node * giveNode(int i) const
Returns reference to the i-th node of element.
Class representing integration point in finite element program.
Class representing solution step.