This repository has been archived by the owner on Mar 4, 2023. It is now read-only.
/
SelfContactStd.py
147 lines (128 loc) · 6.11 KB
/
SelfContactStd.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
from abaqusConstants import *
from .Interaction import Interaction
from ..Region.Region import Region
class SelfContactStd(Interaction):
"""The SelfContactStd object defines self-contact during an Abaqus/Standard analysis.
The SelfContactStd object is derived from the Interaction object.
Attributes
----------
contactTracking: SymbolicConstant
A SymbolicConstant specifying the choice of contact tracking algorithm. The STATE
tracking algorithm uses only normal projections and is specified by using ONE_CONFIG.
The PATH tracking algorithm uses crossing and normal projections and is specified by
using TWO_CONFIG. Possible values are ONE_CONFIG and TWO_CONFIG. The default value is
TWO_CONFIG.This argument is valid only when **enforcement=SURFACE_TO_SURFACE**.
supplementaryContact: SymbolicConstant
A SymbolicConstant specifying the manner in which mid-face constraints are employed.
Possible values are SELECTIVE, NEVER, and ALWAYS. The default value is SELECTIVE.This
argument is valid only when **enforcement=NODE_TO_SURFACE**.
Notes
-----
This object can be accessed by:
.. code-block:: python
import interaction
mdb.models[name].interactions[name]
"""
# A SymbolicConstant specifying the choice of contact tracking algorithm. The STATE
# tracking algorithm uses only normal projections and is specified by using ONE_CONFIG.
# The PATH tracking algorithm uses crossing and normal projections and is specified by
# using TWO_CONFIG. Possible values are ONE_CONFIG and TWO_CONFIG. The default value is
# TWO_CONFIG.This argument is valid only when *enforcement*=SURFACE_TO_SURFACE.
contactTracking: SymbolicConstant = TWO_CONFIG
# A SymbolicConstant specifying the manner in which mid-face constraints are employed.
# Possible values are SELECTIVE, NEVER, and ALWAYS. The default value is SELECTIVE.This
# argument is valid only when *enforcement*=NODE_TO_SURFACE.
supplementaryContact: SymbolicConstant = SELECTIVE
def __init__(
self,
name: str,
createStepName: str,
surface: Region,
interactionProperty: str,
enforcement: SymbolicConstant = SURFACE_TO_SURFACE,
thickness: Boolean = ON,
smooth: float = 0,
contactControls: str = "",
):
"""This method creates a SelfContactStd object.
Notes
-----
This function can be accessed by:
.. code-block:: python
mdb.models[name].SelfContactStd
Parameters
----------
name
A String specifying the repository key.
createStepName
A String specifying the name of the step in which the SelfContactStd object is created.
surface
A Region object specifying the surface where self-contact is defined.
interactionProperty
A String specifying the name of the ContactProperty object associated with this
interaction.
enforcement
A SymbolicConstant specifying the discretization method. Possible values are
NODE_TO_SURFACE and SURFACE_TO_SURFACE. The default value is SURFACE_TO_SURFACE.
thickness
A Boolean specifying whether shell/membrane element thickness is considered. The default
value is ON.This argument in valid only when *enforcement*=SURFACE_TO_SURFACE.
smooth
A Float specifying the degree of smoothing used for deformable or rigid main surfaces
involved when *enforcement*=NODE_TO_SURFACE. The value given must lie between 0.0 and
0.5. The default value is 0.2.
contactControls
A String specifying the name of the ContactControl object associated with this
interaction. An empty string indicates that the default contact controls will be used.
The default value is an empty string.
Returns
-------
A SelfContactStd object.
"""
super().__init__()
pass
def setValues(
self,
enforcement: SymbolicConstant = SURFACE_TO_SURFACE,
thickness: Boolean = ON,
smooth: float = 0,
contactControls: str = "",
):
"""This method modifies the data for an existing SelfContactStd object in the step where it
is created.
Parameters
----------
enforcement
A SymbolicConstant specifying the discretization method. Possible values are
NODE_TO_SURFACE and SURFACE_TO_SURFACE. The default value is SURFACE_TO_SURFACE.
thickness
A Boolean specifying whether shell/membrane element thickness is considered. The default
value is ON.This argument in valid only when *enforcement*=SURFACE_TO_SURFACE.
smooth
A Float specifying the degree of smoothing used for deformable or rigid main surfaces
involved when *enforcement*=NODE_TO_SURFACE. The value given must lie between 0.0 and
0.5. The default value is 0.2.
contactControls
A String specifying the name of the ContactControl object associated with this
interaction. An empty string indicates that the default contact controls will be used.
The default value is an empty string.
"""
pass
def setValuesInStep(
self, stepName: str, interactionProperty: str = "", contactControls: str = ""
):
"""This method modifies the propagating data of an existing SelfContactStd object in the
specified step.
Parameters
----------
stepName
A String specifying the name of the step in which the interaction is modified.
interactionProperty
A String specifying the name of the ContactProperty object associated with this
interaction.
contactControls
A String specifying the name of the ContactControl object associated with this
interaction. An empty string indicates that the default contact controls will be used.
The default value is an empty string.
"""
pass