MBDyn-1.7.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Orifice Class Reference

#include <hminor.h>

Inheritance diagram for Orifice:
Collaboration diagram for Orifice:

Public Member Functions

 Orifice (unsigned int uL, const DofOwner *pD, HydraulicFluid *hf, const PressureNode *p1, const PressureNode *p2, doublereal Dh, doublereal A_diaf, doublereal A_pipe, doublereal ReCR, flag fOut)
 
 ~Orifice (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 void WorkSpaceDim (integer *piNumRows, integer *piNumCols) const
 
VariableSubMatrixHandlerAssJac (VariableSubMatrixHandler &WorkMat, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
SubVectorHandlerAssRes (SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
virtual void Output (OutputHandler &OH) const
 
virtual void GetConnectedNodes (std::vector< const Node * > &connectedNodes) const
 
- Public Member Functions inherited from Elem
 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 VariableSubMatrixHandlerAssJac (VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr)
 
virtual SubVectorHandlerAssRes (SubVectorHandler &WorkVec, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr, const VectorHandler &XPrimePrimeCurr, InverseDynamics::Order iOrder=InverseDynamics::INVERSE_DYNAMICS)
 
virtual int GetNumConnectedNodes (void) const
 
- Public Member Functions inherited from WithLabel
 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
 
- Public Member Functions inherited from SimulationEntity
 SimulationEntity (void)
 
virtual ~SimulationEntity (void)
 
virtual bool bIsValidIndex (unsigned int i) const
 
virtual DofOrder::Order GetEqType (unsigned int i) const
 
virtual void SetValue (DataManager *pDM, VectorHandler &X, VectorHandler &XP, SimulationEntity::Hints *h=0)
 
virtual HintParseHint (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)
 
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)
 
- Public Member Functions inherited from ToBeOutput
 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))
 
- Public Member Functions inherited from HydraulicElem
 HydraulicElem (unsigned int uL, const DofOwner *pDO, HydraulicFluid *hf, flag fOut)
 
virtual ~HydraulicElem (void)
 
virtual Elem::Type GetElemType (void) const
 
- Public Member Functions inherited from ElemWithDofs
 ElemWithDofs (unsigned int uL, const DofOwner *pDO, flag fOut)
 
virtual ~ElemWithDofs (void)
 
- Public Member Functions inherited from DofOwnerOwner
 DofOwnerOwner (const DofOwner *pDO)
 
virtual ~DofOwnerOwner ()
 
virtual const DofOwnerpGetDofOwner (void) const
 
virtual integer iGetFirstIndex (void) const
 
virtual void SetInitialValue (VectorHandler &X)
 

Private Attributes

const PressureNodem_pNode1
 
const PressureNodem_pNode2
 
doublereal diameter
 
doublereal viscosity
 
doublereal m_Area_diaf
 
doublereal m_Area_pipe
 
doublereal ReCr
 
doublereal CriticJump
 
doublereal delta
 
doublereal Cd
 
doublereal flow
 
doublereal vel
 
doublereal Re
 
bool turbulent
 

Additional Inherited Members

- Public Types inherited from Elem
enum  Type {
  UNKNOWN = -1, AIRPROPERTIES = 0, INDUCEDVELOCITY, AUTOMATICSTRUCTURAL,
  GRAVITY, BODY, JOINT, JOINT_REGULARIZATION,
  BEAM, PLATE, FORCE, INERTIA,
  ELECTRICBULK, ELECTRIC, THERMAL, HYDRAULIC,
  BULK, LOADABLE, DRIVEN, EXTERNAL,
  AEROMODAL, AERODYNAMIC, GENEL, SOCKETSTREAM_OUTPUT,
  RTAI_OUTPUT = SOCKETSTREAM_OUTPUT, LASTELEMTYPE
}
 
- Public Types inherited from SimulationEntity
typedef std::vector< Hint * > Hints
 
- Public Types inherited from ToBeOutput
enum  { OUTPUT = 0x1U, OUTPUT_MASK = 0xFU, OUTPUT_PRIVATE = 0x10U, OUTPUT_PRIVATE_MASK = ~OUTPUT_MASK }
 
