17#ifndef AGXHYDRAULICS_FLOW_UNIT_H
18#define AGXHYDRAULICS_FLOW_UNIT_H
71 agx::RigidBody* body,
agx::UInt8 elementIndex);
85 void setLength(
agx::Real length);
90 agx::Real getLength() const;
97 bool setArea(
agx::Real area);
102 agx::Real getArea() const;
108 void setFluidDensity(
agx::Real density);
113 agx::Real getFluidDensity() const;
122 void setFluidViscosity(
agx::Real viscosity);
127 agx::Real getFluidViscosity() const;
133 agx::Real getFlowRate() const;
165 agx::Real getInputPressure() const;
171 agx::Real getInletPressure() const;
178 agx::Real getOutputPressure() const;
184 agx::Real getOutletPressure() const;
239 using Unit::isConnected;
256 virtual
agx::Real computeFrictionLoss(
agx::Real flowRate);
264 virtual
void addTankPressure();
270 virtual bool preUpdate(
agx::Real timeStep)
override;
295 void updateBodyMass();
297 agx::Real computeReynoldsNumber() const;
298 static
agx::Real computeReynoldsNumber(
agx::Real area,
agx::Real flowRate,
agx::Real viscosity);
299 agx::Real computeFrictionFactor() const;
300 agx::Real computeLaminarFrictionalLoss(
agx::Real flowRate) const;
301 agx::Real computeQuadraticFrictionalLoss(
agx::Real flowCoefficient) const;
302 agx::Real updateFrictionLoss();
#define AGX_DECLARE_POINTER_TYPES(type)
#define AGXSTREAM_DECLARE_SERIALIZABLE(T)
Use this in a Serializable class to add the required methods Important: Use full namespace in the dec...
#define AGXHYDRAULICS_EXPORT
#define AGX_DECLARE_VECTOR_TYPES(type)
A FlowConnector is a junction of a set of FlowUnits.
A FlowDimension represents the flow of fluid through a FlowUnit.
FlowUnit is the base class for Units that contains a FlowDimension.
agxHydraulics::FlowDimensionRef m_flowDimension
FlowUnit(agx::Real length, agx::Real area, agx::Real fluidDensity)
Create a FlowUnit with inertia calculated from the given parameters.
Abstract base class for storing/restoring a line/drums with version control.
#define DOXYGEN_END_INTERNAL_BLOCK()
#define DOXYGEN_START_INTERNAL_BLOCK()
The agxHydraulics namespace contains classes for modeling hydraulic circuits within the power line fr...
agxPowerLine contains a collection of connected components that transport power across a system.
The agxSDK namespace contain classes to bridge the collision detection system and the dynamical simul...
The agx namespace contains the dynamics/math part of the AGX Dynamics API.