ChemicalFemPhysics
The GeMA Standard Chemical FEM Physics Plugin
Loading...
Searching...
No Matches
gmpChemicalEmbeddedFracture.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_CHEMICAL_EMBEDDED_FRACTURE_H_
25#define _GEMA_PLUGIN_CHEMICAL_EMBEDDED_FRACTURE_H_
26
27
28#include "gmpChemicalConfig.h"
29
30#include <gmpFemPhysicsCommon.h>
31#include <gmpFemPhysicsData.h>
32#include <gmpFixedReaction.h>
33#include <gmGaussAccessor.h>
34#include <gmMathUtils.h>
35
36class GmGaussAccessor;
37
40class GMP_CHEMICAL_FEM_PHYSICS_API_EXPORT GmpChemicalFixedEmbeddedFracture : public GmpFixedReaction
41{
42public:
45 {
47
48 // ------ NO ADDING BELOW THIS LINE
50 };
51
53 {
55
56 // --- NO ADDING BELOW THIS LINE
58 };
59
60 // constructor
62 const GmLogCategory& logger);
63 // destructor
65
66 // Comments on the base class
67 virtual const char* pluginType() const { return _pluginType; }
68
69 virtual const QVariantMap* physicsMetaDataMap();
70
71 virtual FemResultType fillElementData(const GmElement* e, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
72
73
74 // Fills element fracture Data
75 virtual bool fillFractureElementData(const GmElement* e, GmMatrix& K, GmVector& Fi, bool needsK, bool needsFi);
76
77 // Fills the flow stiffness matrix of the fracture
78 virtual bool fillFractureFlowMatrix(const GmElement* e, GmMatrix& K, const GmMatrix& fracCoord, double An, double uf) const;
79
80 // Fills the fracture coordinates
81 virtual bool fillFractureCoordinates(GmMatrix & fracCoord, const GmVector& fracData) const;
82
83 // Fills fracture fluid flow matrix
84 virtual bool assemblyFractureFlowMatrix(GmMatrix& Kf, const GmMatrix & Ke, const GmVector& iPe) const;
85
86protected:
87 // See comments on the base class
88 virtual bool checkAndLoadPrivateData(LuaTable& table);
89
90 //HMaterialPointAccessors _hmaterialPointAccessor; //!< Access to hydraulic material point
91private:
92 const char* _pluginType;
93 GmpFemPhysicsData _fractureData;
95};
96
97#endif
virtual FemResultType fillElementData(const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
Fills the element stiffness matrix for element 'e' with diffusive and convective terms....
Definition gmpChemicalFemPhysics.cpp:279
@ NUM_PROPERTY_IDS
The number of property ids above.
Definition gmpChemicalFemPhysics.h:120
Basic class for the hydraulic physics plugin object.
Definition gmpChemicalEmbeddedFracture.h:41
GmpFemPhysicsData _fractureData
fracture data
Definition gmpChemicalEmbeddedFracture.h:93
const char * _pluginType
The plugin type name.
Definition gmpChemicalEmbeddedFracture.h:92
EmbeddedElemPropertyIds
Definition gmpChemicalEmbeddedFracture.h:53
@ NUM_PROPERTY_IDS
The number of property ids above.
Definition gmpChemicalEmbeddedFracture.h:57
GmValueAccessor * _anAcc
fracture aperture accessor
Definition gmpChemicalEmbeddedFracture.h:94
EmbeddedPhysicsAttributeIds
IDs for physics attributes.
Definition gmpChemicalEmbeddedFracture.h:45
@ NUM_ATTRIBUTE_IDS
The number of physics attribute ids above.
Definition gmpChemicalEmbeddedFracture.h:49
Extends the basic chemical physics transport equation by providing a fixed reaction rate.
Definition gmpFixedReaction.h:31
@ NUM_ATTRIBUTE_IDS
The number of attribute ids above.
Definition gmpFixedReaction.h:56
virtual const QVariantMap * physicsMetaDataMap()
Returns a pointer to the physics attribute map, built when the function is called for the first time.
Definition gmpFixedReaction.cpp:60
arma::mat GmMatrix
arma::vec GmVector
Declaration of useful configuration definitions for the plugin library.
Declaration of the GmpFixedReaction class.