shefplast Class Reference

#include <shefplast.h>

List of all members.

Public Member Functions

void compute_classvar (matrix &sig, vector &q)
void compute_khat (matrix &sig, vector &q)
void compute_r (matrix &sig)
void compute_rhoc (matrix &sig)
void compzeta ()
void dderyieldfsigma (matrix &ddfds, strastrestate ssst)
void derkhatds (long ipp, matrix &sig, vector &q, matrix &dkhatds, long ido)
void derpotsigma (long ipp, matrix &sig, vector &q, matrix &dgds, long ido)
void derqdsigma (matrix &sig, matrix &drds)
void deryieldfq (matrix &sig, vector &q, vector &dq)
void deryieldfsigma (long ipp, matrix &sig, vector &q, matrix &dfds, long ido)
double give_consparam (long ipp, long ido)
double hardening (long ipp, matrix &sigtens, vector &q, long ido)
void matstiff (matrix &d, long ipp, long ido)
double maxim (double a, double b)
void nlstresses (long ipp, long ido)
void numdiff_dfdsdk (long ipp, matrix &sigtens, vector &q, vector &dfdsdk, long ido)
void numdiff_dfdsdkc (long ipp, matrix &sigtens, vector &q, vector &dfdsdk, long ido)
void numdiff_dfdsds (long ipp, matrix &sigtens, vector &q, matrix &dfdsds, long ido)
void numdiff_dfdsdsc (long ipp, matrix &sigtens, vector &q, matrix &dfdsds, long ido)
void numdiff_dhdk (long ipp, matrix &sigtens, vector &q, double &dhdk, long ido)
void numdiff_dhdkc (long ipp, matrix &sigtens, vector &q, double &dhdk, long ido)
void numdiff_dhds (long ipp, matrix &sigtens, vector &q, vector &dhds, long ido)
void numdiff_dhdsc (long ipp, matrix &sigtens, vector &q, vector &dhds, long ido)
void read (XFILE *in)
 shefplast (void)
void stress_return (long ipp, double &lambda, vector &k, vector &eps, vector &epsp, long ido)
void tangentstiff (matrix &d, matrix &td, long ipp, long ido)
void updateq (long ipp, vector &eps, matrix &sig, vector &q, long ido)
void updateval (long ipp, long ido)
double yieldfunction (matrix &sig, vector &q)
 ~shefplast (void)

Public Attributes

double a
double ah
double alpha
double b0
double b1
double bh
double c0
double c1
double c2
double c3
double c4
double c5
double ch
double d0
double d1
double d2
matrix dev
 stress deviator
double ft
double gamma
double i1s
 the first invariant of the stress tensor
double j2s
 the second invariant of the stress deviator
double j3s
 the third invariant of the stress deviator
double k0
double kh0
 initial value of hardening parameter
double khat
double m
double p
double r
double rc
double rhoc
double rt
strretalg sra
 stress return algorithm
double theta
double xi
double zeta

Detailed Description

This class defines Sheffield plastic material model

14.1.2004 Frederic Dufour, Tomas Koudelka

Definition at line 18 of file shefplast.h.


Constructor & Destructor Documentation

shefplast ( void   ) 

This constructor inializes attributes to zero values.

Definition at line 18 of file shefplast.cpp.

References a, ah, allocm(), alpha, b0, b1, bh, c0, c1, c2, c3, c4, c5, ch, d0, d1, d2, dev, ft, gamma, k0, kh0, khat, m, p, r, rc, rhoc, rt, theta, and xi.

~shefplast ( void   ) 

This destructor is only for the formal purposes.

Definition at line 37 of file shefplast.cpp.


Member Function Documentation

void compute_classvar ( matrix sig,
vector q 
)
void compute_khat ( matrix sig,
vector q 
)

Definition at line 59 of file shefplast.cpp.

References a, k0, khat, p, and xi.

Referenced by compute_classvar().

void compute_r ( matrix sig  ) 

Definition at line 75 of file shefplast.cpp.

References alpha, b0, b1, c0, c1, c2, c3, c4, c5, d0, d1, d2, gamma, j2s, j3s, m, r, rhoc, theta, and xi.

