OOFEM  2.3
Public Member Functions | Protected Member Functions | Protected Attributes
oofem::M4Material Class Reference

Implementation of microplane material model according to Bazant's boundary curve approach. More...

#include <m4.h>

+ Inheritance diagram for oofem::M4Material:
+ Collaboration diagram for oofem::M4Material:

List of all members.

Public Member Functions

 M4Material (int n, Domain *d)
 Constructor.
virtual ~M4Material ()
 Destructor.
virtual void giveStiffnessMatrix (FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep)
 Computes the stiffness matrix for giveRealStressVector of receiver in given integration point, respecting its history.
virtual void giveThermalDilatationVector (FloatArray &answer, GaussPoint *gp, TimeStep *tStep)
 Returns a vector of coefficients of thermal dilatation in direction of each material principal (local) axis.
virtual void giveRealMicroplaneStressVector (FloatArray &answer, Microplane *mplane, const FloatArray &strain, TimeStep *tStep)
 Computes real stress vector on given microplane (the meaning of values depends on particular implementation, e.g, can contain volumetric, deviatoric normal stresses and shear stresses on microplane) for given increment of microplane strains.
double macbra (double x)
double FVplus (double ev, double k1, double c13, double c14, double c15, double Ev)
double FVminus (double ev, double k1, double k3, double k4, double E)
double FDminus (double ed, double k1, double c7, double c8, double c9, double E)
double FDplus (double ed, double k1, double c5, double c6, double c7, double c20, double E)
double FN (double en, double sv, double k1, double c1, double c2, double c3, double c4, double E, double Ev)
double FT (double sn, double ev, double k1, double k2, double c10, double c11, double c12, double Et)
virtual void updateVolumetricStressTo (Microplane *mPlane, double sigv)
 Updates the volumetric stress component after computing real stress microplane vectors.
virtual int hasMaterialModeCapability (MaterialMode mode)
 Tests if material supports material mode.
virtual IRResultType initializeFrom (InputRecord *ir)
 Initializes receiver according to object description stored in input record.
virtual const char * giveInputRecordName () const
virtual const char * giveClassName () const

Protected Member Functions

MaterialStatusCreateMicroplaneStatus (GaussPoint *gp)

Protected Attributes

double c1
double c2
double c3
double c4
double c5
double c6
double c7
double c8
double c9
double c10
double c11
double c12
double c13
double c14
double c15
double c16
double c17
double c18
double c19
double c20
double k1
double k2
double k3
double k4
double k5
double E
double nu
double mu
double EV
double ED
double ET
double talpha

Detailed Description

Implementation of microplane material model according to Bazant's boundary curve approach.

Definition at line 83 of file m4.h.


Constructor & Destructor Documentation

oofem::M4Material::M4Material ( int  n,
Domain d 
)

Constructor.

Creates Bazant's Boundary Curve Microplane Material belonging to domain d, with number n.

Parameters:
nMaterial number.
dDomain to which newly created material belongs.

Definition at line 45 of file m4.C.

virtual oofem::M4Material::~M4Material ( ) [inline, virtual]

Destructor.

Definition at line 102 of file m4.h.


Member Function Documentation

MaterialStatus* oofem::M4Material::CreateMicroplaneStatus ( GaussPoint gp) [inline, protected, virtual]

Implements oofem::MicroplaneMaterial.

Definition at line 132 of file m4.h.

References oofem::FEMComponent::domain.

double oofem::M4Material::FDminus ( double  ed,
double  k1,
double  c7,
double  c8,
double  c9,
double  E 
) [inline]

Definition at line 72 of file m4.C.

References c7, and macbra().

Referenced by giveRealMicroplaneStressVector().

double oofem::M4Material::FDplus ( double  ed,
double  k1,
double  c5,
double  c6,
double  c7,
double  c20,
double  E 
) [inline]

Definition at line 82 of file m4.C.

References c7, and macbra().

Referenced by giveRealMicroplaneStressVector().

double oofem::M4Material::FN ( double  en,
double  sv,
double  k1,
double  c1,
double  c2,
double  c3,
double  c4,
double  E,
double  Ev 
) [inline]

Definition at line 92 of file m4.C.

References macbra().

