Itasca C++ Interface
Loading...
Searching...
No Matches
iflowknotthing.h
Go to the documentation of this file.
1#pragma once
2// iflowknotthing.h
3
4#include "iblockdef.h"
5#include "base/src/farray.h"
6
12namespace itasca
13{
14 class IThing;
15}
16
17namespace block
18{
19 class ISubcontactThing;
20 class IFlowKnotThing;
21 class IFlowPlaneThing;
22 class IFlowPlaneVertexThing;
23
30 {
31 public:
32
34 enum pp_condition {PP_Free, PP_Fix, PP_Flux};
35
37 enum therm_condition {T_Free, T_ConstTemp, T_ConstFlux};
38
40 inline static const TType type_ = 0x52d96559;
42 virtual const itasca::IThing * getIThing() const=0;
46 virtual FInt getFortranOffset() const=0;
48 virtual DVect3 getLocation() const=0;
50 virtual double getPP() const=0;
52 virtual void setPP(double pp) = 0;
54 virtual pp_condition getPPCondition() const=0;
56 virtual void setPPCondition(pp_condition pc)= 0;
59 virtual void setThermalCondition(therm_condition tc) = 0;
61 virtual double getFluidFlux() const=0;
63 virtual void setFluidFlux(double f) = 0;
65 virtual double getUnbalancedVolumeMax() const=0;
67 virtual double getUnbalancedVolume() const=0;
69 virtual double getArea() const=0;
71 virtual double getVolume() const=0;
73 virtual double getStiffness() const=0;
75 virtual double getTrans() const=0;
77 virtual double getTemp() const=0;
79 virtual void setTemp(double T) = 0;
81 virtual double getThermalFlux() const=0;
83 virtual void setThermalFlux(double d) = 0;
85 virtual double getThermalFlowSum() const=0;
87 virtual double getUnbalancedThermalFlux() const=0;
89 virtual double getHeatTransferCoefficient() const=0;
91 virtual void setHeatTransferCoefficient(double d) = 0;
93 virtual double getTimestep() const = 0;
95 virtual double getBulk() const = 0;
97 virtual void setBulk(double d) = 0;
99 virtual double getAppliedProppantConcentration() const=0;
101 virtual void setAppliedProppantConcentration(double d) const=0;
103 virtual bool getProppantFixed() const=0;
105 virtual void setProppantFixed(bool b)=0;
109 virtual double getGasDensity() const = 0;
111 virtual double getGasBulk() const = 0;
112
113 };
114
115} // end namespace block
116// EOF
An array class that attempts to minimize unnecessary heap access.
Definition farray.h:25
This is the interface for FlowKnotThing, a C++ wrapper for a flow knot This will be stored in a conta...
Definition iflowknotthing.h:30
virtual double getTimestep() const =0
Return the timestep associated with this knot.
virtual therm_condition getThermalCondition() const =0
Return the thermal condition.
virtual double getBulk() const =0
Get (joint) fluid bulk modulus for this flow knot.
virtual void setPP(double pp)=0
Set the fluid pore pressure.
virtual double getUnbalancedVolumeMax() const =0
Return the maximum unbalanced volume during the simulation.
virtual void setPPCondition(pp_condition pc)=0
Set the pore pressure condition.
virtual double getUnbalancedVolume() const =0
Return the maximum unbalanced volume for the current cycle.
virtual void setAppliedProppantConcentration(double d) const =0
Set proppant volume concentration applied at flow knot.
virtual double getVolume() const =0
Return the volume associated with this knot.
virtual DVect3 getLocation() const =0
Return location.
virtual void setTemp(double T)=0
Set the temperature.
virtual itasca::IThing * getIThing()=0
Returns a IThing pointer.
virtual pp_condition getPPCondition() const =0
Return the pore pressure condition.
virtual double getThermalFlux() const =0
Return heat flux.
virtual double getThermalFlowSum() const =0
Return heat flow sum.
virtual double getTemp() const =0
Return the temperature.
virtual FArray< const IFlowPlaneVertexThing * > getVertices() const =0
Return list of flow plane vertices associated with this flow knot.
virtual void setBulk(double d)=0
Set (joint) fluid bulk modulus for this flow knot.
virtual void setHeatTransferCoefficient(double d)=0
Set the heat transfer coefficient.
virtual const itasca::IThing * getIThing() const =0
Returns a const IThing pointer.
virtual void setProppantFixed(bool b)=0
Set proppant fixity condition (true = fixed, false otherwise)
virtual double getStiffness() const =0
Return the stiffness associated with this knot.
virtual double getArea() const =0
Return the area associated with this knot.
therm_condition
Possible thermal conditions for a flow knot.
Definition iflowknotthing.h:37
virtual double getAppliedProppantConcentration() const =0
Get proppant volume concentration applied at flow knot.
virtual double getGasDensity() const =0
Return the gas density (function of pressure)
virtual double getHeatTransferCoefficient() const =0
Return the heat transfer coefficient.
virtual bool getProppantFixed() const =0
Get proppant fixity condition (true = fixed, false otherwise)
virtual double getTrans() const =0
Return the total transmissivity of elements connected to the knot.
virtual double getFluidFlux() const =0
Return the additional fluid flux source value.
virtual FInt getFortranOffset() const =0
Return flow knot fortran offset.
virtual double getGasBulk() const =0
Return the gas bulk modulus (function of pressure)
virtual void setThermalFlux(double d)=0
Set the heat flux.
static const TType type_
type used in IThing typing system
Definition iflowknotthing.h:40
virtual double getPP() const =0
Return the fluid pore pressure.
pp_condition
Possible pore pressure (fluid) conditions for a flow knot.
Definition iflowknotthing.h:34
virtual double getUnbalancedThermalFlux() const =0
Return unbalanced flux.
virtual void setFluidFlux(double f)=0
Set the additional fluid flux source value.
Base class for items that will be stored in containers.
Definition ithing.h:30
An array class that attempts to minimize unnecessary heap access.
uint32 TType
class type indicator
Definition basedef.h:46
int32 FInt
Interface to provide access to 3DEC modules, global data, list of 3DEC entities, etc.
Definition iblockdef.h:19
Fortran to C++ type declarations.
namespace Itasca
Definition basememory.cpp:10