Referenced by compute_classvar().

void compute_rhoc ( matrix sig  ) 

Definition at line 67 of file shefplast.cpp.

References gamma, m, rhoc, and xi.

Referenced by compute_classvar().

void compzeta (  ) 

function computes zeta

14.1.2004

Definition at line 796 of file shefplast.cpp.

References ah, bh, ch, xi, and zeta.

Referenced by hardening().

void dderyieldfsigma ( matrix ddfds,
strastrestate  ssst 
)

function computes the second derivatives of yield function with respect of vector sigma

Parameters:
sig - stress components
ssst - assumed stress/strain state at the given ip

19.12.2002

Definition at line 338 of file shefplast.cpp.

void derkhatds ( long  ipp,
matrix sig,
vector q,
matrix dkhatds,
long  ido 
)

This function computes derivatives of khat parameter with respect of tensor sigma.

Parameters:
sig - stress tensor
q - vector of the hardening parameter
dkhatds - matrix where the resulting derivatives are stored
ido - index of internal variables for given material in the ipp other array

4.1.2002

Definition at line 264 of file shefplast.cpp.

References a, cmulm(), k0, p, r, rc, rhoc, and xi.

Referenced by deryieldfsigma().

void derpotsigma ( long  ipp,
matrix sig,
vector q,
matrix dgds,
long  ido 
)

This function computes derivatives of plastic potential function with respect of vector sigma.

Parameters:
sig - stress tensor
q - vector of the hardening parameter
dgds - matrix where the resulting derivatives are stored
ido - index of internal variables for given material in the ipp other array

Definition at line 351 of file shefplast.cpp.

References deryieldfsigma().

void derqdsigma ( matrix sig,
matrix drds 
)

This function computes derivatives of r parameter q = 1/r i.e. q in this case does not mean hardening parameters vector. with respect of tensor sigma.

Parameters:
sig - stress tensor
drds - matrix where the resulting derivatives are stored

14.1.2004

Definition at line 154 of file shefplast.cpp.

References alpha, b0, b1, c0, c1, c2, c3, c4, c5, cmulm(), d0, d1, d2, dev, gamma, j2s, j3s, khat, m, r, rc, rhoc, theta, and xi.

Referenced by deryieldfsigma().

void deryieldfq ( matrix sig,
vector q,
vector dfq 
)

This function computes derivatives of as-th yield function with respect of vector of hradening parameters.

Parameters:
sig - stress tensor
dfds - matrix where the resulting derivatives are stored

4.1.2002

Definition at line 367 of file shefplast.cpp.

References a, k0, p, r, rhoc, and xi.

Referenced by stress_return(), and tangentstiff().

void deryieldfsigma ( long  ipp,
matrix sig,
vector q,
matrix dfds,
long  ido 
)

This function computes derivatives of as-th yield function with respect of vector sigma.

Parameters:
sig - stress tensor
q - vector of the hardening parameter
dfds - matrix where the resulting derivatives are stored
ido - index of internal variables for given material in the ipp other array

4.1.2002

Definition at line 295 of file shefplast.cpp.

References addm(), cmulm(), compute_classvar(), derkhatds(), derqdsigma(), dev, gamma, khat, m, r, rc, rhoc, subm(), and xi.

Referenced by derpotsigma(), hardening(), numdiff_dfdsdkc(), numdiff_dfdsdsc(), stress_return(), and tangentstiff().

double give_consparam ( long  ipp,
long  ido 
)
double hardening ( long  ipp,
matrix sigtens,
vector q,
long  ido 
)
void matstiff ( matrix d,
long  ipp,
long  ido 
)

This function computes material stiffnes matrix.

Parameters:
d - allocated matrix structure for material stiffness matrix
ipp - integration point number

Definition at line 389 of file shefplast.cpp.

References mechmat::elmatstiff(), initial_stiff, matrix::m, Mm, Mp, matrix::n, probdesc::nlman, nonlinman::stmat, tangent_stiff, and tangentstiff().

Referenced by mechmat::matstiff().

double maxim ( double  a,
double  b 
) [inline]

Definition at line 981 of file shefplast.cpp.

