45#define _IFT_DIIDynamic_Name "diidynamic"
46#define _IFT_DIIDynamic_deltat "deltat"
47#define _IFT_DIIDynamic_ddtScheme "ddtscheme"
48#define _IFT_DIIDynamic_gamma "gamma"
49#define _IFT_DIIDynamic_beta "beta"
50#define _IFT_DIIDynamic_eta "eta"
51#define _IFT_DIIDynamic_delta "delta"
52#define _IFT_DIIDynamic_theta "theta"
83 double a0,
a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10,
a11;
95 std :: unique_ptr< SparseLinearSystemNM >
nMethod;
void restoreContext(DataStream &stream, ContextMode mode) override
void printDofOutputAt(FILE *stream, Dof *iDof, TimeStep *tStep) override
void solveYourselfAt(TimeStep *tStep) override
void timesMtrx(FloatArray &answer, FloatArray &vec, CharType type, Domain *domain, TimeStep *tStep)
DIIDynamic(int i, EngngModel *master=nullptr)
FloatArray previousDisplacementVector
void determineConstants(TimeStep *tStep)
void initializeFrom(InputRecord &ir) override
NumericalMethod * giveNumericalMethod(MetaStep *mStep) override
Returns reference to receiver's numerical method.
TimeDiscretizationType previousTimeDiscretization
TimeDiscretizationType giveInitialTimeDiscretization()
fMode giveFormulation() override
void updateYourself(TimeStep *tStep) override
void assembleDirichletBcRhsVector(FloatArray &answer, Domain *d, TimeStep *tStep)
std ::unique_ptr< SparseLinearSystemNM > nMethod
Numerical method used to solve the problem.
FloatArray previousVelocityVector
LinSystSolverType solverType
double giveUnknownComponent(ValueModeType type, TimeStep *tStep, Domain *d, Dof *dof) override
void assembleLoadVector(FloatArray &_loadVector, Domain *domain, ValueModeType mode, TimeStep *tStep)
TimeDiscretizationType initialTimeDiscretization
void saveContext(DataStream &stream, ContextMode mode) override
FloatArray velocityVector
FloatArray accelerationVector
FloatArray previousAccelerationVector
FloatArray previousIncrementOfDisplacement
FloatArray previousLoadVector
FloatArray displacementVector
void initializeYourself(TimeStep *tStep) override
TimeStep * giveNextStep() override
Returns next time step (next to current step) of receiver.
void solveYourself() override
const char * giveInputRecordName() const
std ::unique_ptr< SparseMtrx > stiffnessMatrix
SparseMtrxType sparseMtrxType
const char * giveClassName() const override
Returns class name of the receiver.
EngngModel * master
Master e-model; if defined receiver is in maintained (slave) mode.
StructuralEngngModel(int i, EngngModel *master=nullptr)
Creates new StructuralEngngModel with number i, associated to domain d.
#define _IFT_DIIDynamic_Name
TimeDiscretizationType
Time discretization used by transient solvers.