Class ModalNodeDeformationProvider#
Defined in File PhysicalModalBody.h
Nested Relationships#
Nested Types#
Inheritance Relationships#
Base Type#
public Karana::Dynamics::NodeDeformationProvider(Class NodeDeformationProvider)
Class Documentation#
-
class ModalNodeDeformationProvider : public Karana::Dynamics::NodeDeformationProvider#
Node deformation provider class for modeling small deformation via modal representation.
See Flexible body systems section for more information of deformation provider classes.
Public Functions
-
ModalNodeDeformationProvider(std::string_view name, kc::ks_ptr<Node> node)#
Constructor.
- Parameters:
name – the assignmed name
node – the associated node
-
~ModalNodeDeformationProvider()#
Destructor.
-
inline virtual std::string_view typeString() const noexcept override#
Returns the type string of Base.
- Returns:
The type string.
-
void setNodalMatrix(const km::Mat &nodal_matrix)#
Set the nodal deformation matrix.
- Parameters:
nodal_matrix – the nodal matrix
-
inline const km::Mat6n &getNodalMatrix() const#
Return the nodal deformation matrix.
- Returns:
the nodal matrix
-
inline kc::ks_ptr<kf::Frame> undeformedFrame() const#
Return the undeformed frame.
- Returns:
the undeformed Frame instance
-
inline kc::ks_ptr<kf::Frame> deformedTransFrame() const#
Return the deformed translational frame.
- Returns:
the deformed translational Frame instance
-
inline kc::ks_ptr<kf::Frame> deformedRotFrame() const#
Return the deformed rotational frame.
- Returns:
the derformed rotational Frame instance
-
virtual bool isFinalized() const override#
Checks is the params for the object have been initialized.
- Returns:
True if the params have set up.
-
virtual std::string dumpString(std::string_view prefix, const Karana::Core::Base::DumpOptions *options) const override#
Return information about the object.
- Parameters:
prefix – A string to use as prefix for each output line
options – Struct with options to tailor the output
- Returns:
String with the information about the object.
Protected Functions
-
virtual kc::ks_ptr<NodeDeformationProvider::DeformationParams> _getParams() const override#
-
virtual void _setParams(const NodeDeformationProvider::DeformationParams ¶ms) override#
-
void _discard(kc::ks_ptr<Base> &base) override#
Discard the provided ModalDeformationProvider.
- Parameters:
base – - Base pointer to the ModalDeformationProvider to discard.
-
km::HomTran _transFrameRelTransformHelper() const#
helper methods to compute the deformation quantitities in the body frame for the node. For regular body nodes and onodes, these will essentially be the callbacks for the node’s f2f edge. For a pnode, the undeformed frame is a child of the node, and the body a child of the undeformed frame. These helper methods will be used within the _undeformed frame’s f2f edge’s callbacks to compute the quantities.
-
km::SpatialVector _transFrameRelSpVelHelper() const#
-
km::SpatialVector _transFrameRelSpAccelHelper() const#
-
km::HomTran _rotFrameRelTransformHelper() const#
-
km::SpatialVector _rotFrameRelSpVelHelper() const#
-
km::SpatialVector _rotFrameRelSpAccelHelper() const#
-
km::HomTran _transFrameRelTransformReversedHelper() const#
-
km::SpatialVector _transFrameRelSpVelReversedHelper() const#
-
km::SpatialVector _transFrameRelSpAccelReversedHelper() const#
-
km::HomTran _rotFrameRelTransformReversedHelper() const#
-
km::SpatialVector _rotFrameRelSpVelReversedHelper() const#
-
km::SpatialVector _rotFrameRelSpAccelReversedHelper() const#
Protected Attributes
-
km::Mat6n _nodal_matrix#
the modal matrix for this node
-
kc::ks_ptr<kf::Frame> _undeformed_frame = nullptr#
the undeformed frame for this node.
-
kc::ks_ptr<kf::Frame> _deformed_trans_frame = nullptr#
the “trans” deformed frame for this node.
-
kc::ks_ptr<kf::Frame> _deformed_rot_frame = nullptr#
the “rot” deformed frame for this node.
-
struct DeformationParams : public Karana::Dynamics::NodeDeformationProvider::DeformationParams#
Struct with modal deformation parameters for a node
Public Functions
-
DeformationParams() = default#
-
inline DeformationParams &operator=(const NodeDeformationProvider::DeformationParams *p)#
Assignment operator.
- Parameters:
p – DeformationParams to copy values from.
- Returns:
A reference to the newly assigned DeformationParams.
Public Members
-
km::Mat nodal_matrix#
the nodal matrix for the node
-
DeformationParams() = default#
-
ModalNodeDeformationProvider(std::string_view name, kc::ks_ptr<Node> node)#