- Public Types inherited from HydraulicElem
enum  Type {
  UNKNOWN = -1, MINOR_LOSS = 0, THREEWAYMINORLOSS, CONTROL_VALVE,
  DYNAMIC_CONTROL_VALVE, PRESSURE_FLOW_CONTROL_VALVE, PRESSURE_VALVE, FLOW_VALVE,
  ORIFICE, ACCUMULATOR, TANK, PIPE,
  DYNAMIC_PIPE, HYDRAULIC_ACTUATOR, ACTUATOR, LASTHYDRAULICTYPE
}
 
- Protected Attributes inherited from WithLabel
unsigned int uLabel
 
std::string sName
 
- Protected Attributes inherited from ToBeOutput
flag fOutput
 
- Protected Attributes inherited from HydraulicElem
HydraulicFluidHF
 

Detailed Description

Definition at line 170 of file hminor.h.

Constructor & Destructor Documentation

Orifice::Orifice ( unsigned int  uL,
const DofOwner pD,
HydraulicFluid hf,
const PressureNode p1,
const PressureNode p2,
doublereal  Dh,
doublereal  A_diaf,
doublereal  A_pipe,
doublereal  ReCR,
flag  fOut 
)

Definition at line 420 of file hminor.cc.

References ASSERT, Cd, CriticJump, delta, HydraulicFluid::dGetDensity(), HydraulicFluid::dGetViscosity(), ScalarAlgebraicNode::dGetX(), diameter, WithLabel::GetLabel(), PressureNode::GetNodeType(), HydraulicElem::HF, Node::HYDRAULIC, m_Area_diaf, m_Area_pipe, m_pNode1, m_pNode2, MBDYN_EXCEPT_ARGS, grad::pow(), grad::sqrt(), and viscosity.

425 : Elem(uL, fOut),
426 HydraulicElem(uL, pDO, hf, fOut),
427 m_pNode1(p1), m_pNode2(p2),
428 diameter(Dh), m_Area_diaf(A_diaf),
429 m_Area_pipe(A_pipe), ReCr(ReCr),
430 flow(0.),
431 vel(0.),
432 Re(0.),
433 turbulent(false)
434 {
435  ASSERT(m_pNode1 != NULL);
437  ASSERT(m_pNode2 != NULL);
439  ASSERT(Dh > std::numeric_limits<doublereal>::epsilon());
440  ASSERT(A_diaf > std::numeric_limits<doublereal>::epsilon());
441  ASSERT(A_pipe > std::numeric_limits<doublereal>::epsilon());
442 
443  /* se |p1-p2| < CriticJump avrò sicuramente moto laminare se no turbolento */
444 
446  /*
447  * Merritt, pp. 43-45:
448  *
449  * delta = 0.2 for a sharp-edged round orifice
450  * delta = 0.157 for a sharp-edged slit orifice
451  */
452  delta = 0.2;
453  // ReCr = pow(0.611/delta, 2);
454  doublereal density = HF->dGetDensity((m_pNode2->dGetX() + m_pNode1->dGetX())/2.);
456 
457  /* calcolo del Cd */
458 
459  /* Cc = funzione delle due aree; */
461  /* parametro adimensionale in funzione del rapporto m_Area_diaf/m_Area_pipe */
462  doublereal Cc = (((.4855*rapp - .4971)*rapp + .158)*rapp + .1707)*rapp + .6005;
463 
464  doublereal base = Cc*rapp;
465  doublereal rad = 1. - base*base;
466  if (rad < 1.e3*std::numeric_limits<doublereal>::epsilon()) {
467  silent_cerr("Orifice(" << GetLabel() << "): error computing Cd" << std::endl);
469  }
470 
471  doublereal Cv = .98; /* costante adimensionale */
472  Cd = Cv*Cc/sqrt(rad);
473 }
doublereal delta
Definition: hminor.h:181
GradientExpression< BinaryExpr< FuncPow, LhsExpr, RhsExpr > > pow(const GradientExpression< LhsExpr > &u, const GradientExpression< RhsExpr > &v)
Definition: gradient.h:2961
#define MBDYN_EXCEPT_ARGS
Definition: except.h:63
doublereal viscosity
Definition: hminor.h:175
doublereal CriticJump
Definition: hminor.h:180
doublereal m_Area_pipe
Definition: hminor.h:177
doublereal vel
Definition: hminor.h:184
doublereal Re
Definition: hminor.h:185
doublereal ReCr
Definition: hminor.h:178
bool turbulent
Definition: hminor.h:186
virtual doublereal dGetDensity(void) const =0
virtual const doublereal & dGetX(void) const
Definition: node.h:492
HydraulicElem(unsigned int uL, const DofOwner *pDO, HydraulicFluid *hf, flag fOut)
Definition: preselem.cc:54
HydraulicFluid * HF
Definition: preselem.h:79
#define ASSERT(expression)
Definition: colamd.c:977
virtual doublereal dGetViscosity(void) const =0
doublereal diameter
Definition: hminor.h:174
GradientExpression< UnaryExpr< FuncSqrt, Expr > > sqrt(const GradientExpression< Expr > &u)
Definition: gradient.h:2974
doublereal Cd
Definition: hminor.h:182
virtual Node::Type GetNodeType(void) const
Definition: presnode.h:54
const PressureNode * m_pNode1
Definition: hminor.h:172
Elem(unsigned int uL, flag fOut)
Definition: elem.cc:41
double doublereal
Definition: colamd.c:52
unsigned int GetLabel(void) const
Definition: withlab.cc:62
doublereal m_Area_diaf
Definition: hminor.h:176
doublereal flow
Definition: hminor.h:183
const PressureNode * m_pNode2
Definition: hminor.h:173

