libgenua
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
MxMesh

#include <mxmeshdeform.h>

Inheritance diagram for MxMeshDeform:
[legend]
Collaboration diagram for MxMeshDeform:
[legend]

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: