29#ifndef COMPLEXHYSTERESIS_H
30#define COMPLEXHYSTERESIS_H
36 [[nodiscard]]
virtual pod2 compute_compression_backbone(
double) = 0;
37 [[nodiscard]]
virtual pod2 compute_tension_backbone(
double) = 0;
38 [[nodiscard]]
virtual pod2 compute_compression_unload(
double) = 0;
39 [[nodiscard]]
virtual pod2 compute_tension_unload(
double) = 0;
40 [[nodiscard]]
virtual pod2 compute_compression_reload(
double) = 0;
41 [[nodiscard]]
virtual pod2 compute_tension_reload(
double) = 0;
42 [[nodiscard]]
virtual pod2 compute_compression_subunload(
double) = 0;
43 [[nodiscard]]
virtual pod2 compute_tension_subunload(
double) = 0;
45 virtual void update_compression_unload(
double) = 0;
46 virtual void update_tension_unload(
double) = 0;
74 int initialize(
const shared_ptr<DomainBase>&)
override;
A ComplexHysteresis material class.
Definition ComplexHysteresis.h:34
int update_trial_status(const vec &) override
Definition ComplexHysteresis.cpp:32
int commit_status() override
Definition ComplexHysteresis.cpp:211
Status current_load_status
Definition ComplexHysteresis.h:63
const double elastic_modulus
Definition ComplexHysteresis.h:65
Status
Definition ComplexHysteresis.h:49
int clear_status() override
Definition ComplexHysteresis.cpp:202
Status trial_load_status
Definition ComplexHysteresis.h:63
int reset_status() override
Definition ComplexHysteresis.cpp:220
int initialize(const shared_ptr< DomainBase > &) override
Definition ComplexHysteresis.cpp:24
A Material1D class.
Definition Material1D.h:34
std::array< double, 2 > pod2
Definition Material.h:34