Referenced by giveRealMicroplaneStressVector().

double oofem::M4Material::FT ( double  sn,
double  ev,
double  k1,
double  k2,
double  c10,
double  c11,
double  c12,
double  Et 
) [inline]

Definition at line 100 of file m4.C.

References macbra().

Referenced by giveRealMicroplaneStressVector().

double oofem::M4Material::FVminus ( double  ev,
double  k1,
double  k3,
double  k4,
double  E 
) [inline]

Definition at line 64 of file m4.C.

Referenced by giveRealMicroplaneStressVector().

double oofem::M4Material::FVplus ( double  ev,
double  k1,
double  c13,
double  c14,
double  c15,
double  Ev 
) [inline]

Definition at line 57 of file m4.C.

References macbra().

Referenced by giveRealMicroplaneStressVector().

virtual const char* oofem::M4Material::giveClassName ( ) const [inline, virtual]
Returns:
Class name of the receiver.

Reimplemented from oofem::MicroplaneMaterial_Bazant.

Definition at line 129 of file m4.h.

virtual const char* oofem::M4Material::giveInputRecordName ( ) const [inline, virtual]
Returns:
Input record name of the receiver.

Implements oofem::FEMComponent.

Definition at line 128 of file m4.h.

References _IFT_M4Material_Name.

void oofem::M4Material::giveRealMicroplaneStressVector ( FloatArray answer,
Microplane mplane,
const FloatArray strain,
TimeStep tStep 
) [virtual]

Computes real stress vector on given microplane (the meaning of values depends on particular implementation, e.g, can contain volumetric, deviatoric normal stresses and shear stresses on microplane) for given increment of microplane strains.

Parameters:
answerComputed result.
mplanePointer to microplane object, for which response is computed.
strainStrain vector.
tStepTime step.

Implements oofem::MicroplaneMaterial.

Definition at line 129 of file m4.C.

References oofem::FloatArray::at(), oofem::FloatArray::beDifferenceOf(), c1, c10, c11, c12, c13, c14, c15, c2, c20, c3, c4, c5, c6, c7, c8, c9, E, ED, ET, EV, FDminus(), FDplus(), FN(), FT(), FVminus(), FVplus(), oofem::MicroplaneMaterial::giveMicroplaneStatus(), oofem::StructuralMaterialStatus::giveStrainVector(), oofem::StructuralMaterialStatus::giveStressVector(), oofem::FloatArray::isNotEmpty(), k1, k2, k3, k4, oofem::StructuralMaterialStatus::letTempStrainVectorBe(), oofem::StructuralMaterialStatus::letTempStressVectorBe(), oofem::max(), oofem::min(), oofem::FloatArray::resize(), and oofem::FloatArray::zero().

void oofem::M4Material::giveStiffnessMatrix ( FloatMatrix answer,
MatResponseMode  mode,
GaussPoint gp,
TimeStep tStep 
) [virtual]

Computes the stiffness matrix for giveRealStressVector of receiver in given integration point, respecting its history.

The algorithm should use temporary or equilibrium history variables stored in integration point status to compute and return required result.

Parameters:
answerContains result.
modeMaterial response mode.
gpIntegration point.
tStepTime step (most models are able to respond only when tStep is current time step).

Reimplemented from oofem::StructuralMaterial.

Definition at line 113 of file m4.C.

References oofem::FloatMatrix::at(), E, nu, oofem::FloatMatrix::resize(), and oofem::FloatMatrix::zero().

void oofem::M4Material::giveThermalDilatationVector ( FloatArray answer,
GaussPoint gp,
TimeStep tStep 
) [virtual]

Returns a vector of coefficients of thermal dilatation in direction of each material principal (local) axis.

Parameters:
answerVector of thermal dilatation coefficients.
gpIntegration point.
tStepTime step (most models are able to respond only when tStep is current time step).

Reimplemented from oofem::StructuralMaterial.

Definition at line 308 of file m4.C.

References oofem::FloatArray::at(), oofem::FloatArray::resize(), talpha, and oofem::FloatArray::zero().

Tests if material supports material mode.

Parameters:
modeRequired material mode.
Returns:
Nonzero if supported, zero otherwise.

Reimplemented from oofem::StructuralMaterial.

