Basic Geometry, Numerical Algorithms and Interfaces
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
MxMeshDeform Class Reference

Detailed Description

Represent time-domain subspace mesh deformation.

MxMeshDeform contains a time history of deformations expressed as a linear combination of a set of basis functions.

See Also

#include <mxmeshdeform.h>

Inheritance diagram for MxMeshDeform:
Collaboration diagram for MxMeshDeform:

Public Member Functions

 MxMeshDeform (const MxMesh *pm=0)
 construct undefined deformation shape
const std::string & name () const
 retrieve shape name
void rename (const std::string &s)
 change name
uint ntime () const
 number of time history values present
Real time (uint i) const
 access time breakpoint i
Real duration () const
 duration of this motion
uint nmodes () const
 number of displacement values per time
bool isFlightPath () const
 determine if the trajectory contains rigid-body modes
bool interpolateSubspace (Real t, Vector &dss) const
 retrieve interpolated subspace deformation at t
bool interpolateSubspace (Real t, Vector &x, Vector &xd, Vector &xdd) const
 evaluate first and second time derivatives at t
void writeTable (uint tid, uint npoints, uint imode, std::ostream &os) const
 generate TABLED1 input card for NASTRAN
void deformElastic (Real scale, const Vector &dss, PointList< 3 > &vdef) const
 apply elastic (modal) deformation to mesh vertices
void flightPath (const Vct3 &CoG, Real width, Real scale, PointList< 3, float > &path) const
 compute path of CoG
Mtx33 rbTransform (const Vct3 &CoG, Real scale, const Vector &dss, PointList< 3 > &vdef) const
 apply rigid-body transformation to vdef
bool hasSpline () const
 check if spline is present
void buildSpline ()
 construct a cubic spline interpolation
Real estimateMaxDisplacement () const
 estimate maximum displacement at scale 1.0
void setDeformation (const Indices &im, const Vector &t, const Matrix &tdef)
 set shape directly
void fromFlutterMode (const Indices &im, Complex p, const CpxVector &z, uint nsample=32)
 assemble shape by sampling complex flutter mode shape
XmlElement toXml (bool share=false) const
 convert to xml representation
void fromXml (const XmlElement &xe)
 retrieve data from xml representation
void readPlain (const std::string &fname, const Indices &useCols=Indices())
 retrieve data from plain text file
- Public Member Functions inherited from MxAnnotated
 MxAnnotated ()
 empty annotations
 MxAnnotated (const MxAnnotated &)=default
 default copy
 MxAnnotated (MxAnnotated &&a)
 move constructor
virtual ~MxAnnotated ()
 meant as a base class
MxAnnotatedoperator= (const MxAnnotated &)=default
 default copy asignment
MxAnnotatedoperator= (MxAnnotated &&a)
 move assignment
void note (const XmlElement &xe)
 set the contents of the complete annotation object
const XmlElementnote () const
 retrieve xml annotation object
void annotate (const XmlElement &xe)
 append annotation element
XmlElement::const_iterator noteBegin () const
 iterate over annotations
XmlElement::const_iterator noteEnd () const
 iterate over annotations
void attribute (const std::string &key, const std::string &value)
 assign attribute, i.e. key-value pair in top-level annotation
std::string attribute (const std::string &key) const
 retrieve attribute; return empty string if not present

Private Member Functions

void elasticOffset ()
 determine index of first elastic state

Private Attributes

const MxMeshparent
 reference to parent mesh
std::string id
 identifies the deformation shape
Indices isub
 indices of vector fields which contain subspace
Vector bptime
 time points for deformation values
Matrix bpcoef
 complex coefficients for subspace modes
SplineBasis spl
 spline basis for interpolation
int moffset
 index offset : modal states begin here

Additional Inherited Members

- Protected Attributes inherited from MxAnnotated
XmlElement xnote
 xml annotation

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