|  | 
|  | DynamicPipe (unsigned int uL, const DofOwner *pD, HydraulicFluid *hf, const PressureNode *p1, const PressureNode *p2, doublereal Dh, doublereal A, doublereal L, flag transition, doublereal q0, flag fOut) | 
|  | 
|  | ~DynamicPipe (void) | 
|  | 
| virtual HydraulicElem::Type | GetHydraulicType (void) const | 
|  | 
| virtual std::ostream & | Restart (std::ostream &out) const | 
|  | 
| virtual unsigned int | iGetNumDof (void) const | 
|  | 
| virtual DofOrder::Order | GetDofType (unsigned int i) const | 
|  | 
| virtual DofOrder::Order | GetEqType (unsigned int i) const | 
|  | 
| virtual void | WorkSpaceDim (integer *piNumRows, integer *piNumCols) const | 
|  | 
| VariableSubMatrixHandler & | AssJac (VariableSubMatrixHandler &WorkMat, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) | 
|  | 
| SubVectorHandler & | AssRes (SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) | 
|  | 
| virtual void | AfterConvergence (const VectorHandler &X, const VectorHandler &XP) | 
|  | 
| virtual void | Output (OutputHandler &OH) const | 
|  | 
| virtual void | SetValue (DataManager *pDM, VectorHandler &X, VectorHandler &XP, SimulationEntity::Hints *ph=0) | 
|  | 
| virtual void | GetConnectedNodes (std::vector< const Node * > &connectedNodes) const | 
|  | 
|  | Elem (unsigned int uL, flag fOut) | 
|  | 
| virtual | ~Elem (void) | 
|  | 
| virtual std::ostream & | DescribeDof (std::ostream &out, const char *prefix="", bool bInitial=false) const | 
|  | 
| virtual void | DescribeDof (std::vector< std::string > &desc, bool bInitial=false, int i=-1) const | 
|  | 
| virtual std::ostream & | DescribeEq (std::ostream &out, const char *prefix="", bool bInitial=false) const | 
|  | 
| virtual void | DescribeEq (std::vector< std::string > &desc, bool bInitial=false, int i=-1) const | 
|  | 
| virtual void | AssMats (VariableSubMatrixHandler &WorkMatA, VariableSubMatrixHandler &WorkMatB, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) | 
|  | 
| virtual bool | bInverseDynamics (void) const | 
|  | 
| void | SetInverseDynamicsFlags (unsigned uIDF) | 
|  | 
| unsigned | GetInverseDynamicsFlags (void) const | 
|  | 
| bool | bIsErgonomy (void) const | 
|  | 
| bool | bIsRightHandSide (void) const | 
|  | 
| virtual VariableSubMatrixHandler & | AssJac (VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr) | 
|  | 
| virtual SubVectorHandler & | AssRes (SubVectorHandler &WorkVec, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr, const VectorHandler &XPrimePrimeCurr, InverseDynamics::Order iOrder=InverseDynamics::INVERSE_DYNAMICS) | 
|  | 
| virtual int | GetNumConnectedNodes (void) const | 
|  | 
|  | WithLabel (unsigned int uL=0, const std::string &sN="") | 
|  | 
| virtual | ~WithLabel (void) | 
|  | 
| void | PutLabel (unsigned int uL) | 
|  | 
| void | PutName (const std::string &sN) | 
|  | 
| unsigned int | GetLabel (void) const | 
|  | 
| const std::string & | GetName (void) const | 
|  | 
|  | SimulationEntity (void) | 
|  | 
| virtual | ~SimulationEntity (void) | 
|  | 
| virtual bool | bIsValidIndex (unsigned int i) const | 
|  | 
| virtual Hint * | ParseHint (DataManager *pDM, const char *s) const | 
|  | 
| virtual void | BeforePredict (VectorHandler &, VectorHandler &, VectorHandler &, VectorHandler &) const | 
|  | 
| virtual void | AfterPredict (VectorHandler &X, VectorHandler &XP) | 
|  | 
| virtual void | Update (const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) | 
|  | 
| virtual void | DerivativesUpdate (const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) | 
|  | 
| virtual void | Update (const VectorHandler &XCurr, InverseDynamics::Order iOrder) | 
|  | 
| virtual void | AfterConvergence (const VectorHandler &X, const VectorHandler &XP, const VectorHandler &XPP) | 
|  | 
| virtual unsigned int | iGetNumPrivData (void) const | 
|  | 
| virtual unsigned int | iGetPrivDataIdx (const char *s) const | 
|  | 
| virtual doublereal | dGetPrivData (unsigned int i) const | 
|  | 
| virtual std::ostream & | OutputAppend (std::ostream &out) const | 
|  | 
| virtual void | ReadInitialState (MBDynParser &HP) | 
|  | 
|  | ToBeOutput (flag fOut=fDefaultOut) | 
|  | 
| virtual | ~ToBeOutput (void) | 
|  | 
| virtual void | OutputPrepare (OutputHandler &OH) | 
|  | 
| virtual void | Output (OutputHandler &OH, const VectorHandler &X, const VectorHandler &XP) const | 
|  | 
| virtual flag | fToBeOutput (void) const | 
|  | 
| virtual bool | bToBeOutput (void) const | 
|  | 
| virtual void | SetOutputFlag (flag f=flag(1)) | 
|  | 
|  | HydraulicElem (unsigned int uL, const DofOwner *pDO, HydraulicFluid *hf, flag fOut) | 
|  | 
| virtual | ~HydraulicElem (void) | 
|  | 
| virtual Elem::Type | GetElemType (void) const | 
|  | 
|  | ElemWithDofs (unsigned int uL, const DofOwner *pDO, flag fOut) | 
|  | 
| virtual | ~ElemWithDofs (void) | 
|  | 
|  | DofOwnerOwner (const DofOwner *pDO) | 
|  | 
| virtual | ~DofOwnerOwner () | 
|  | 
| virtual const DofOwner * | pGetDofOwner (void) const | 
|  | 
| virtual integer | iGetFirstIndex (void) const | 
|  | 
| virtual void | SetInitialValue (VectorHandler &X) | 
|  | 
Definition at line 201 of file pipe.h.
 