Referenced by stress_return().

void nlstresses ( long  ipp,
long  ido 
)

This function computes stresses at given integration point ipp, depending on the reached strains. The cutting plane algorithm is used. The stress and the other attribute of given integration point is actualized.

Parameters:
ipp - integration point number in the mechmat ip array.
ido - index of internal variables for given material in the ipp other array

Definition at line 524 of file shefplast.cpp.

References intpoints::eqother, gamma, mechmat::ip, kh0, Mm, vector::n, intpoints::ncompstr, intpoints::other, intpoints::strain, and stress_return().

Referenced by mechmat::computenlstresses().

void numdiff_dfdsdk ( long  ipp,
matrix sigtens,
vector q,
vector dfdsdk,
long  ido 
)
void numdiff_dfdsdkc ( long  ipp,
matrix sigtens,
vector q,
vector dfdsdk,
long  ido 
)

function computes numerically the second derivatives of yield function with respect to stress tensor and hardening parameters the first derivatives are expressed explicitly, the second derivatives are computed numerically

14.1.2004

Definition at line 878 of file shefplast.cpp.

References allocm(), allocv(), cmulm(), deryieldfsigma(), destrm(), destrv(), mechmat::ip, Mm, normv(), intpoints::ssst, stress, subm(), and tensor_vector().

Referenced by stress_return(), and tangentstiff().

void numdiff_dfdsds ( long  ipp,
matrix sigtens,
vector q,
matrix dfdsds,
long  ido 
)
void numdiff_dfdsdsc ( long  ipp,
matrix sigtens,
vector q,
matrix dfdsds,
long  ido 
)

function computes numerically the second derivatives of yield function with respect to stress tensor the first derivatives are expressed explicitly, the second derivatives are computed numerically using a centred integration scheme

14.1.2004

Definition at line 834 of file shefplast.cpp.

References cmulm(), copyv(), deryieldfsigma(), mechmat::ip, Mm, intpoints::ncompstr, normv(), intpoints::ssst, stress, subm(), tensor_vector(), and vector_tensor().

Referenced by stress_return(), and tangentstiff().

void numdiff_dhdk ( long  ipp,
matrix sigtens,
vector q,
double &  dhdk,
long  ido 
)
void numdiff_dhdkc ( long  ipp,
matrix sigtens,
vector q,
double &  dhdk,
long  ido 
)

function computes numerically derivatives of hardening function with respect to hardening parameters

14.1.2004

Definition at line 957 of file shefplast.cpp.

References allocv(), destrv(), h(), hardening(), and normv().

Referenced by stress_return(), and tangentstiff().

void numdiff_dhds ( long  ipp,
matrix sigtens,
vector q,
vector dhds,
long  ido 
)
void numdiff_dhdsc ( long  ipp,
matrix sigtens,
vector q,
vector dhds,
long  ido 
)

function computes numerically derivatives of hardening function with respect to stress tensor

14.1.2004

Definition at line 914 of file shefplast.cpp.

References allocm(), allocv(), copyv(), destrm(), destrv(), h(), hardening(), mechmat::ip, Mm, intpoints::ncompstr, normv(), intpoints::ssst, stress, tensor_vector(), and vector_tensor().

Referenced by stress_return(), and tangentstiff().

void read ( XFILE in  ) 

This function reads material parameters from the opened text file given by the parameter in.

Parameters:
in - pointer to the opned text file

Definition at line 49 of file shefplast.cpp.

References ah, bh, ch, ft, gamma, m, p, rc, strretalg::read(), rt, sra, and xfscanf().

Referenced by mechmat::readmattype().

void stress_return ( long  ipp,
double &  lambda,
vector k,
vector eps,
vector epsp,
long  ido 
)
void tangentstiff ( matrix d,
matrix td,
long  ipp,
long  ido 
)

This function returns the tangent stiffness matrix.

Parameters:
d - allocated matrix structure for material stiffness matrix

Definition at line 410 of file shefplast.cpp.

