44     "Q-inflow", QInflow::create, 
"Inflow boundary condition");
 
   62     const NekDouble time, 
int omega, 
int offset, 
int n)
 
   79     vessel[0]->EvaluateBoundaryConditions(time);
 
   82     Q = (vessel[0]->UpdateBndCondExpansion(n))->GetCoeffs()[0];
 
   85     A_r = inarray[0][offset];
 
   86     u_r = inarray[1][offset];
 
   89     Q_RiemannSolver(Q, A_r, u_r, A_0[omega][0], beta[omega][0], alpha[omega][0], A_u, u_u);
 
   97     (vessel[0]->UpdateBndCondExpansion(n))->UpdatePhys()[0] = A_l;
 
   98     (vessel[1]->UpdateBndCondExpansion(n))->UpdatePhys()[0] = u_l;
 
  133     while ((proceed) && (iter < MAX_ITER))
 
  140         FA           = Q - A_calc * (W2 + I);
 
  142         delta_A_calc = FA / dFdA;
 
  143         A_calc      -= delta_A_calc;
 
  145         if (
sqrt(delta_A_calc * delta_A_calc) < Tol)
 
tKey RegisterCreatorFunction(tKey idKey, CreatorFunction classCreator, std::string pDesc="")
Register a class with the factory.
 
Array< OneD, MultiRegions::ExpListSharedPtr > m_vessels
 
PulseWavePressureAreaSharedPtr m_pressureArea
 
virtual void v_DoBoundary(const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &A_0, Array< OneD, Array< OneD, NekDouble > > &beta, Array< OneD, Array< OneD, NekDouble > > &alpha, const NekDouble time, int omega, int offset, int n)
 
void Q_RiemannSolver(NekDouble Q, NekDouble A_r, NekDouble u_r, NekDouble A_0, NekDouble beta, NekDouble alpha, NekDouble &Au, NekDouble &uu)
 
std::shared_ptr< SessionReader > SessionReaderSharedPtr
 
The above copyright notice and this permission notice shall be included.
 
std::shared_ptr< PulseWavePressureArea > PulseWavePressureAreaSharedPtr
 
BoundaryFactory & GetBoundaryFactory()
 
scalarT< T > sqrt(scalarT< T > in)