Implements Elem.
Definition at line 1084 of file pipe.cc.
References a, area, c, density0, density1, density2, densityDPres1, densityDPres2, HydraulicFluid::dGetDensityDPres(), HydraulicFluid::dGetRe(), diameter, dKlam, dKtrb, grad::fabs(), HydraulicElem::HF, Node::iGetFirstColIndex(), DofOwnerOwner::iGetFirstIndex(), Node::iGetFirstRowIndex(), length, HydraulicFluid::LOWER, p1, p2, pNode1, pNode2, grad::pow(), FullSubMatrixHandler::PutCoef(), FullSubMatrixHandler::PutColIndex(), FullSubMatrixHandler::PutRowIndex(), q1, q2, Re, FullSubMatrixHandler::ResizeReset(), VariableSubMatrixHandler::SetFull(), turbulent, HydraulicFluid::UPPER, and viscosity.
 1133       dLoss11 = .75*dk/dd1;
 
 1134       dLoss12 = .25*dk/dd1;
 
 1135       dLoss21 = .25*dk/dd2;
 
 1136       dLoss22 = .75*dk/dd2;
 
 1174       doublereal fax1 = (((5.*a*fqq1+4.*b)*fqq1+3.*c)*fqq1+2.*d)*fqq1;
 
 1175       doublereal fax2 = (((5.*a*fqq2+4.*b)*fqq2+3.*c)*fqq2+2.*d)*fqq2;
 
 1197    WM.
PutCoef(1, 4, -dr*densityDPres1);
 
 1199    WM.
PutCoef(2, 4, -dr*3.*densityDPres2);
 
 1208    WM.
PutCoef(3, 3, -dr + ddq1 - ddq12);
 
 1210    WM.
PutCoef(4, 3, -dr + ddq12);
 
 1211    WM.
PutCoef(4, 4, dr + ddq12 - ddq2);
 
 1217    WM.
PutCoef(3, 6, dr+dq12/area*dCoef + dLoss12);
 
 1218    WM.
PutCoef(4, 5, dr-dq12/area*dCoef + dLoss21);
 
