49 #define _IFT_SUPG_Name "supg" 50 #define _IFT_SUPG_deltat "deltat" 51 #define _IFT_SUPG_deltatFunction "deltatltf" 52 #define _IFT_SUPG_cmflag "cmflag" 53 #define _IFT_SUPG_alpha "alpha" 54 #define _IFT_SUPG_scaleflag "scaleflag" 55 #define _IFT_SUPG_lscale "lscale" 56 #define _IFT_SUPG_uscale "uscale" 57 #define _IFT_SUPG_dscale "dscale" 58 #define _IFT_SUPG_miflag "miflag" 59 #define _IFT_SUPG_rtolv "rtolv" 60 #define _IFT_SUPG_atolv "atolv" 61 #define _IFT_SUPG_maxiter "maxiter" 62 #define _IFT_SUPG_stopmaxiter "stopmaxiter" 63 #define _IFT_SUPG_fsflag "fsflag" 68 class SparseNonLinearSystemNM;
108 std :: unique_ptr< SparseLinearSystemNM >
nMethod;
113 std :: unique_ptr< SparseMtrx >
lhs;
157 virtual void solveYourselfAt(
TimeStep *tStep);
158 virtual void updateYourself(
TimeStep *tStep);
162 virtual double giveReynoldsNumber();
167 virtual void updateDomainLinks();
170 virtual TimeStep *giveSolutionStepWhenIcApply(
bool force =
false);
175 virtual int checkConsistency();
182 virtual void printDofOutputAt(FILE *stream,
Dof *iDof,
TimeStep *tStep);
196 void updateInternalState(
TimeStep *tStep);
198 void evaluateElementStabilizationCoeffs(
TimeStep *tStep);
199 void updateElementsForNewInterfacePosition(
TimeStep *tStep);
201 void updateDofUnknownsDictionary_predictor(
TimeStep *tStep);
202 void updateDofUnknownsDictionary_corrector(
TimeStep *tStep);
209 void updateDofManVals(
TimeStep *tStep);
LinSystSolverType
The values of this type should be related not to specific solvers, but more to specific packages that...
virtual MaterialInterface * giveMaterialInterface(int n)
Returns material interface representation for given domain.
SparseMtrxType sparseMtrxType
LinSystSolverType solverType
The purpose of DataStream abstract class is to allow to store/restore context to different streams...
FloatArray internalForces
std::unique_ptr< SparseMtrx > lhs
virtual int requiresUnknownsDictionaryUpdate()
Indicates if EngngModel requires Dofs dictionaries to be updated.
ValueModeType
Type representing the mode of UnknownType or CharType, or similar types.
VarScaleType
Type determining the scale corresponding to particular variable.
virtual const char * giveInputRecordName() const
Base class for fluid problems.
std::unique_ptr< SparseLinearSystemNM > nMethod
Numerical method used to solve the problem.
This base class is an abstraction for numerical algorithm.
Abstract base class for all finite elements.
Base class for dof managers.
MatResponseMode
Describes the character of characteristic material matrix.
int maxiter
Max number of iterations.
Callback class for assembling specific types of vectors.
double Re
Reynolds number.
NumericalCmpn
Type representing numerical component.
std::unique_ptr< PrimaryField > VelocityPressureField
Callback class for assembling specific types of matrices.
SparseMtrxType
Enumerative type used to identify the sparse matrix type.
Abstract base class representing (moving) material interfaces.
bool stopmaxiter
Flag if set to true (default), then when max number of iteration reached, computation stops otherwise...
virtual fMode giveFormulation()
Indicates type of non linear computation (total or updated formulation).
This class represents transient incompressible flow problem.
FloatArray accelerationVector
Callback class for assembling SUPG tangent matrices.
virtual const char * giveClassName() const
Returns class name of the receiver.
Callback class for assembling SUPG internal forces.
Class representing vector of real numbers.
std::unique_ptr< MaterialInterface > materialInterface
Implementation of matrix containing floating point numbers.
IRResultType
Type defining the return values of InputRecord reading operations.
virtual void vectorFromElement(FloatArray &vec, Element &element, TimeStep *tStep, ValueModeType mode) const
fMode
Type representing the type of formulation (total or updated) of non-linear computation.
long ContextMode
Context mode (mask), defining the type of information written/read to/from context.
Abstract base class representing the "problem" under consideration.
the oofem namespace is to define a context or scope in which all oofem names are defined.
Abstract class Dof represents Degree Of Freedom in finite element mesh.
double alpha
Integration constant.
Class representing solution step.
virtual bool giveEquationScalingFlag()
Returns the Equation scaling flag, which is used to indicate that governing equation(s) are scaled...
SUPGInternalForceAssembler(double l, double d, double u)
FloatArray incrementalSolutionVector