Here is the call graph for this function:

Orifice::~Orifice ( void  )

Definition at line 475 of file hminor.cc.

References NO_OP.

476 {
477  NO_OP;
478 }
#define NO_OP
Definition: myassert.h:74

Member Function Documentation

VariableSubMatrixHandler & Orifice::AssJac ( VariableSubMatrixHandler WorkMat,
doublereal  dCoef,
const VectorHandler XCurr,
const VectorHandler XPrimeCurr 
)
virtual

Implements Elem.

Definition at line 515 of file hminor.cc.

References Cd, CriticJump, DEBUGCOUT, delta, HydraulicFluid::dGetDensity(), ScalarAlgebraicNode::dGetX(), diameter, grad::fabs(), HydraulicElem::HF, Node::iGetFirstColIndex(), Node::iGetFirstRowIndex(), m_Area_diaf, m_pNode1, m_pNode2, FullSubMatrixHandler::PutCoef(), FullSubMatrixHandler::PutColIndex(), FullSubMatrixHandler::PutRowIndex(), FullSubMatrixHandler::Resize(), VariableSubMatrixHandler::SetFull(), grad::sqrt(), and viscosity.

519 {
520  DEBUGCOUT("Entering Orifice::AssJac()" << std::endl);
521 
522  FullSubMatrixHandler& WM = WorkMat.SetFull();
523  WM.Resize(2, 2);
524 
525  integer iNode1RowIndex = m_pNode1->iGetFirstRowIndex() + 1;
526  integer iNode2RowIndex = m_pNode2->iGetFirstRowIndex() + 1;
527  integer iNode1ColIndex = m_pNode1->iGetFirstColIndex() + 1;
528  integer iNode2ColIndex = m_pNode2->iGetFirstColIndex() + 1;
529 
530  WM.PutRowIndex(1, iNode1RowIndex);
531  WM.PutRowIndex(2, iNode2RowIndex);
532  WM.PutColIndex(1, iNode1ColIndex);
533  WM.PutColIndex(2, iNode2ColIndex);
534 
535  doublereal p1 = m_pNode1->dGetX();
536  doublereal p2 = m_pNode2->dGetX();
537  doublereal jumpPres = fabs(p1-p2);
538 
539  doublereal Jac = 0.;
540  doublereal density = HF->dGetDensity((p1 + p2)/2.);
541 
542  if (jumpPres < CriticJump) {
543  /* moto sicuramente laminare (jacobiano) */
544  Jac = -density*2.*(delta*delta)*diameter*m_Area_diaf/viscosity;
545 
546  } else {
547  /* moto sicuramente turbolento (jacobiano) */
548  Jac = -Cd*m_Area_diaf/sqrt(2.*jumpPres/density);
549  }
550 
551  /* Jac *= dCoef; */
552 
553  WM.PutCoef(1, 1, Jac);
554  WM.PutCoef(1, 2, -Jac);
555  WM.PutCoef(2, 1, -Jac);
556  WM.PutCoef(2, 2, Jac);
557 
558  return WorkMat;
559 }
void PutColIndex(integer iSubCol, integer iCol)
Definition: submat.h:325
doublereal delta
Definition: hminor.h:181
FullSubMatrixHandler & SetFull(void)
Definition: submat.h:1168
doublereal viscosity
Definition: hminor.h:175
doublereal CriticJump
Definition: hminor.h:180
void Resize(integer iNewRow, integer iNewCol)
Definition: submat.cc:138
void PutCoef(integer iRow, integer iCol, const doublereal &dCoef)
Definition: submat.h:672
GradientExpression< UnaryExpr< FuncFabs, Expr > > fabs(const GradientExpression< Expr > &u)
Definition: gradient.h:2973
virtual doublereal dGetDensity(void) const =0
virtual const doublereal & dGetX(void) const
Definition: node.h:492
HydraulicFluid * HF
Definition: preselem.h:79
#define DEBUGCOUT(msg)
Definition: myassert.h:232
virtual integer iGetFirstRowIndex(void) const
Definition: node.cc:82
doublereal diameter
Definition: hminor.h:174
GradientExpression< UnaryExpr< FuncSqrt, Expr > > sqrt(const GradientExpression< Expr > &u)
Definition: gradient.h:2974
void PutRowIndex(integer iSubRow, integer iRow)
Definition: submat.h:311
doublereal Cd
Definition: hminor.h:182
const PressureNode * m_pNode1
Definition: hminor.h:172
double doublereal
Definition: colamd.c:52
long int integer
Definition: colamd.c:51
doublereal m_Area_diaf
Definition: hminor.h:176
const PressureNode * m_pNode2
Definition: hminor.h:173
virtual integer iGetFirstColIndex(void) const
Definition: node.cc:88

