https://mooseframework.inl.gov
Loading...
Searching...
No Matches
ShaftConnectedMotorUserObject.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
12#include "GeneralUserObject.h"
14
20{
21public:
23
24 virtual Real getTorque() const override;
25 virtual void getTorqueJacobianData(DenseMatrix<Real> & jacobian_block,
26 std::vector<dof_id_type> & dofs_j) const override;
27
28 virtual Real getMomentOfInertia() const override;
29 virtual void getMomentOfInertiaJacobianData(DenseMatrix<Real> & jacobian_block,
30 std::vector<dof_id_type> & dofs_j) const override;
31
32 virtual void initialize() override;
33 virtual void execute() override;
34 virtual void finalize() override;
35
36protected:
43
44public:
46};
Interface class for user objects that are connected to a shaft.
User object to provide data for a shaft-connected motor.
virtual void getMomentOfInertiaJacobianData(DenseMatrix< Real > &jacobian_block, std::vector< dof_id_type > &dofs_j) const override
virtual Real getTorque() const override
virtual Real getMomentOfInertia() const override
const VariableValue & _shaft_speed
Shaft speed.
const Function & _torque_fn
Torque as a function of shaft speed.
const Function & _inertia_fn
Moment of inertia as a function of shaft speed.
virtual void getTorqueJacobianData(DenseMatrix< Real > &jacobian_block, std::vector< dof_id_type > &dofs_j) const override
VariableValueTempl< false > VariableValue