References a, addm(), allocm(), allocv(), cmulm(), cmulv(), copym(), deryieldfq(), deryieldfsigma(), destrm(), destrv(), intpoints::eqother, gamma, mechmat::givestress(), hardening(), invm(), mechmat::ip, matrix::m, Mm, Mp, mxm(), matrix::n, intpoints::ncompstr, numdiff_dfdsdkc(), numdiff_dfdsdsc(), numdiff_dhdkc(), numdiff_dhdsc(), scprd(), intpoints::ssst, stress, subm(), tensor_vector(), vector_tensor(), vxm(), vxv(), and probdesc::zero.

Referenced by matstiff().

void updateq ( long  ipp,
vector eps,
matrix sig,
vector q,
long  ido 
)
void updateval ( long  ipp,
long  ido 
)

This function updates values in the other array reached in the previous equlibrium state to values reached in the new actual equilibrium state.

Parameters:
ipp - integration point number in the mechmat ip array.
ido - index of internal variables for given material in the ipp other array

Definition at line 561 of file shefplast.cpp.

References intpoints::eqother, mechmat::ip, Mm, vector::n, intpoints::ncompstr, and intpoints::other.

Referenced by mechmat::updateipvalmat().

double yieldfunction ( matrix sig,
vector q 
)

This function computes the value of yield functions.

Parameters:
sig - stress tensor
q - vector of hardening parameter
Return values:
The function returns value of yield function for the given stress tensor

14.1.2004

Definition at line 132 of file shefplast.cpp.

References compute_classvar(), f, j2s, khat, r, rc, and rhoc.

Referenced by stress_return().


Member Data Documentation

double a

Definition at line 69 of file shefplast.h.

Referenced by compute_khat(), derkhatds(), deryieldfq(), shefplast(), stress_return(), and tangentstiff().

double ah

Definition at line 75 of file shefplast.h.

Referenced by compzeta(), read(), and shefplast().

double alpha

Definition at line 73 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double b0

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double b1

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double bh

Definition at line 75 of file shefplast.h.

Referenced by compzeta(), read(), and shefplast().

double c0

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double c1

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double c2

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double c3

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double c4

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double c5

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double ch

Definition at line 75 of file shefplast.h.

Referenced by compzeta(), read(), and shefplast().

double d0

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double d1

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double d2

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

stress deviator

Definition at line 82 of file shefplast.h.

Referenced by compute_classvar(), derqdsigma(), deryieldfsigma(), and shefplast().

double ft

Definition at line 89 of file shefplast.h.

Referenced by read(), and shefplast().

double gamma
double i1s

the first invariant of the stress tensor

Definition at line 84 of file shefplast.h.

Referenced by compute_classvar().

double j2s

the second invariant of the stress deviator

Definition at line 86 of file shefplast.h.

Referenced by compute_classvar(), compute_r(), derqdsigma(), and yieldfunction().

double j3s

the third invariant of the stress deviator

Definition at line 88 of file shefplast.h.

Referenced by compute_classvar(), compute_r(), and derqdsigma().

double k0

Definition at line 71 of file shefplast.h.

Referenced by compute_khat(), derkhatds(), deryieldfq(), and shefplast().

double kh0

initial value of hardening parameter

Definition at line 77 of file shefplast.h.

Referenced by nlstresses(), and shefplast().

double khat

Definition at line 89 of file shefplast.h.

Referenced by compute_khat(), derqdsigma(), deryieldfsigma(), shefplast(), and yieldfunction().

double m

Definition at line 89 of file shefplast.h.

Referenced by compute_r(), compute_rhoc(), derqdsigma(), deryieldfsigma(), read(), and shefplast().

double p

Definition at line 67 of file shefplast.h.

Referenced by compute_khat(), derkhatds(), deryieldfq(), read(), and shefplast().

double r
double rc
double rhoc
double rt

Definition at line 63 of file shefplast.h.

Referenced by read(), and shefplast().

stress return algorithm

Definition at line 96 of file shefplast.h.

Referenced by read(), and stress_return().

double theta

Definition at line 90 of file shefplast.h.

Referenced by compute_r(), derqdsigma(), and shefplast().

double xi
double zeta

Definition at line 93 of file shefplast.h.

Referenced by compzeta(), and hardening().


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

Generated by  doxygen 1.6.2