Here is the call graph for this function:

SubVectorHandler & Orifice::AssRes ( SubVectorHandler WorkVec,
doublereal  dCoef,
const VectorHandler XCurr,
const VectorHandler XPrimeCurr 
)
virtual

Implements Elem.

Definition at line 562 of file hminor.cc.

References Cd, copysign(), CriticJump, DEBUGCOUT, delta, HydraulicFluid::dGetDensity(), ScalarAlgebraicNode::dGetX(), diameter, grad::fabs(), flow, HydraulicElem::HF, Node::iGetFirstRowIndex(), m_Area_diaf, m_Area_pipe, m_pNode1, m_pNode2, SubVectorHandler::PutItem(), Re, VectorHandler::Resize(), grad::sqrt(), turbulent, vel, and viscosity.

566 {
567  DEBUGCOUT("Entering Orifice::AssRes()" << std::endl);
568 
569  WorkVec.Resize(2);
570 
571  integer iNode1RowIndex = m_pNode1->iGetFirstRowIndex() + 1;
572  integer iNode2RowIndex = m_pNode2->iGetFirstRowIndex() + 1;
573 
574  doublereal p1 = m_pNode1->dGetX();
575  doublereal p2 = m_pNode2->dGetX();
576 
577  doublereal jumpPres = fabs(p1 - p2);
578 
579  doublereal density = HF->dGetDensity((p1 + p2)/2.);
580 
581  if (jumpPres < CriticJump) {
582  /* moto sicuramente laminare (residuo) */
583 #ifdef HYDR_DEVEL
584  DEBUGCOUT("we are in orifice laminar" << std::endl);
585 #endif
586  flow = density*2.*(delta*delta)*diameter*m_Area_diaf*(p1 - p2)/viscosity;
587  turbulent = false;
588 
589  } else {
590  /* moto sicuramente turbolento (residuo) */
591 #ifdef HYDR_DEVEL
592  DEBUGCOUT("we are in orifice turbulent:" << std::endl);
593 #endif
594  flow = density*Cd*m_Area_diaf*copysign(sqrt(2.*jumpPres/density), p1 - p2);
595  turbulent = true;
596  }
597 
598  vel = flow/(density*m_Area_pipe);
599  Re = fabs(density*vel*diameter/viscosity);
600 
601 #ifdef HYDR_DEVEL
602  DEBUGCOUT("jumpPres: " << jumpPres << std::endl);
603  DEBUGCOUT("density: " << density << std::endl);
604  DEBUGCOUT("Cd: " << Cd << std::endl);
605  DEBUGCOUT("p1: " << p1 << std::endl);
606  DEBUGCOUT("p2: " << p2 << std::endl);
607  DEBUGCOUT("Cc: " << Cc << std::endl);
608  DEBUGCOUT("CriticJump: " << CriticJump << std::endl);
609  DEBUGCOUT("delta: " << delta << std::endl);
610  DEBUGCOUT("viscosity: " << viscosity << std::endl);
611  DEBUGCOUT("rad: " << rad << std::endl);
612  DEBUGCOUT("area_pipe: " << m_Area_pipe << std::endl);
613  DEBUGCOUT("area_diaf: " << m_Area_diaf << std::endl);
614  DEBUGCOUT("RES area_pipe : " << m_Area_pipe << std::endl);
615  DEBUGCOUT("RES flow: " << flow << std::endl);
616  DEBUGCOUT("RES Reynolds: " << Re << std::endl);
617  DEBUGCOUT("******************************************" << std::endl);
618  DEBUGCOUT("RES velocita': " << vel << std::endl);
619  DEBUGCOUT(" se positiva il fluido va dal nodo 1 al nodo 2" << std::endl);
620  DEBUGCOUT("*********************************************" << std::endl);
621 #endif
622 
623  WorkVec.PutItem(1, iNode1RowIndex, flow);
624  WorkVec.PutItem(2, iNode2RowIndex, -flow);
625 
626  return WorkVec;
627 }
doublereal delta
Definition: hminor.h:181
doublereal viscosity
Definition: hminor.h:175
doublereal CriticJump
Definition: hminor.h:180
doublereal m_Area_pipe
Definition: hminor.h:177
doublereal vel
Definition: hminor.h:184
GradientExpression< UnaryExpr< FuncFabs, Expr > > fabs(const GradientExpression< Expr > &u)
Definition: gradient.h:2973
virtual void PutItem(integer iSubRow, integer iRow, const doublereal &dCoef)
Definition: submat.h:1445
doublereal Re
Definition: hminor.h:185
bool turbulent
Definition: hminor.h:186
virtual doublereal dGetDensity(void) const =0
virtual const doublereal & dGetX(void) const
Definition: node.h:492
HydraulicFluid * HF
Definition: preselem.h:79
doublereal copysign(doublereal x, doublereal y)
Definition: gradient.h:97
#define DEBUGCOUT(msg)
Definition: myassert.h:232
virtual integer iGetFirstRowIndex(void) const
Definition: node.cc:82
doublereal diameter
Definition: hminor.h:174
GradientExpression< UnaryExpr< FuncSqrt, Expr > > sqrt(const GradientExpression< Expr > &u)
Definition: gradient.h:2974
doublereal Cd
Definition: hminor.h:182
const PressureNode * m_pNode1
Definition: hminor.h:172
double doublereal
Definition: colamd.c:52
long int integer
Definition: colamd.c:51
doublereal m_Area_diaf
Definition: hminor.h:176
virtual void Resize(integer iNewSize)=0
doublereal flow
Definition: hminor.h:183
const PressureNode * m_pNode2
Definition: hminor.h:173

