#include <drprag2.h>
Public Member Functions | |
void | changeparam (atsel &atm, vector &val) |
void | changeparam (atsel &atm, vector &val) |
drprag2 (void) | |
drprag2 (void) | |
void | getImportantValues (long ipp, long ido, double &K_con, double &G_con, double &rho_tr, double &p_tr, vector &iota, vector &epsilon_etr, matrix &Idev) |
void | getImportantValues (long ipp, long ido, double &K_con, double &G_con, double &rho_tr, double &p_tr) |
void | getImportantValues (long ipp, long ido, double &K_con, double &G_con, double &rho_tr, double &p_tr, vector &iota, vector &epsilon_etr, matrix &Idev) |
void | getImportantValues (long ipp, long ido, double &K_con, double &G_con, double &rho_tr, double &p_tr) |
double | getQvalue (double gamma, long ipp, long ido) |
double | getQvalue (double gamma, long ipp, long ido) |
void | getValueOfHardening (long ipp, long ido, double &H_value, double &Hder_value) |
void | getValueOfHardening (long ipp, long ido, double &H_value, double &Hder_value) |
double | give_consparam (long ipp, long ido) |
double | give_consparam (long ipp, long ido) |
void | giveIdev (strastrestate ssst, matrix &idev) |
void | giveIdev (strastrestate ssst, matrix &idev) |
void | giveIota (strastrestate ssst, vector &iota) |
void | giveIota (strastrestate ssst, vector &iota) |
void | giveirrstrains (long ipp, long ido, vector &epsp) |
void | giveirrstrains (long ipp, long ido, vector &epsp) |
void | matstiff (matrix &d, long ipp, long ido) |
void | matstiff (matrix &d, long ipp, long ido) |
double | newton_one_element_case2 (long ipp, long ido) |
double | newton_one_element_case2 (long ipp, long ido) |
double | newton_one_element_case3 (long ipp, long ido) |
double | newton_one_element_case3 (long ipp, long ido) |
void | nlstresses (long ipp, long im, long ido) |
void | nlstresses (long ipp, long im, long ido) |
void | read (XFILE *in) |
void | read (XFILE *in) |
void | tangentstiff (matrix &d, matrix &td, long ipp, long ido) |
void | tangentstiff (matrix &d, matrix &td, long ipp, long ido) |
void | updateval (long ipp, long im, long ido) |
void | updateval (long ipp, long im, long ido) |
~drprag2 (void) | |
~drprag2 (void) | |
Public Attributes | |
double | alpha |
material constant alpha | |
double | alpha1 |
material constant alpha1 | |
double | beta |
material constant beta | |
double | c |
cohesion | |
double | clim |
limit cohesion | |
double | phi |
friction angle | |
double | psi |
dilatation | |
strretalg | sra |
stress return algorithm | |
double | theta |
angle of linear hardening/softening |
This class defines Drucker-Prager plasticity model
structure of stored data plastic strains, consistency parameter, hardening parametr
28.3.2002
Definition at line 20 of file drprag2.h.
drprag2 | ( | void | ) |
~drprag2 | ( | void | ) |
This destructor is only for the formal purposes.
Definition at line 34 of file drprag2.cpp.
drprag2 | ( | void | ) |
~drprag2 | ( | void | ) |
This function changes required material parameters and updates material constants alpha, alpha1 and beta. It is used for stochastic caluclations.
atm | - structure with description of selected parameters | |
val | - vector of new values for the required material parameters. |
The | function returns value of consistency parameter. |
4.4.2002 by Tomas Koudelka
Definition at line 693 of file drprag2.cpp.
References alpha, alpha1, atsel::atrib, beta, c, clim, atsel::num, phi, psi, and theta.
void getImportantValues | ( | long | ipp, | |
long | ido, | |||
double & | K_con, | |||
double & | G_con, | |||
double & | rho_tr, | |||
double & | p_tr, | |||
vector & | iota, | |||
vector & | epsilon_etr, | |||
matrix & | Idev | |||
) |
void getImportantValues | ( | long | ipp, | |
long | ido, | |||
double & | K_con, | |||
double & | G_con, | |||
double & | rho_tr, | |||
double & | p_tr | |||
) |
void getImportantValues | ( | long | ipp, | |
long | ido, | |||
double & | K_con, | |||
double & | G_con, | |||
double & | rho_tr, | |||
double & | p_tr, | |||
vector & | iota, | |||
vector & | epsilon_etr, | |||
matrix & | Idev | |||
) |
Definition at line 162 of file drprag2.cpp.
References mechmat::give_initial_nu(), mechmat::give_initial_ym(), giveIdev(), giveIota(), giveirrstrains(), mechmat::givestrain(), mechmat::ip, Mm, mxv(), intpoints::ncompstr, scprd(), intpoints::ssst, and subv().
void getImportantValues | ( | long | ipp, | |
long | ido, | |||
double & | K_con, | |||
double & | G_con, | |||
double & | rho_tr, | |||
double & | p_tr | |||
) |
Definition at line 122 of file drprag2.cpp.
References mechmat::give_actual_nu(), mechmat::give_actual_ym(), giveIdev(), giveIota(), giveirrstrains(), mechmat::givestrain(), mechmat::ip, Mm, mxv(), intpoints::ncompstr, scprd(), intpoints::ssst, and subv().
Referenced by getQvalue(), newton_one_element_case2(), newton_one_element_case3(), nlstresses(), and tangentstiff().
double getQvalue | ( | double | gamma, | |
long | ipp, | |||
long | ido | |||
) |
double getQvalue | ( | double | gamma, | |
long | ipp, | |||
long | ido | |||
) |
This function get the value of function q which is define in the paper prepare by Standa Sysala
gamma | - single value, on this value depends the function q | |
ipp | - integration point pointer | |
ido | - index of internal variables for given material in the ipp other array |
22.8.2014 Martin Cermak
Definition at line 212 of file drprag2.cpp.
References alpha, alpha1, beta, c, getImportantValues(), and getValueOfHardening().
Referenced by nlstresses(), and tangentstiff().
void getValueOfHardening | ( | long | ipp, | |
long | ido, | |||
double & | H_value, | |||
double & | Hder_value | |||
) |
void getValueOfHardening | ( | long | ipp, | |
long | ido, | |||
double & | H_value, | |||
double & | Hder_value | |||
) |
This function get the value of function H which describe in the paper prepare by Standa Sysala
ipp | - integration point pointer | |
ido | - index of internal variables for given material in the ipp other array | |
H_value | - return value for hardening | |
Hder_value | - return value for derivation of function H |
22.8.2014 Martin Cermak
Definition at line 251 of file drprag2.cpp.
References alpha1, c, clim, cumulstrain(), giveirrstrains(), mechmat::ip, Mm, intpoints::ncompstr, intpoints::ssst, strain, theta, and vector_tensor().
Referenced by getQvalue(), newton_one_element_case2(), newton_one_element_case3(), and tangentstiff().
double give_consparam | ( | long | ipp, | |
long | ido | |||
) |
double give_consparam | ( | long | ipp, | |
long | ido | |||
) |
This function extracts consistency parametr gamma for the attained equilibrium state from the integration point eqother array.
ipp | - integration point number in the mechmat ip array. | |
ido | - index of internal variables for given material in the ipp other array |
The | function returns value of consistency parameter. |
4.4.2002 by Tomas Koudelka
Definition at line 668 of file drprag2.cpp.
References intpoints::eqother, mechmat::ip, Mm, and intpoints::ncompstr.
Referenced by mechmat::give_consparam().
void giveIdev | ( | strastrestate | ssst, | |
matrix & | idev | |||
) |
void giveIdev | ( | strastrestate | ssst, | |
matrix & | idev | |||
) |
Definition at line 87 of file drprag2.cpp.
References axisymm, bar, fillm(), planestrain, print_err(), and spacestress.
Referenced by getImportantValues().
void giveIota | ( | strastrestate | ssst, | |
vector & | iota | |||
) |
void giveIota | ( | strastrestate | ssst, | |
vector & | iota | |||
) |
Definition at line 65 of file drprag2.cpp.
References axisymm, bar, fillv(), planestrain, print_err(), and spacestress.
Referenced by getImportantValues().
void giveirrstrains | ( | long | ipp, | |
long | ido, | |||
vector & | epsp | |||
) |
void giveirrstrains | ( | long | ipp, | |
long | ido, | |||
vector & | epsp | |||
) |
Function returns irreversible plastic strains.
ipp | - integration point number in the mechmat ip array. | |
ido | - index of the first internal variable for given material in the ipp other array | |
epsp | - vector of irreversible strains |
4.4.2002 by Tomas Koudelka
Definition at line 648 of file drprag2.cpp.
References intpoints::eqother, mechmat::ip, Mm, and vector::n.
Referenced by getImportantValues(), getValueOfHardening(), mechmat::giveirrstrains(), and nlstresses().
void matstiff | ( | matrix & | d, | |
long | ipp, | |||
long | ido | |||
) |
void matstiff | ( | matrix & | d, | |
long | ipp, | |||
long | ido | |||
) |
This function computes material stiffnes matrix.
d | - allocated matrix structure for material stiffness matrix | |
ipp | - integration point number | |
ido | - index of internal variables for given material in the ipp other array |
4.4.2002 by Tomas Koudelka
Definition at line 397 of file drprag2.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 newton_one_element_case2 | ( | long | ipp, | |
long | ido | |||
) |
double newton_one_element_case2 | ( | long | ipp, | |
long | ido | |||
) |
This function compute sufficient value of by the Newton method for one Gauss point for the second case in the function tangentstiffness matrix where we come back to the appex
ipp | - integration point pointer | |
ido | - index of internal variables for given material in the ipp other array |
26.8.2014 Martin Cermak
Definition at line 298 of file drprag2.cpp.
References alpha, alpha1, beta, c, getImportantValues(), and getValueOfHardening().
Referenced by nlstresses(), and tangentstiff().
double newton_one_element_case3 | ( | long | ipp, | |
long | ido | |||
) |
double newton_one_element_case3 | ( | long | ipp, | |
long | ido | |||
) |
This function compute sufficient value of by the Newton method for one Gauss point for the third case in the function tangentstiffness matrix where we come back to the smooth surface
ipp | - integration point pointer | |
ido | - index of internal variables for given material in the ipp other array |
26.8.2014 Martin Cermak
Definition at line 347 of file drprag2.cpp.
References alpha, alpha1, beta, c, getImportantValues(), and getValueOfHardening().
Referenced by nlstresses(), and tangentstiff().
void nlstresses | ( | long | ipp, | |
long | im, | |||
long | ido | |||
) |
void nlstresses | ( | long | ipp, | |
long | im, | |||
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.
ipp | - integration point number in the mechmat ip array. | |
im | - index of material type for given ip | |
ido | - index of internal variables for given material in the ipp other array |
27.8.2014 by Martin Cermak
Definition at line 520 of file drprag2.cpp.
References addmultv(), addv(), alpha1, beta, cmulv(), copyv(), mechmat::elmatstiff(), intpoints::eqother, fillv(), getImportantValues(), getQvalue(), giveirrstrains(), mechmat::givestrain(), mechmat::ip, Mm, mxv(), intpoints::ncompstr, newton_one_element_case2(), newton_one_element_case3(), intpoints::other, mechmat::storestress(), and subv().
Referenced by mechmat::computenlstresses().
void read | ( | XFILE * | in | ) |
void read | ( | XFILE * | in | ) |
This function reads material parameters from the opened text file given by the parameter in. Then it computes material constants alpha, alpha1 and beta
in | - pointer to the opned text file |
25.3.2002 by Tomas Koudelka
Definition at line 50 of file drprag2.cpp.
References alpha, alpha1, beta, c, clim, phi, psi, strretalg::read(), sra, theta, and xfscanf().
Referenced by mechmat::readmattype().
This function computes elastic-plastic material stiffness matrix.
d | - elastic stiffness matrix | |
td | - allocated matrix structure for material tangent stiffness matrix | |
ipp | - integration point number | |
ido | - index of internal variables for given material in the ipp other array |
26.8.2014 by Martin Cermak
Definition at line 427 of file drprag2.cpp.
References addmultv(), alpha, alpha1, beta, cmulm(), cmulv(), copym(), fillv(), getImportantValues(), getQvalue(), getValueOfHardening(), mechmat::ip, Mm, mxv(), intpoints::ncompstr, newton_one_element_case2(), newton_one_element_case3(), subm(), and vxv().
Referenced by matstiff().
void updateval | ( | long | ipp, | |
long | im, | |||
long | ido | |||
) |
void updateval | ( | long | ipp, | |
long | im, | |||
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.
ipp | - integration point number in the mechmat ip array. | |
im | - index of material type for given ip | |
ido | - index of internal variables for given material in the ipp other array |
4.4.2002 by Tomas Koudelka
Definition at line 626 of file drprag2.cpp.
References intpoints::eqother, mechmat::givencompeqother(), mechmat::ip, Mm, and intpoints::other.
Referenced by mechmat::updateipvalmat().
double alpha |
material constant alpha
Definition at line 56 of file drprag2.h.
Referenced by changeparam(), getQvalue(), newton_one_element_case2(), newton_one_element_case3(), read(), and tangentstiff().
double alpha1 |
material constant alpha1
Definition at line 57 of file drprag2.h.
Referenced by changeparam(), getQvalue(), getValueOfHardening(), newton_one_element_case2(), newton_one_element_case3(), nlstresses(), read(), and tangentstiff().
double beta |
material constant beta
Definition at line 58 of file drprag2.h.
Referenced by changeparam(), getQvalue(), newton_one_element_case2(), newton_one_element_case3(), nlstresses(), read(), and tangentstiff().
double c |
cohesion
Definition at line 47 of file drprag2.h.
Referenced by changeparam(), drprag2(), getQvalue(), getValueOfHardening(), newton_one_element_case2(), newton_one_element_case3(), and read().
double clim |
limit cohesion
Definition at line 53 of file drprag2.h.
Referenced by changeparam(), drprag2(), getValueOfHardening(), and read().
double phi |
friction angle
Definition at line 45 of file drprag2.h.
Referenced by changeparam(), drprag2(), and read().
double psi |
dilatation
Definition at line 49 of file drprag2.h.
Referenced by changeparam(), drprag2(), and read().
double theta |
angle of linear hardening/softening
Definition at line 51 of file drprag2.h.
Referenced by changeparam(), drprag2(), getValueOfHardening(), and read().