XC Open source finite element analysis program
Main Page
Modules
Namespaces
Classes
Files
File List
xc
src
material
nD
Template3Dep
EL_LEij.h
1
//----------------------------------------------------------------------------
2
// XC program; finite element analysis code
3
// for structural analysis and design.
4
//
5
// Copyright (C) Luis Claudio Pérez Tato
6
//
7
// This program derives from OpenSees <http://opensees.berkeley.edu>
8
// developed by the «Pacific earthquake engineering research center».
9
//
10
// Except for the restrictions that may arise from the copyright
11
// of the original program (see copyright_opensees.txt)
12
// XC is free software: you can redistribute it and/or modify
13
// it under the terms of the GNU General Public License as published by
14
// the Free Software Foundation, either version 3 of the License, or
15
// (at your option) any later version.
16
//
17
// This software is distributed in the hope that it will be useful, but
18
// WITHOUT ANY WARRANTY; without even the implied warranty of
19
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
// GNU General Public License for more details.
21
//
22
//
23
// You should have received a copy of the GNU General Public License
24
// along with this program.
25
// If not, see <http://www.gnu.org/licenses/>.
26
//----------------------------------------------------------------------------
27
28
//================================================================================
29
// COPYRIGHT (C): :-)) |
30
// PROJECT: Object Oriented Finite Element Program |
31
// PURPOSE: General platform for elaso-plastic constitutive model |
32
// implementation |
33
// |
34
// CLASS: EvolutionLaw_L_Eij (linear tensorial Evolution law) |
35
// |
36
// |
37
// VERSION: |
38
// LANGUAGE: C++.ver >= 2.0 ( Borland C++ ver=3.00, SUN C++ ver=2.1 ) |
39
// TARGET OS: DOS || UNIX || . . . |
40
// DESIGNER(S): Boris Jeremic, Zhaohui Yang |
41
// PROGRAMMER(S): Boris Jeremic, Zhaohui Yang |
42
// |
43
// |
44
// DATE: 09-13-2000 |
45
// UPDATE HISTORY: |
46
// |
47
// |
48
// |
49
// |
50
// SHORT EXPLANATION: This is a linear evolution law for the evoltion of a |
51
// tensorial variable alpha which depends on plastic strain |
52
// i.e. dalpha = a * de_ij |
53
// |
54
//================================================================================
55
56
#ifndef EL_LEij_H
57
#define EL_LEij_H
58
59
#include <cmath>
60
#include "material/nD/Template3Dep/EL_T.h"
61
62
namespace
XC
{
64
//
66
class
EvolutionLaw_L_Eij
:
public
EvolutionLaw_T
67
{
68
// Private vars to define the evolution law
69
private
:
70
double
a;
//coefficient to define the linear hardening rule of a scalar hardening var
71
72
public
:
73
//EvolutionLaw_L_Eij( ); // default constructor---no parameters
74
75
EvolutionLaw_L_Eij
(
double
ad = 10.0);
76
77
EvolutionLaw_L_Eij
(
const
EvolutionLaw_L_Eij
&LEL );
// Copy constructor
78
79
EvolutionLaw_T
*newObj();
//create a colne of itself
80
81
//void InitVars(EPState *EPS); // Initialize all hardening vars called only once
82
// // after material point is formed if necessary.
83
84
//void setInitD(EPState *EPS); // set initial D once current stress hits the y.s.
85
// // was primarily for Manzari-Dafalias model
86
87
//double h( EPState *EPS, double norm_dQods); // Evaluating hardening function h
88
BJtensor
h_t(
EPState
*EPS,
PotentialSurface
*PS);
// Evaluating hardening function h
89
90
//void UpdateVar( EPState *EPS, double dlamda ); // Evolve corresponding var linearly using de_eq_p
91
//Moved to CDriver.cpp
92
93
void
print();
94
95
private
:
96
// some accessor functions
97
double
geta()
const
;
// Linear coefficient used to evolve internal var
98
void
seta(
double
ad);
99
100
//================================================================================
101
// Overloaded Insertion Operator Zhaohui Added Aug. 13, 2000
102
// prints Linear EvolutionLaw's contents
103
//================================================================================
104
friend
std::ostream& operator<< (std::ostream& os,
const
EvolutionLaw_L_Eij
& LEL);
105
106
107
};
108
}
// end of XC namespace
109
110
111
#endif
112
113
114
115
XC::BJtensor
Definition:
BJtensor.h:110
XC::EvolutionLaw_T
??.
Definition:
EL_T.h:69
XC::EvolutionLaw_L_Eij
??.
Definition:
EL_LEij.h:66
XC::EPState
3
Definition:
EPState.h:73
XC::PotentialSurface
The goal is to create a platform for efficient and easy implemetation of any elasto-plastic constitut...
Definition:
PS.h:71
XC
================================================================================
Definition:
ContinuaReprComponent.h:34
Generated by
1.8.11