MechanicalFemPhysics
The GeMA Mechanical FEM Physics Plugin
Loading...
Searching...
No Matches
gmpMechanicalReinforcedInterface.h
Go to the documentation of this file.
1/************************************************************************
2**
3** Copyright (C) 2014 by Carlos Augusto Teixera Mendes
4** All rights reserved.
5**
6** This file is part of the "GeMA" software. It's use should respect
7** the terms in the license agreement that can be found together
8** with this source code.
9** It is provided AS IS, with NO WARRANTY OF ANY KIND,
10** INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR
11** A PARTICULAR PURPOSE.
12**
13************************************************************************/
14
24#ifndef _GEMA_PLUGIN_MECHANICALREINFORCEDINTERFACE_H_
25#define _GEMA_PLUGIN_MECHANICALREINFORCEDINTERFACE_H_
26
27
30#include <gmpFemPhysicsCommon.h>
31#include <gmpFemPhysicsData.h>
32#include <gmTrace.h>
33
34class GmGaussAccessor;
35
38class GMP_MECHANICAL_PHYSICS_API_EXPORT GmpMechanicalReinforcedInterface : public GmpMechanicalInterface
39{
40public:
41 // constructor
42 GmpMechanicalReinforcedInterface(const char* pluginType, GmSimulationData* simulation, QString id, QString description,
43 const GmpFemPhysicsCommonMaterialFactory* matFactory, const GmLogCategory& logger);
44
45 // destructor
47
48 // set physic map
49 virtual const QVariantMap* physicsMetaDataMap();
50 // See comments on the base class
51 virtual FemResultType fillElementData(const GmElement* e, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
52
53 // Returns the fiber property set
54 virtual GmPropertySet* fiberPropertySet(int id) const;
55
56 // fill fiber stiffness
57 virtual FemResultType fillFiberData(const GmElement* e, GmMatrix& K, GmVector& Fi, bool needsK, bool needsFi);
58
59 // Fills fiber coordinates
60 virtual bool fillCondensationMatrix(GmMatrix & Tg, const GmMatrix& Xe, const GmMatrix& Xf, const GmShape* eShape, int ne, int nf = 2) const;
61
62 // Fills fiber nodal values
63 virtual bool fillFiberNodalValues(GmElement* e, GmValueAccessor* uAc);
64
65 // calculate derived results
66 virtual bool calcDerivedResults(bool nonLinear);
67
70 {
72
73 // --- NO ADDING BELOW THIS LINE
75 };
76
77protected:
78 // See comments on the base class
79 virtual bool checkAndLoadPrivateData(LuaTable& table);
80
83 //virtual bool setInitialConditions();
84
85private:
86 GmpFemPhysicsData _fiberData;
87};
88
89#endif
Basic class for the mechanical interface element plugin object.
Definition gmpMechanicalInterface.h:37
virtual FemResultType fillElementData(const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
Fills the element matrices and vectors for a generic Interface element.
Definition gmpMechanicalInterface.cpp:209
virtual const QVariantMap * physicsMetaDataMap()
Returns a reference for the mechanical interface attribute map, built when the function is called for...
Definition gmpMechanicalInterface.cpp:55
@ NUM_PROPER_IDS
The number of property ids above.
Definition gmpMechanicalPhysics.h:175
virtual bool calcDerivedResults(bool nonLinearSolver)
Calc stress component on nodes and/or Gauss points, ADDING the calculated value to the current result...
Definition gmpMechanicalPhysics.cpp:955
Basic class for the mechanical reinforced interface element plugin object.
Definition gmpMechanicalReinforcedInterface.h:39
reinforcedFracturePropertyIds
IDs for physics element properties.
Definition gmpMechanicalReinforcedInterface.h:70
@ NUM_PROPER_IDS
The number of property ids above.
Definition gmpMechanicalReinforcedInterface.h:74
GmpFemPhysicsData _fiberData
Sets initial conditions.
Definition gmpMechanicalReinforcedInterface.h:86
arma::mat GmMatrix
arma::vec GmVector
Declaration of the GmpMechanicalInterface classes.
Declaration of the GmpMechanicalPhysics class.