Here is the call graph for this function:

virtual void Orifice::GetConnectedNodes ( std::vector< const Node * > &  connectedNodes) const
inlinevirtual

Reimplemented from Elem.

Definition at line 223 of file hminor.h.

References m_pNode1, and m_pNode2.

223  {
224  connectedNodes.resize(2);
225  connectedNodes[0] = m_pNode1;
226  connectedNodes[1] = m_pNode2;
227  };
const PressureNode * m_pNode1
Definition: hminor.h:172
const PressureNode * m_pNode2
Definition: hminor.h:173
DofOrder::Order Orifice::GetDofType ( unsigned int  i) const
virtual

Reimplemented from Elem.

Definition at line 501 of file hminor.cc.

References MBDYN_EXCEPT_ARGS.

502 {
503  silent_cerr("Orifice has no dofs!" << std::endl);
505 }
#define MBDYN_EXCEPT_ARGS
Definition: except.h:63
HydraulicElem::Type Orifice::GetHydraulicType ( void  ) const
virtual

Implements HydraulicElem.

Definition at line 482 of file hminor.cc.

References HydraulicElem::ORIFICE.

483 {
484  return HydraulicElem::ORIFICE;
485 }
unsigned int Orifice::iGetNumDof ( void  ) const
virtual

Reimplemented from Elem.

