42 #include <lifev/one_d_fsi/solver/OneDFSIFluxLinear.hpp> 55 return M_physicsPtr->data()->flux11 ( iNode ) * U1 + M_physicsPtr->data()->flux12 ( iNode ) * U2;
59 return M_physicsPtr->data()->flux21 ( iNode ) * U1 + M_physicsPtr->data()->flux22 ( iNode ) * U2;
61 ERROR_MSG (
"The flux function has only 2 components.");
68 if ( row == 0 && column == 0 )
70 return M_physicsPtr->data()->flux11 ( iNode );
72 if ( row == 0 && column == 1 )
74 return M_physicsPtr->data()->flux12 ( iNode );
76 if ( row == 1 && column == 0 )
78 return M_physicsPtr->data()->flux21 ( iNode );
80 if ( row == 1 && column == 1 )
82 return M_physicsPtr->data()->flux22 ( iNode );
85 ERROR_MSG (
"Flux's differential function has only 4 components.");
91 container2D_Type& eigenvalues,
92 container2D_Type& leftEigenvector1,
93 container2D_Type& leftEigenvector2,
94 const UInt& iNode )
const 96 eigenvalues[0] = M_physicsPtr->data()->celerity1 ( iNode );
97 eigenvalues[1] = M_physicsPtr->data()->celerity2 ( iNode );
99 leftEigenvector1[0] = M_physicsPtr->data()->leftEigenVector11 ( iNode );
100 leftEigenvector1[1] = M_physicsPtr->data()->leftEigenVector12 ( iNode );
101 leftEigenvector2[0] = M_physicsPtr->data()->leftEigenVector21 ( iNode );
102 leftEigenvector2[1] = M_physicsPtr->data()->leftEigenVector22 ( iNode );
107 container2D_Type& deltaEigenvalues,
108 container2D_Type& deltaLeftEigenvector1,
109 container2D_Type& deltaLeftEigenvector2,
112 deltaEigenvalues[0] = 0;
113 deltaEigenvalues[1] = 0;
115 deltaLeftEigenvector1[0] = 0;
116 deltaLeftEigenvector1[1] = 0;
117 deltaLeftEigenvector2[0] = 0;
118 deltaLeftEigenvector2[1] = 0;
OneDFSIFluxLinear - Class containing the linear flux term of the 1D hyperbolic problem.
void updateInverseJacobian(const UInt &iQuadPt)
Real dFdU(const Real &U1, const Real &U2, const ID &row, const ID &column, const UInt &iNode) const
Evaluate the derivative of the flux term.
Real flux(const Real &U1, const Real &U2, const ID &row, const UInt &iNode) const
Evaluate the source term.
void eigenValuesEigenVectors(const Real &U1, const Real &U2, container2D_Type &eigenvalues, container2D_Type &leftEigenvector1, container2D_Type &leftEigenvector2, const UInt &iNode) const
Eigenvalues and eigenvectors of the Jacobian matrix.
double Real
Generic real data.
void deltaEigenValuesEigenVectors(const Real &A, const Real &Q, container2D_Type &deltaEigenvalues, container2D_Type &deltaLeftEigenvector1, container2D_Type &deltaLeftEigenvector2, const UInt &iNode) const
Derivatives of the eigenvalues and eigenvectors of the derivative of the Jacobian matrix...
uint32_type UInt
generic unsigned integer (used mainly for addressing)