26#ifndef _GEMA_PLUGIN_CHEMICAL_NEURALNETWORK_REACTION_H_
27#define _GEMA_PLUGIN_CHEMICAL_NEURALNETWORK_REACTION_H_
31#include <gmpFemNeuralNetwork.h>
32#include <IPhreeqc.hpp>
43 virtual const char* pluginType()
const {
return "neuralNetwork"; }
52 virtual bool beforeElementStiffnessLoop(
const GmpFemMatrixSet& elemMatrices,
const GmpFemVectorSet& elemVectors);
55 virtual bool saveIPhreeqcValuesToMeshIC(IPhreeqc& R,
int node);
57 virtual void runfile(IPhreeqc& R);
58 virtual void SetOutputFile(IPhreeqc& R);
68 virtual bool runNeuralNetwork();
70 virtual bool runInitIphreeqcNodes();
81 virtual bool checkAndLoadPrivateData(
LuaTable& table);
85 bool needsFe,
bool needsK);
133 IPhreeqc _IPhreeqcReaction;
Basic class for chemical fem physics. Treats the diffusion and convective terms of the transport equa...
Definition gmpChemicalFemPhysics.h:35
virtual const QVariantMap * physicsMetaDataMap()
Returns a pointer to the basic chemical physics attribute map, built when the function is called for ...
Definition gmpChemicalFemPhysics.cpp:95
virtual bool reactionRate(const GmElement *e, const GmVector *ip, int ipIndex, const GmVector &N, const GmVector &C, double wtJ, GmVector &elemFe, GmMatrix &elemK, bool needsFe, bool needsK)=0
Virtual function called by fillElementData() for each integration point so that derived classes can a...
@ NUM_ATTRIBUTE_IDS
The number of attribute ids above.
Definition gmpChemicalFemPhysics.h:84
virtual bool calcDerivedResults(bool nonLinearSolver)
Calc velocity and flow on nodes and/or Gauss points.
Definition gmpChemicalFemPhysics.cpp:1030
virtual bool checkLoadedData()
Checks the existance of the velocity accessor, and also sizes for the dispersion and retardation coef...
Definition gmpChemicalFemPhysics.cpp:176
@ NUM_GA_IDS
The number of gauss attribute ids above.
Definition gmpChemicalFemPhysics.h:107
@ NUM_NA_IDS
The number of node attribute ids above.
Definition gmpChemicalFemPhysics.h:97
Extends the basic chemical physics transport equation by providing reaction rates based on the Iphree...
Definition gmpNeuralNetworkReaction.h:37
ANNGaussAttributeIds
Definition gmpNeuralNetworkReaction.h:124
@ NUM_GA_IDS
The number of gauss attributes.
Definition gmpNeuralNetworkReaction.h:129
GmpFemNeuralNetwork * _net
Neural network data.
Definition gmpNeuralNetworkReaction.h:134
ANNPhysicsAttributeIds
Additional IDs for physics attributes.
Definition gmpNeuralNetworkReaction.h:89
@ NUM_ATTRIBUTE_IDS
The number of attribute ids above.
Definition gmpNeuralNetworkReaction.h:98
@ REACTION_TYPE_ID
Id for retrieving the reaction type physics attribute.
Definition gmpNeuralNetworkReaction.h:91
ANNNodeAttributeIds
IDs for physics node attributes.
Definition gmpNeuralNetworkReaction.h:103
@ PH_NA_ID
Base Id for pH solution.
Definition gmpNeuralNetworkReaction.h:108
@ NUM_NA_IDS
The number of node attribute ids above.
Definition gmpNeuralNetworkReaction.h:120
@ SIndex_NA_ID
Base Id for Saturation index.
Definition gmpNeuralNetworkReaction.h:106
@ Ctrate_NA_ID
Base Id for Kinetics reaction Control.
Definition gmpNeuralNetworkReaction.h:116
@ poroM_NA_ID
Base Id for porosity variation.
Definition gmpNeuralNetworkReaction.h:114
@ Mineral_NA_ID
Base Id for mineral for reaction.
Definition gmpNeuralNetworkReaction.h:112
@ EqRxn_NA_ID
Base Id for Reaction in equillibrium.
Definition gmpNeuralNetworkReaction.h:110
@ IonSolOld_NA_ID
Base Id for history of Ion transport node attribute(s)
Definition gmpNeuralNetworkReaction.h:105
Declaration of the GmpChemicalFemPhysics classes.