const PressureNode * pNode1
void PutColIndex(integer iSubCol, integer iCol)
GradientExpression< BinaryExpr< FuncPow, LhsExpr, RhsExpr > > pow(const GradientExpression< LhsExpr > &u, const GradientExpression< RhsExpr > &v)
virtual doublereal dGetRe(Re which)
FullSubMatrixHandler & SetFull(void)
virtual doublereal dGetDensityDPres(void) const =0
void PutCoef(integer iRow, integer iCol, const doublereal &dCoef)
GradientExpression< UnaryExpr< FuncFabs, Expr > > fabs(const GradientExpression< Expr > &u)
const PressureNode * pNode2
virtual integer iGetFirstRowIndex(void) const 
virtual void ResizeReset(integer, integer)
static std::stack< cleanup * > c
void PutRowIndex(integer iSubRow, integer iRow)
static const doublereal a
virtual integer iGetFirstIndex(void) const 
virtual integer iGetFirstColIndex(void) const 
 
 
 
Implements Elem.
Definition at line 1233 of file pipe.cc.
References a, area, c, DEBUGCOUT, density0, density1, density2, densityDPres1, densityDPres2, HydraulicFluid::dGetDensity(), HydraulicFluid::dGetDensityDPres(), HydraulicFluid::dGetRe(), HydraulicFluid::dGetViscosity(), ScalarAlgebraicNode::dGetX(), diameter, dKlam, dKtra, dKtrb, grad::fabs(), HydraulicElem::HF, DofOwnerOwner::iGetFirstIndex(), Node::iGetFirstRowIndex(), length, HydraulicFluid::LOWER, p0, p1, p1p, p2, p2p, pNode1, pNode2, grad::pow(), SubVectorHandler::PutItem(), q1, q1p, q2, q2p, Re, VectorHandler::Resize(), turbulent, HydraulicFluid::UPPER, and viscosity.
 1238    DEBUGCOUT(
"Entering DynamicPipe::AssRes()" << std::endl);
 
 1249    p1 = XCurr(iFirstIndex+1);        
 
 1250    p2 = XCurr(iFirstIndex+2);        
 
 1251    p1p = XPrimeCurr(iFirstIndex+1);  
 
 1252    p2p = XPrimeCurr(iFirstIndex+2);  
 
 1254    q1 = XCurr(iFirstIndex+3);        
 
 1255    q2 = XCurr(iFirstIndex+4);        
 
 1256    q1p = XPrimeCurr(iFirstIndex+3);  
 
 1257    q2p = XPrimeCurr(iFirstIndex+4);  
 
 1290       dLoss1 = dk*qq1/dd1;
 
 1291       dLoss2 = dk*qq2/dd2;
 
 1297       dLoss1 = dk*qq1*
pow(
fabs(qq1), .75)/dd1;
 
 1298       dLoss2 = dk*qq2*
pow(
fabs(qq2), .75)/dd2;
 
 1324       doublereal fax1 = qq1*(((a*fqq1+b)*fqq1+c)*fqq1+d)*fqq1;
 
 1325       doublereal fax2 = qq2*(((a*fqq2+b)*fqq2+c)*fqq2+d)*fqq2;
 
 1327       dLoss1 = 
dKtra*fax1/dd1;
 
 1328       dLoss2 = 
dKtra*fax2/dd2;
 
 1340    WorkVec.
PutItem(3, iFirstIndex+1,
 
 1342    WorkVec.
PutItem(4, iFirstIndex+2,
 
 1346    WorkVec.
PutItem(5, iFirstIndex+3, pn1-
p1);
 
 1347    WorkVec.
PutItem(6, iFirstIndex+4, pn2-
p2);
 
const PressureNode * pNode1
GradientExpression< BinaryExpr< FuncPow, LhsExpr, RhsExpr > > pow(const GradientExpression< LhsExpr > &u, const GradientExpression< RhsExpr > &v)
virtual doublereal dGetRe(Re which)
virtual doublereal dGetDensityDPres(void) const =0
GradientExpression< UnaryExpr< FuncFabs, Expr > > fabs(const GradientExpression< Expr > &u)
virtual void PutItem(integer iSubRow, integer iRow, const doublereal &dCoef)
virtual doublereal dGetDensity(void) const =0
virtual const doublereal & dGetX(void) const 
const PressureNode * pNode2
virtual integer iGetFirstRowIndex(void) const 
virtual doublereal dGetViscosity(void) const =0
static std::stack< cleanup * > c
static const doublereal a
virtual integer iGetFirstIndex(void) const 
virtual void Resize(integer iNewSize)=0