Analysis specific material model classes

The direct derived classes of the Material class are supposed to declare the analysis specific part of the material model interface, which is required (and assumed) by the corresponding element class (StructuralElement) and cross section class (StructuralCrossSection).

To store all necessary history variables of the material model, so called status concept is adopted. The material status can be thought as container of all necessary history variables. Usually two kinds of these variables are stored. The temporary ones refer to the actual state of an integration point, but do not necessary correspond to the global equilibrium. These are changing during global equilibrium search iteration. The non-temporary variables are related to the previously converged state. For each material model, the corresponding status has to be defined, and the unique instance for each integration point has to be created and associated with it. The integration point provides the services for accessing corresponding status. All material statuses, related to particular material models, have to be derived from the base MaterialStatus class. This class declares the basic status interface. The two most important services are: initTempStatus intended to initialize the temporary internal variables according to variables related to previously reached equilibrium state and updateYourself designed to update the equilibrium-like history variables according to temporary variables, when the new global equilibrium has been reached. The derived classes should also define methods for accessing the corresponding history variables.

Borek Patzak 2018-01-02