29#ifndef COMPLEXHYSTERESIS_H
30#define COMPLEXHYSTERESIS_H
35 [[nodiscard]]
virtual podarray<double> compute_compression_backbone(
double) = 0;
36 [[nodiscard]]
virtual podarray<double> compute_tension_backbone(
double) = 0;
37 [[nodiscard]]
virtual podarray<double> compute_compression_unload(
double) = 0;
38 [[nodiscard]]
virtual podarray<double> compute_tension_unload(
double) = 0;
39 [[nodiscard]]
virtual podarray<double> compute_compression_reload(
double) = 0;
40 [[nodiscard]]
virtual podarray<double> compute_tension_reload(
double) = 0;
41 [[nodiscard]]
virtual podarray<double> compute_compression_subunload(
double) = 0;
42 [[nodiscard]]
virtual podarray<double> compute_tension_subunload(
double) = 0;
44 virtual void update_compression_unload(
double) = 0;
45 virtual void update_tension_unload(
double) = 0;
73 int initialize(
const shared_ptr<DomainBase>&)
override;
A ComplexHysteresis material class.
Definition: ComplexHysteresis.h:34
ComplexHysteresis(unsigned, double, double=0.)
Definition: ComplexHysteresis.cpp:20
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:62
const double elastic_modulus
Definition: ComplexHysteresis.h:64
Status
Definition: ComplexHysteresis.h:48
int clear_status() override
Definition: ComplexHysteresis.cpp:202
Status trial_load_status
Definition: ComplexHysteresis.h:62
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:36