All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
MBSimAnalyser::Eigenanalyser Class Reference

Eigenanalyser for dynamic systems. More...

#include <eigenanalyser.h>

Inheritance diagram for MBSimAnalyser::Eigenanalyser:
MBSim::Solver fmatvec::Atom

Classes

class  Residuum
 

Public Types

enum  Task { eigenfrequencies, eigenmodes, eigenmode, eigenmotion }
 
- Public Types inherited from fmatvec::Atom
enum  MsgType
 

Public Member Functions

 Eigenanalyser ()
 Standard constructor.
 
 ~Eigenanalyser ()
 Destructor.
 
void execute (MBSim::DynamicSystemSolver &system)
 start solving the dynamic system More...
 
void analyse (MBSim::DynamicSystemSolver &system)
 Perform the eigenanalysis. More...
 
void setInitialDeviation (const fmatvec::Vec &deltaz0_)
 Set the initial deviation of the equilibrium. More...
 
void setAmplitude (double A_)
 Set the amplitude for the eigemode analysis. More...
 
void setMode (int n_)
 Set the mode for the eigemode analysis. More...
 
void setStartTime (double tStart_)
 Set the start time for the analysis. More...
 
void setEndTime (double tEnd_)
 Set the end time for the analysis. More...
 
void setPlotStepSize (double dtPlot_)
 Set the plot step size for the analysis. More...
 
void setInitialState (const fmatvec::Vec &z0)
 Set the initital state for the analysis. More...
 
void setDetermineEquilibriumState (bool eq)
 Determine the equilibrium state for the analysis. More...
 
void setTask (Task task_)
 
const fmatvec::VecgetInitialState () const
 
const fmatvec::Vector
< fmatvec::Ref, std::complex
< double > > & 
getEigenvalues () const
 Get the eigenvalues. More...
 
const fmatvec::SquareMatrix
< fmatvec::Ref, std::complex
< double > > & 
getEigenvectors () const
 Get the eigenvectors. More...
 
const fmatvec::VecgetEigenfrequencies () const
 Get the eigenfrequencies. More...
 
void setOutputFileName (const std::string &fileName_)
 Set the name of the output file. More...
 
void initializeUsingXML (xercesc::DOMElement *element)
 
- Public Member Functions inherited from MBSim::Solver
 Solver ()
 constructor
 
virtual ~Solver ()
 destructor
 
- Public Member Functions inherited from fmatvec::Atom
Atomoperator= (const Atom &)
 
void setMessageStreamActive (MsgType type, bool active)
 
void getMessageStream (MsgType type, std::shared_ptr< bool > &a, std::shared_ptr< std::ostream > &s)
 
void adoptMessageStreams (const Atom *src=NULL)
 
std::ostream & msg (MsgType type)
 
bool msgAct (MsgType type)
 

Protected Member Functions

bool saveEigenanalyis (const std::string &fileName)
 
void computeEigenfrequencies ()
 
void computeEigenvalues ()
 
void computeEigenmodes ()
 
void computeEigenmode ()
 
void computeEigenmotion ()
 
- Protected Member Functions inherited from fmatvec::Atom
 Atom (const Atom &src)
 

Protected Attributes

fmatvec::Vec zEq
 
fmatvec::Vec deltaz0
 
double tStart
 
double tEnd
 
double dtPlot
 
double A
 
int n
 
bool compEq
 
Task task
 
fmatvec::SquareMatrix
< fmatvec::Ref, std::complex
< double > > 
V
 
fmatvec::Vector< fmatvec::Ref,
std::complex< double > > 
w
 
fmatvec::Vec freq
 
std::vector< std::pair< double,
int > > 
f
 
std::string fileName
 

Additional Inherited Members

- Static Public Member Functions inherited from fmatvec::Atom
static void setCurrentMessageStream (MsgType type, const std::shared_ptr< bool > &a=std::make_shared< bool >(true), const std::shared_ptr< std::ostream > &s=std::make_shared< std::ostream >(std::cout.rdbuf()))
 
static std::ostream & msgStatic (MsgType type)
 
static bool msgActStatic (MsgType type)
 
- Static Protected Attributes inherited from MBSim::Solver
static DynamicSystemSolversystem = 0
 dynamic system
 

Detailed Description

Eigenanalyser for dynamic systems.

Author
Martin Foerg

Member Function Documentation

void MBSimAnalyser::Eigenanalyser::analyse ( MBSim::DynamicSystemSolver system)

Perform the eigenanalysis.

Parameters
systemThe dynamic system to be analysed
void MBSimAnalyser::Eigenanalyser::execute ( MBSim::DynamicSystemSolver system)
inlinevirtual

start solving the dynamic system

Parameters
dynamicsystem to be solved

Implements MBSim::Solver.

const fmatvec::Vec& MBSimAnalyser::Eigenanalyser::getEigenfrequencies ( ) const
inline

Get the eigenfrequencies.

Returns
A vector containing the eigenfrequencies of the system
const fmatvec::Vector<fmatvec::Ref, std::complex<double> >& MBSimAnalyser::Eigenanalyser::getEigenvalues ( ) const
inline

Get the eigenvalues.

Returns
A vector containing the eigenvalues of the system
const fmatvec::SquareMatrix<fmatvec::Ref, std::complex<double> >& MBSimAnalyser::Eigenanalyser::getEigenvectors ( ) const
inline

Get the eigenvectors.

Returns
A matrix containing the eigenvectors of the system
void MBSimAnalyser::Eigenanalyser::setAmplitude ( double  A_)
inline

Set the amplitude for the eigemode analysis.

Parameters
A_The amplitude
void MBSimAnalyser::Eigenanalyser::setDetermineEquilibriumState ( bool  eq)
inline

Determine the equilibrium state for the analysis.

Parameters
eqTrue, if the equilibrium state should be determined
void MBSimAnalyser::Eigenanalyser::setEndTime ( double  tEnd_)
inline

Set the end time for the analysis.

Parameters
tEnd_The end time
void MBSimAnalyser::Eigenanalyser::setInitialDeviation ( const fmatvec::Vec deltaz0_)
inline

Set the initial deviation of the equilibrium.

Parameters
deltaz_The deviation
void MBSimAnalyser::Eigenanalyser::setInitialState ( const fmatvec::Vec z0)
inline

Set the initital state for the analysis.

Parameters
z0The initital state
void MBSimAnalyser::Eigenanalyser::setMode ( int  n_)
inline

Set the mode for the eigemode analysis.

Parameters
n_The mode number
void MBSimAnalyser::Eigenanalyser::setOutputFileName ( const std::string &  fileName_)
inline

Set the name of the output file.

Parameters
fileName_The output file name
void MBSimAnalyser::Eigenanalyser::setPlotStepSize ( double  dtPlot_)
inline

Set the plot step size for the analysis.

Parameters
dtPlot_The plot step size
void MBSimAnalyser::Eigenanalyser::setStartTime ( double  tStart_)
inline

Set the start time for the analysis.

Parameters
tStart_The start time

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

Impressum / Disclaimer / Datenschutz Generated by doxygen 1.8.5 Valid HTML