This repository has been archived by the owner on Mar 4, 2023. It is now read-only.
/
ConnectorPlasticity.py
197 lines (176 loc) · 9.42 KB
/
ConnectorPlasticity.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
from abaqusConstants import *
from .ConnectorBehaviorOption import ConnectorBehaviorOption
from .ConnectorOptions import ConnectorOptions
from .ConnectorPotentialArray import ConnectorPotentialArray
class ConnectorPlasticity(ConnectorBehaviorOption):
"""The ConnectorPlasticity object defines Plastic behavior for one or more components of a
connector's relative motion.
The ConnectorPlasticity object is derived from the ConnectorBehaviorOption object.
Attributes
----------
isotropicOptions: ConnectorOptions
A :py:class:`~abaqus.Connector.ConnectorOptions.ConnectorOptions` object specifying the :py:class:`~abaqus.Connector.ConnectorOptions.ConnectorOptions` used to define tabular options
for the isotropic hardening table.
kinematicOptions: ConnectorOptions
A :py:class:`~abaqus.Connector.ConnectorOptions.ConnectorOptions` object specifying the :py:class:`~abaqus.Connector.ConnectorOptions.ConnectorOptions` used to define tabular options
for the kinematic hardening table.
Notes
-----
This object can be accessed by:
.. code-block:: python
import section
mdb.models[name].sections[name].behaviorOptions[i]
import odbSection
session.odbs[name].sections[name].behaviorOptions[i]
The table data for this object are:
Table data for *isotropicTable*:
If *isotropicType*=TABULAR, then each sequence of the table data specifies the following:
- Equivalent yield force or moment defining the size of the elastic range.
- Equivalent relative Plastic motion.
- Equivalent relative Plastic motion rate.
- Temperature, if the data depend on temperature.
- Value of the first field variable, if the data depend on field variables.
- Value of the second field variable.
- Etc.
If *isotropicType*=EXPONENTIAL_LAW, then each sequence of the table data specifies the following:
- Equivalent force or moment defining the size of the elastic range at zero Plastic motion.
- Isotropic hardening parameter QinfQinf.
- Isotropic hardening parameter bb.
- Temperature, if the data depend on temperature.
- Value of the first field variable, if the data depend on field variables.
- Value of the second field variable.
- Etc.
Table data for *kinematicTable*:
If *kinematicType*=HALF_CYCLE, then each sequence of the table data specifies the following:
- Yield force or moment.
- Connector relative Plastic motion.
- Temperature, if the data depend on temperature.
- Value of the first field variable, if the data depend on field variables.
- Value of the second field variable.
- Etc.
If *kinematicType*=STABILIZED, then each sequence of the table data specifies the following:
- Yield force or moment.
- Connector relative Plastic motion.
- Connector relative constitutive motion range.
- Temperature, if the data depend on temperature.
- Value of the first field variable, if the data depend on field variables.
- Value of the second field variable.
- Etc.
If *kinematicType*=PARAMETERS, then each sequence of the table data specifies the following:
- Yield force or moment at zero relative Plastic motion.
- Kinematic hardening parameter CC.
- Kinematic hardening parameter γγ. Set γγ=0 to specify linear Ziegler kinematic hardening.
- Temperature, if the data depend on temperature.
- Value of the first field variable, if the data depend on field variables.
- Value of the second field variable.
- Etc.
The corresponding analysis keywords are:
- CONNECTOR PLASTICITY
- CONNECTOR HARDENING
- CONNECTOR POTENTIAL
"""
# A ConnectorOptions object specifying the ConnectorOptions used to define tabular options
# for the isotropic hardening table.
isotropicOptions: ConnectorOptions = ConnectorOptions()
# A ConnectorOptions object specifying the ConnectorOptions used to define tabular options
# for the kinematic hardening table.
kinematicOptions: ConnectorOptions = ConnectorOptions()
def __init__(
self,
coupling: SymbolicConstant = UNCOUPLED,
isotropic: Boolean = ON,
isotropicType: SymbolicConstant = TABULAR,
isotropicTemperature: Boolean = OFF,
isotropicDependencies: int = 0,
kinematic: Boolean = OFF,
kinematicType: SymbolicConstant = HALF_CYCLE,
kinematicTemperature: Boolean = OFF,
kinematicDependencies: int = 0,
forcePotentialOperator: SymbolicConstant = SUM,
forcePotentialExponent: float = 2,
connectorPotentials: ConnectorPotentialArray = None,
isotropicTable: tuple = (),
kinematicTable: tuple = (),
components: tuple = (),
):
"""This method creates a connector plasticity behavior option for a ConnectorSection
object.
Notes
-----
This function can be accessed by:
.. code-block:: python
import connectorBehavior
connectorBehavior.ConnectorPlasticity
import odbConnectorBehavior
odbConnectorBehavior.ConnectorPlasticity
Parameters
----------
coupling
A SymbolicConstant specifying whether or not the behavior is coupled. Possible values
are UNCOUPLED and COUPLED. The default value is UNCOUPLED.
isotropic
A Boolean specifying whether isotropic hardening data will be used. The default value is
ON.If *isotropic*=OFF, then *kinematic* must be specified as ON.
isotropicType
A SymbolicConstant specifying the type of isotropic hardening to be specified. Possible
values are TABULAR and EXPONENTIAL_LAW. The default value is TABULAR.This argument is
applicable only if *isotropic*=ON.
isotropicTemperature
A Boolean specifying whether the isotropic data depend on temperature. The default value
is OFF.This argument is applicable only if *isotropic*=ON.
isotropicDependencies
An Int specifying the number of field variable dependencies for the isotropic data. The
default value is 0.This argument is applicable only if *isotropic*=ON.
kinematic
A Boolean specifying whether kinematic hardening data will be used. The default value is
OFF.If *kinematic*=OFF, then *isotropic* must be specified as ON.
kinematicType
A SymbolicConstant specifying the type of kinematic hardening to be specified. Possible
values are HALF_CYCLE, STABILIZED, and PARAMETERS. The default value is HALF_CYCLE.This
argument is applicable only if *kinematic*=ON.
kinematicTemperature
A Boolean specifying whether the kinematic data depend on temperature. The default value
is OFF.This argument is applicable only if *kinematic*=ON.
kinematicDependencies
An Int specifying the number of field variable dependencies for the kinematic data. The
default value is 0.This argument is applicable only if *kinematic*=ON.
forcePotentialOperator
A SymbolicConstant specifying the contribution operator for the force potential
contributions. Possible values are SUM and MAXIMUM. The default value is SUM.This
argument is applicable only if *coupling*=COUPLED.
forcePotentialExponent
A Float specifying the number equal to the inverse of the overall exponent in the force
potential definition. The default value is 2.0.This argument is applicable only if
*coupling*=COUPLED and if *forcePotentialOperator*=SUM.
connectorPotentials
A ConnectorPotentialArray object specifying one ConnectorPotential object for each force
potential contribution. This member can be specified only if *coupling*=COUPLED.
isotropicTable
A sequence of sequences of Floats specifying isotropic plasticity properties. Items in
the *isotropicTable* data are described below. This argument is applicable only if
*isotropic*=ON. The default value is an empty sequence.
kinematicTable
A sequence of sequences of Floats specifying kinematic plasticity properties. Items in
the *kinematicTable* data are described below. This argument is applicable only if
*kinematic*=ON. The default value is an empty sequence.
components
A sequence of Ints specifying the components of relative motion for which the behavior
is defined. Possible values are 1 ≤≤ *components* ≤≤ 6. Only available components can be
specified. This argument can be specified only if *coupling*=UNCOUPLED. The default
value is an empty sequence.
Returns
-------
A ConnectorPlasticity object.
Raises
------
ValueError and TextError.
"""
super().__init__()
pass
def setValues(self):
"""This method modifies the ConnectorPlasticity object.
Raises
------
ValueError.
"""
pass