Shaft

This component implements a shaft used to connect components such as a turbine, pump, and motor. The shaft provides a rigid connection between connected components, thus there is only one rotational speed shared by all connections. The shaft receives torque and inertia coupled variables from the components connected to it. The angular speed of the shaft and connected components is dictated by the torque-inertia balance,

k=1nIkdωdt=k=1nτk, \sum_{k=1}^{n} I_{k} \frac{d \omega}{dt} = \sum_{k=1}^{n} \tau_{k} \,, where

  • ω\omega is the angular speed of the shaft and all connected components,

  • IkI_{k} is the moment of inertia for the kthk^{th} connection,

  • τk\tau_{k} is the net torque for the kthk^{th} connection, and

  • nn is the number of components connected to the shaft.

Input Parameters

  • connected_componentsNames of the connected components

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Names of the connected components

Required Parameters

  • adTrueUse AD version or not

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Use AD version or not

  • initial_speedInitial shaft speed

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Initial shaft speed

  • scaling_factor_omega1Scaling factor for omega [-]

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Scaling factor for omega [-]

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

Variables

This component creates a scalar variable for the shaft angular speed ω\omega, where <shaft_name> is the user-given name of the component:

VariableSymbolDescription
<shaft_name>:omegaω\omegaShaft angular speed [rad/s]