Definition at line 495 of file hminor.cc.

496 {
497  return 0;
498 }
void Orifice::Output ( OutputHandler OH) const
virtual

Reimplemented from ToBeOutput.

Definition at line 630 of file hminor.cc.

References ToBeOutput::bToBeOutput(), flow, WithLabel::GetLabel(), OutputHandler::Hydraulic(), Re, turbulent, and vel.

631 {
632  if (bToBeOutput()) {
633  std::ostream& out = OH.Hydraulic();
634  out << std::setw(8) << GetLabel() /* 1 */
635  << " " << vel /* 2 */
636  << " " << flow /* 3 */
637  << " " << Re /* 4 */
638  << " " << turbulent /* 5 */
639  << std::endl;
640  }
641 }
virtual bool bToBeOutput(void) const
Definition: output.cc:890
doublereal vel
Definition: hminor.h:184
doublereal Re
Definition: hminor.h:185
bool turbulent
Definition: hminor.h:186
std::ostream & Hydraulic(void) const
Definition: output.h:492
unsigned int GetLabel(void) const
Definition: withlab.cc:62
doublereal flow
Definition: hminor.h:183

Here is the call graph for this function:

std::ostream & Orifice::Restart ( std::ostream &  out) const
virtual

Implements Elem.

Definition at line 489 of file hminor.cc.

490 {
491  return out << "Orifice not implemented yet!" << std::endl;
492 }
void Orifice::WorkSpaceDim ( integer piNumRows,
integer piNumCols 
) const
virtual

Implements Elem.

Definition at line 508 of file hminor.cc.

509 {
510  *piNumRows = 2;
511  *piNumCols = 2;
512 }

Member Data Documentation

doublereal Orifice::Cd
private

Definition at line 182 of file hminor.h.

Referenced by AssJac(), AssRes(), and Orifice().

doublereal Orifice::CriticJump
private

Definition at line 180 of file hminor.h.

Referenced by AssJac(), AssRes(), and Orifice().

doublereal Orifice::delta
private

Definition at line 181 of file hminor.h.

Referenced by AssJac(), AssRes(), and Orifice().

doublereal Orifice::diameter
private

Definition at line 174 of file hminor.h.

Referenced by AssJac(), AssRes(), and Orifice().

doublereal Orifice::flow
private

Definition at line 183 of file hminor.h.

Referenced by AssRes(), and Output().

doublereal Orifice::m_Area_diaf
private

Definition at line 176 of file hminor.h.

Referenced by AssJac(), AssRes(), and Orifice().

doublereal Orifice::m_Area_pipe
private

Definition at line 177 of file hminor.h.

Referenced by AssRes(), and Orifice().

const PressureNode* Orifice::m_pNode1
private

Definition at line 172 of file hminor.h.

Referenced by AssJac(), AssRes(), GetConnectedNodes(), and Orifice().

const PressureNode* Orifice::m_pNode2
private

Definition at line 173 of file hminor.h.

Referenced by AssJac(), AssRes(), GetConnectedNodes(), and Orifice().

doublereal Orifice::Re
private

Definition at line 185 of file hminor.h.

Referenced by AssRes(), and Output().

doublereal Orifice::ReCr
private

Definition at line 178 of file hminor.h.

bool Orifice::turbulent
private

Definition at line 186 of file hminor.h.

Referenced by AssRes(), and Output().

doublereal Orifice::vel
private

Definition at line 184 of file hminor.h.

Referenced by AssRes(), and Output().

doublereal Orifice::viscosity
private

Definition at line 175 of file hminor.h.

Referenced by AssJac(), AssRes(), and Orifice().


The documentation for this class was generated from the following files: