35 #ifndef qclinearstatic_h 36 #define qclinearstatic_h 38 #include "../sm/EngineeringModels/linearstatic.h" 43 #include "../sm/Quasicontinuum/fullsolveddomain.h" 44 #include "../sm/Quasicontinuum/quasicontinuumnumberingscheme.h" 46 #define _IFT_QClinearStatic_Name "qclinearstatic" 47 #define _IFT_QuasiContinuum_approach "qcapproach" 48 #define _IFT_QuasiContinuum_mtrx_type "mtrxt" 50 #define _IFT_QuasiContinuum_generate_Particles "genparticles" 51 #define _IFT_QuasiContinuum_generate_Links "genlinks" 52 #define _IFT_QuasiContinuum_generate_Interpolation_Elements "geninterpelem" 54 #define _IFT_QuasiContinuum_t3d_File_Name "t3dfile" 55 #define _IFT_QuasiContinuum_interp_Mat_Number "intmatnum" 57 #define _IFT_QuasiContinuum_T3D_Interpolation_Mesh_size "imsize" 59 #define _IFT_FullSolvedDomain_nodes "fsd_n" 60 #define _IFT_FullSolvedDomain_elements "fsd_e" 61 #define _IFT_FullSolvedDomain_radius "fsd_r" 62 #define _IFT_FullSolvedDomain_box "fsd_b" 66 class QCFullsolveddomain;
180 #endif // linearstatic_h LinSystSolverType
The values of this type should be related not to specific solvers, but more to specific packages that...
virtual bool nodeInFullSolvedDomainTest(Node *n)
virtual UnknownNumberingScheme * giveEquationNumbering()
FloatArray displacementVector
QCFullsolveddomain Fullsolveddomain
int interpolationElementsMaterialNumber
virtual void setRepNodesInVerticesOfInterpolationMesh(Domain *d)
Information about fullsolved domain in CQ simulation.
Base class for all matrices stored in sparse format.
bool isElementActivated(int elemNum)
virtual void solveYourself()
Starts solution process.
SparseLinearSystemNM * nMethod
Numerical method used to solve the problem.
virtual int giveQcApproachNumber()
void setActivatedNodeList(IntArray nodeList, Domain *d)
This base class is an abstraction for all numerical methods solving sparse linear system of equations...
#define _IFT_QClinearStatic_Name
FloatArray FullSolvedDomainBox
SparseMtrxType sparseMtrxType
Abstract base class for all finite elements.
Base class for dof managers.
bool isElementActivated(Element *e)
virtual ~QClinearStatic()
Class implementing an array of integers.
virtual fMode giveFormulation()
Indicates type of non linear computation (total or updated formulation).
QClinearStatic(int i, EngngModel *_master=NULL)
virtual void createInterpolationMeshNodes(Domain *d)
int generateInterpolationElements
virtual void postInitialize()
Performs post-initialization for all the problem contents (which is called after initializeFrom).
QuasicontinuumNumberingscheme * qcEquationNumbering
This class implements linear static engineering problem.
int numberOfIntepolationElements
virtual DofManager * findNearestParticle(Domain *d, FloatArray coords)
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description in input reader.
SparseMtrxType
Enumerative type used to identify the sparse matrix type.
void setActivatedElementList(IntArray elemList)
Abstract base class allowing to control the way, how equations are assigned to individual DOFs...
LinSystSolverType solverType
double defaultT3DMeshSize
std::vector< bool > activatedElementList
virtual std::vector< IntArray > transformMeshToParticles(Domain *d, std::vector< FloatArray > &nodeCoords, std::vector< IntArray > &meshNodes)
FloatArray FullSolvedDomainNodes
virtual std::vector< IntArray > generateInterpolationMesh(Domain *d)
Class representing vector of real numbers.
int homogenizationMtrxType
SparseMtrx * stiffnessMatrix
virtual void updateNodeTypes(Domain *d)
virtual void solveYourselfAt(TimeStep *tStep)
Solves problem for given time step.
IRResultType
Type defining the return values of InputRecord reading operations.
virtual QCFullsolveddomain * giveFullSolvedDomain()
Returns Fullsolved domain to which receiver is associated.
std::vector< IntArray > interpolationMeshNodes
fMode
Type representing the type of formulation (total or updated) of non-linear computation.
This class implements linear static engineering problem.
virtual const char * giveInputRecordName() const
virtual double computeTotalVolumeOfInterpolationMesh(Domain *d)
virtual void setQCNodeType(Domain *d)
Numbering scheme that takes into account only list of selected nodes.
FloatArray FullSolvedDomainElements
Abstract base class representing the "problem" under consideration.
FloatArray FullSolvedDomainRadius
the oofem namespace is to define a context or scope in which all oofem names are defined.
std::vector< bool > activatedNodeList
Class implementing node in finite element mesh.
virtual std::vector< IntArray > loadInterpolationMesh(Domain *d)
virtual IRResultType initializeFullSolvedDomain(InputRecord *ir)
Class representing solution step.
virtual const char * giveClassName() const
Returns class name of the receiver.