Definition at line 286 of file m4.C.

Initializes receiver according to object description stored in input record.

This function is called immediately after creating object using constructor. Input record can be imagined as data record in component database belonging to receiver. Receiver may use value-name extracting functions to extract particular field from record.

See also:
IR_GIVE_FIELD
IR_GIVE_OPTIONAL_FIELD
Parameters:
irInput record to initialize from.
Returns:
IRResultType

Reimplemented from oofem::MicroplaneMaterial.

Definition at line 238 of file m4.C.

References _IFT_M4Material_c20, _IFT_M4Material_c3, _IFT_M4Material_c4, _IFT_M4Material_e, _IFT_M4Material_k1, _IFT_M4Material_k2, _IFT_M4Material_k3, _IFT_M4Material_k4, _IFT_M4Material_n, _IFT_M4Material_talpha, c1, c10, c11, c12, c13, c14, c15, c16, c17, c18, c19, c2, c20, c3, c4, c5, c6, c7, c8, c9, E, ED, ET, EV, IR_GIVE_FIELD, IR_GIVE_OPTIONAL_FIELD, oofem::IRRT_OK, k1, k2, k3, k4, mu, nu, and talpha.

double oofem::M4Material::macbra ( double  x) [inline]

Definition at line 51 of file m4.C.

References oofem::max().

Referenced by FDminus(), FDplus(), FN(), FT(), and FVplus().

void oofem::M4Material::updateVolumetricStressTo ( Microplane mPlane,
double  sigv 
) [virtual]

Updates the volumetric stress component after computing real stress microplane vectors.

Implements oofem::MicroplaneMaterial_Bazant.

Definition at line 293 of file m4.C.

References oofem::FloatArray::at(), oofem::Material::giveStatus(), oofem::StructuralMaterialStatus::giveTempStressVector(), and oofem::StructuralMaterialStatus::letTempStressVectorBe().


Member Data Documentation

double oofem::M4Material::c1 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c10 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c11 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c12 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c13 [protected]

Definition at line 88 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c14 [protected]

Definition at line 88 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c15 [protected]

Definition at line 88 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c16 [protected]

Definition at line 88 of file m4.h.

Referenced by initializeFrom().

double oofem::M4Material::c17 [protected]

Definition at line 88 of file m4.h.

Referenced by initializeFrom().

double oofem::M4Material::c18 [protected]

Definition at line 88 of file m4.h.

Referenced by initializeFrom().

double oofem::M4Material::c19 [protected]

Definition at line 88 of file m4.h.

Referenced by initializeFrom().

double oofem::M4Material::c2 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c20 [protected]

Definition at line 88 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c3 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c4 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c5 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c6 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c7 [protected]

Definition at line 87 of file m4.h.

Referenced by FDminus(), FDplus(), giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c8 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::c9 [protected]

Definition at line 87 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::E [protected]

Definition at line 89 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), giveStiffnessMatrix(), and initializeFrom().

double oofem::M4Material::ED [protected]

Definition at line 90 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::ET [protected]

Definition at line 90 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::EV [protected]

Definition at line 90 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::k1 [protected]

Definition at line 89 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::k2 [protected]

Definition at line 89 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::k3 [protected]

Definition at line 89 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::k4 [protected]

Definition at line 89 of file m4.h.

Referenced by giveRealMicroplaneStressVector(), and initializeFrom().

double oofem::M4Material::k5 [protected]

Definition at line 89 of file m4.h.

double oofem::M4Material::mu [protected]

Definition at line 89 of file m4.h.

Referenced by initializeFrom().

double oofem::M4Material::nu [protected]

Definition at line 89 of file m4.h.

Referenced by giveStiffnessMatrix(), and initializeFrom().

double oofem::M4Material::talpha [protected]

Definition at line 91 of file m4.h.

Referenced by giveThermalDilatationVector(), and initializeFrom().


The documentation for this class was generated from the following files:

This page is part of the OOFEM documentation. Copyright (c) 2011 Borek Patzak
Project e-mail: info@oofem.org
Generated at Tue Feb 18 2014 10:53:51 for OOFEM by doxygen 1.7.6.1 written by Dimitri van Heesch, © 1997-2011