31#ifndef NONLINEARPERIC_H
32#define NONLINEARPERIC_H
44 static constexpr unsigned max_iteration = 20u;
45 static const double root_three_two;
46 static const mat unit_dev_tensor;
47 static const double unit_time;
50 const double double_shear = 2. * shear_modulus;
51 const double triple_shear = 3. * shear_modulus;
55 const double* incre_time =
nullptr;
57 [[nodiscard]]
virtual double compute_k(
double)
const = 0;
58 [[nodiscard]]
virtual double compute_dk(
double)
const = 0;
70 int initialize(
const shared_ptr<DomainBase>&)
override;
80 void print()
override;
ParameterType
Definition: ParameterType.h:21
The Material3D class.
Definition: Material3D.h:37
The NonlinearPeric class.
Definition: NonlinearPeric.h:43
int clear_status() override
Definition: NonlinearPeric.cpp:96
int initialize(const shared_ptr< DomainBase > &) override
Definition: NonlinearPeric.cpp:31
NonlinearPeric(unsigned, double, double, double=0., double=0., double=0.)
Definition: NonlinearPeric.cpp:27
int commit_status() override
Definition: NonlinearPeric.cpp:104
void print() override
Definition: NonlinearPeric.cpp:120
int update_trial_status(const vec &) override
Definition: NonlinearPeric.cpp:43
int reset_status() override
Definition: NonlinearPeric.cpp:112
double get_parameter(ParameterType) const override
Definition: NonlinearPeric.cpp:41
Definition: NonlinearPeric.h:36
const double poissons_ratio
Definition: NonlinearPeric.h:38
const double elastic_modulus
Definition: NonlinearPeric.h:37
const double epsilon
Definition: NonlinearPeric.h:40
const double mu
Definition: NonlinearPeric.h:39