LifeV
|
OneDFSIPhysics - Base class providing physical operations for the 1D model data. More...
#include <OneDFSIPhysics.hpp>
Protected Attributes | |
dataPtr_Type | M_dataPtr |
Private Attributes | |
vectorPtr_Type | M_previousAreaPtr |
Type definitions and Enumerators | |
typedef FactorySingleton< Factory< OneDFSIPhysics, OneDFSI::physicsType_Type > > | factoryPhysics_Type |
typedef OneDFSIData | data_Type |
typedef std::shared_ptr< data_Type > | dataPtr_Type |
typedef VectorEpetra | vector_Type |
typedef std::shared_ptr< vector_Type > | vectorPtr_Type |
Constructors & Destructor | |
OneDFSIPhysics () | |
Empty constructor. More... | |
OneDFSIPhysics (const dataPtr_Type dataPtr) | |
Constructor. More... | |
virtual | ~OneDFSIPhysics () |
Destructor. More... | |
Conversion methods | |
virtual void | fromWToU (Real &U1, Real &U2, const Real &W1, const Real &W2, const UInt &iNode) const =0 |
Compute from . More... | |
virtual void | fromUToW (Real &W1, Real &W2, const Real &U1, const Real &U2, const UInt &iNode) const =0 |
Compute from . More... | |
virtual Real | fromWToP (const Real &W1, const Real &W2, const UInt &iNode) const =0 |
Compute from . More... | |
virtual Real | fromPToW (const Real &P, const Real &W, const ID &iW, const UInt &iNode) const =0 |
Compute or from . More... | |
virtual Real | fromQToW (const Real &Q, const Real &W_tn, const Real &W, const ID &iW, const UInt &iNode) const =0 |
Compute or from . More... | |
Real | fromPToA (const Real &P, const Real &timeStep, const UInt &iNode, const bool &elasticExternalNodes=true) const |
Compute the area given the elastic pressure . More... | |
Derivatives methods | |
Real | dAdt (const Real &Anp1, const Real &timeStep, const UInt &iNode) const |
Compute the derivative of the area with respect to the time using a first order finite difference. More... | |
virtual Real | dPdW (const Real &W1, const Real &W2, const ID &iW, const UInt &iNode) const =0 |
Compute the derivative of pressure with respect to . More... | |
Real | dPdA (const Real &A, const Real &timeStep, const UInt &iNode, const bool &elasticExternalNodes=true) const |
Compute the derivative of the pressure with respect to . More... | |
Real | dPdAelastic (const Real &A, const UInt &iNode) const |
Compute the derivative of the elastic pressure with respect to . More... | |
Real | dPdAviscoelastic (const Real &A, const Real &timeStep, const UInt &iNode, const bool &elasticExternalNodes=true) const |
Compute the derivative of the viscoelastic pressure with respect to . More... | |
Real | dAdP (const Real &P, const Real &timeStep, const UInt &iNode, const bool &elasticExternalNodes=true) const |
Compute the derivative of the area with respect to . More... | |
Real | dPTdU (const Real &A, const Real &Q, const Real &timeStep, const ID &id, const UInt &iNode) const |
Compute the derivative of total pressure with respect to or . More... | |
Methods | |
Real | celerity0 (const UInt &iNode) const |
Compute the reference celerity. More... | |
Real | pressure (const Real &A, const Real &timeStep, const UInt &iNode, const bool &elasticExternalNodes=true) const |
Compute the pressure. More... | |
const Real & | externalPressure () const |
Return the external pressure. More... | |
const Real & | venousPressure () const |
Return the venous pressure. More... | |
Real | elasticPressure (const Real &A, const UInt &iNode) const |
Compute the elastic pressure. More... | |
Real | viscoelasticPressure (const Real &A, const Real &timeStep, const UInt &iNode, const bool &elasticExternalNodes=true) const |
Compute the viscoelastic pressure. More... | |
Real | totalPressure (const Real &A, const Real &Q, const UInt &iNode) const |
Compute the total pressure. More... | |
Set Methods | |
void | setData (const dataPtr_Type &dataPtr) |
Set the data container of the problem. More... | |
void | setArea_tn (const vector_Type &area_tn) |
Set the area at time . More... | |
Get Methods | |
dataPtr_Type | data () const |
Get the data container of the problem. More... | |
Unimplemented Methods | |
OneDFSIPhysics (const OneDFSIPhysics &physics) | |
OneDFSIPhysics & | operator= (const OneDFSIPhysics &physics) |
OneDFSIPhysics - Base class providing physical operations for the 1D model data.
It contains the following methods:
Definition at line 71 of file OneDFSIPhysics.hpp.
typedef FactorySingleton< Factory< OneDFSIPhysics, OneDFSI::physicsType_Type > > factoryPhysics_Type |
Definition at line 77 of file OneDFSIPhysics.hpp.
typedef OneDFSIData data_Type |
Definition at line 79 of file OneDFSIPhysics.hpp.
typedef std::shared_ptr< data_Type > dataPtr_Type |
Definition at line 80 of file OneDFSIPhysics.hpp.
typedef VectorEpetra vector_Type |
Definition at line 82 of file OneDFSIPhysics.hpp.
typedef std::shared_ptr< vector_Type > vectorPtr_Type |
Definition at line 83 of file OneDFSIPhysics.hpp.
|
inlineexplicit |
Empty constructor.
Definition at line 92 of file OneDFSIPhysics.hpp.
|
inlineexplicit |
Constructor.
dataPtr | pointer to the data container of the problem |
Definition at line 98 of file OneDFSIPhysics.hpp.
|
inlinevirtual |
Destructor.
Definition at line 101 of file OneDFSIPhysics.hpp.
|
explicitprivate |
|
pure virtual |
Compute from .
U1 | first physical variable |
U2 | second physical variable |
W1 | first Riemann variable |
W2 | second Riemann variable |
iNode | node of the mesh |
Implemented in OneDFSIPhysicsNonLinear, and OneDFSIPhysicsLinear.
|
pure virtual |
Compute from .
W1 | first Riemann variable |
W2 | second Riemann variable |
U1 | first physical variable |
U2 | second physical variable |
iNode | node of the mesh |
Implemented in OneDFSIPhysicsLinear, and OneDFSIPhysicsNonLinear.
Compute from .
W1 | first Riemann variable |
W2 | second Riemann variable |
iNode | node of the mesh |
Implemented in OneDFSIPhysicsNonLinear, and OneDFSIPhysicsLinear.
|
pure virtual |
Compute or from .
P | pressure |
W | Riemann variable |
iW | Riemann variable ID (0 for , 1 or ) |
iNode | node of the mesh |
Implemented in OneDFSIPhysicsNonLinear, and OneDFSIPhysicsLinear.
|
pure virtual |
Compute or from .
Q | pressure |
W_tn | Riemann variable at time |
W | Riemann variable |
iW | Riemann variable ID (0 for , 1 or ) |
iNode | node of the mesh |
Implemented in OneDFSIPhysicsNonLinear, and OneDFSIPhysicsLinear.
|
inline |
Compute the area given the elastic pressure .
To be used in initialization, when time derivative of A is supposed equal to zero.
P | elastic pressure |
timeStep | the time step |
iNode | node of the mesh |
elasticExternalNodes | consider elastic the external nodes (neglect viscoelasticity) |
Definition at line 404 of file OneDFSIPhysics.hpp.
Compute the derivative of the area with respect to the time using a first order finite difference.
Anp1 | area at time |
timeStep | the time step |
iNode | node of the mesh |
Definition at line 450 of file OneDFSIPhysics.hpp.
|
pure virtual |
Compute the derivative of pressure with respect to .
W1 | first Riemann variable |
W2 | second Riemann variable |
iW | Riemann derivative ID (0 for , 1 or ) |
iNode | node of the mesh |
Implemented in OneDFSIPhysicsNonLinear, and OneDFSIPhysicsLinear.
|
inline |
Compute the derivative of the pressure with respect to .
A | area |
timeStep | the time step |
iNode | node of the mesh |
elasticExternalNodes | consider elastic the external nodes (neglect viscoelasticity) |
Definition at line 456 of file OneDFSIPhysics.hpp.
Compute the derivative of the elastic pressure with respect to .
A | area |
iNode | node of the mesh |
Definition at line 462 of file OneDFSIPhysics.hpp.
|
inline |
Compute the derivative of the viscoelastic pressure with respect to .
A | area |
timeStep | the time step |
iNode | node of the mesh |
elasticExternalNodes | consider elastic the external nodes (neglect viscoelasticity) |
Definition at line 468 of file OneDFSIPhysics.hpp.
|
inline |
Compute the derivative of the area with respect to .
P | pressure |
timeStep | the time step |
iNode | node of the mesh |
elasticExternalNodes | consider elastic the external nodes (neglect viscoelasticity) |
Definition at line 481 of file OneDFSIPhysics.hpp.
|
inline |
Compute the derivative of total pressure with respect to or .
A | area |
Q | flow rate |
timeStep | the time step |
variable | ID (0 for , 1 or ) |
iNode | node of the mesh |
Definition at line 498 of file OneDFSIPhysics.hpp.
Compute the reference celerity.
iNode | node of the mesh |
Definition at line 518 of file OneDFSIPhysics.hpp.
|
inline |
Compute the pressure.
Includes the contribution of the external, elastic and viscoelastic pressure.
A | area |
timeStep | the time step |
iNode | node of the mesh |
elasticExternalNodes | consider elastic the external nodes (neglect viscoelasticity) |
Definition at line 524 of file OneDFSIPhysics.hpp.
|
inline |
Return the external pressure.
Definition at line 296 of file OneDFSIPhysics.hpp.
|
inline |
Compute the elastic pressure.
A | area |
iNode | node of the mesh |
Definition at line 530 of file OneDFSIPhysics.hpp.
|
inline |
Compute the viscoelastic pressure.
A | area |
timeStep | the time step |
iNode | node of the mesh |
elasticExternalNodes | consider elastic the external nodes (neglect viscoelasticity) |
Definition at line 536 of file OneDFSIPhysics.hpp.
Compute the total pressure.
A | area |
Q | flow rate |
iNode | node of the mesh |
Definition at line 549 of file OneDFSIPhysics.hpp.
|
inline |
Set the data container of the problem.
dataPtr | pointer to the data container of the problem |
Definition at line 351 of file OneDFSIPhysics.hpp.
|
inline |
Set the area at time .
This parameter is required for computing the derivative of the area in time.
area_tn |
Definition at line 361 of file OneDFSIPhysics.hpp.
|
inline |
Get the data container of the problem.
Definition at line 375 of file OneDFSIPhysics.hpp.
|
private |
|
protected |
Definition at line 384 of file OneDFSIPhysics.hpp.
|
private |
Definition at line 397 of file OneDFSIPhysics.hpp.