IFEM 90A354
GenAlphaSIM.h
Go to the documentation of this file.
1// $Id$
2//==============================================================================
12//==============================================================================
13
14#ifndef _GEN_ALPHA_SIM_H
15#define _GEN_ALPHA_SIM_H
16
17#include "NewmarkSIM.h"
18
19
24class GenAlphaSIM : public NewmarkSIM
25{
26public:
28 explicit GenAlphaSIM(SIMbase& s);
30 virtual ~GenAlphaSIM() {}
31
34 virtual bool parse(const tinyxml2::XMLElement* elem);
35
37 virtual void initPrm();
39 virtual void initSol(size_t nSol, size_t nDof = 0);
40
44 virtual bool advanceStep(TimeStep& param, bool updateTime = true);
45
47 virtual void setSolution(const RealArray& newSol, int idx);
48
49protected:
51 virtual bool predictStep(TimeStep& param);
53 virtual bool correctStep(TimeStep& param, bool converged);
54
55private:
56 double alpha_m;
57 double alpha_f;
60};
61
62#endif
std::vector< Real > RealArray
A real-valued array without algebraic operations.
Definition ImmersedBoundaries.h:32
std::vector< Vector > Vectors
An array of real-valued vectors with algebraic operations.
Definition MatVec.h:37
Newmark solution driver for isogeometric dynamic FEM simulators.
Generalized-alpha driver for dynamic isogeometric FEM simulators.
Definition GenAlphaSIM.h:25
virtual bool parse(const tinyxml2::XMLElement *elem)
Parses a data section from an XML document.
Definition GenAlphaSIM.C:30
virtual bool advanceStep(TimeStep &param, bool updateTime=true)
Advances the time step one step forward.
Definition GenAlphaSIM.C:84
Vectors tempSol
Intermediate solution.
Definition GenAlphaSIM.h:59
virtual bool correctStep(TimeStep &param, bool converged)
Updates configuration variables (solution vector) in an iteration.
Definition GenAlphaSIM.C:112
virtual void initPrm()
Initializes time integration parameters for the integrand.
Definition GenAlphaSIM.C:59
virtual bool predictStep(TimeStep &param)
Calculates predicted velocities and accelerations.
Definition GenAlphaSIM.C:94
virtual ~GenAlphaSIM()
Empty destructor.
Definition GenAlphaSIM.h:30
double alpha_m
Generalized-alpha parameter.
Definition GenAlphaSIM.h:56
virtual void initSol(size_t nSol, size_t nDof=0)
Initializes primary solution vectors.
Definition GenAlphaSIM.C:70
virtual void setSolution(const RealArray &newSol, int idx)
Modifies the current solution vector (used by sub-iterations only).
Definition GenAlphaSIM.C:161
double alpha_f
Generalized-alpha parameter.
Definition GenAlphaSIM.h:57
Vectors prevSol
Solution of last converged time step.
Definition GenAlphaSIM.h:58
Newmark-based solution driver for dynamic isogeometric FEM simulators.
Definition NewmarkSIM.h:25
virtual bool parse(const tinyxml2::XMLElement *elem)
Parses a data section from an XML document.
Definition NewmarkSIM.C:68
Base class for NURBS-based FEM simulators.
Definition SIMbase.h:72
Class for encapsulation of general time stepping parameters.
Definition TimeStep.h:31