@@ -25,7 +25,7 @@ RebarBondSlipConstraint::validParams()
25
25
{
26
26
InputParameters params = EqualValueEmbeddedConstraint ::validParams ();
27
27
params .addClassDescription (
28
- "This is a constraint enforcing the bodslip behavior between concrete and rebar" );
28
+ "This is a constraint enforcing the bod-slip behavior between concrete and rebar" );
29
29
params .addRequiredParam < unsigned int > ("component" ,
30
30
"An integer corresponding to the direction "
31
31
"the variable this kernel acts in. (0 for x, "
@@ -100,12 +100,11 @@ bool
100
100
RebarBondSlipConstraint ::shouldApply ()
101
101
{
102
102
if (_debug )
103
- if (_current_node -> id () == 144 )
104
- {
105
- std ::cout << "===========================================\n" ;
106
- std ::cout << "node id: " << _current_node -> id () << std ::endl ;
107
- std ::cout << "at coord: " << (Point )* _current_node << std ::endl ;
108
- }
103
+ {
104
+ std ::cout << "===========================================\n" ;
105
+ std ::cout << "node id: " << _current_node -> id () << std ::endl ;
106
+ std ::cout << "at coord: " << (Point )* _current_node << std ::endl ;
107
+ }
109
108
auto it = _secondary_to_primary_map .find (_current_node -> id ());
110
109
111
110
if (it != _secondary_to_primary_map .end ())
@@ -157,8 +156,7 @@ RebarBondSlipConstraint::computeTangent()
157
156
_current_elem_volume /= elems .size ();
158
157
159
158
if (_debug )
160
- if (_current_node -> id () == 144 )
161
- std ::cout << "tangent: " << _secondary_tangent << std ::endl ;
159
+ std ::cout << "tangent: " << _secondary_tangent << std ::endl ;
162
160
}
163
161
164
162
void
@@ -176,10 +174,9 @@ RebarBondSlipConstraint::reinitConstraint()
176
174
RealVectorValue slip_axial = slip * _secondary_tangent ;
177
175
RealVectorValue slip_normal = relative_disp - slip_axial ;
178
176
Real slip_ratio = std ::abs (slip ) / _transitional_slip [0 ];
179
- // Real bond_stress;
177
+
180
178
if (_debug )
181
- if (_current_node -> id () == 144 )
182
- std ::cout << "Slip = " << slip << ".\n" ;
179
+ std ::cout << "Slip = " << slip << ".\n" ;
183
180
184
181
const Node * node = _current_node ;
185
182
auto it = _bondslip .find (node -> id ());
@@ -190,17 +187,16 @@ RebarBondSlipConstraint::reinitConstraint()
190
187
bond_slip .slip_max = std ::max (bond_slip .slip_max_old , slip );
191
188
192
189
if (_debug )
193
- if (_current_node -> id () == 144 )
194
- {
195
- std ::cout << "Slip_min = " << bond_slip .slip_min << ".\n" ;
196
- std ::cout << "Slip_min_old = " << bond_slip .slip_min_old << ".\n" ;
197
- std ::cout << "Slip_max = " << bond_slip .slip_max << ".\n" ;
198
- std ::cout << "Slip_max_old = " << bond_slip .slip_max_old << ".\n" ;
199
- std ::cout << "Bondstress_min = " << bond_slip .bondstress_min << ".\n" ;
200
- std ::cout << "Bondstress_min_old = " << bond_slip .bondstress_min_old << ".\n" ;
201
- std ::cout << "Bondstress_max = " << bond_slip .bondstress_max << ".\n" ;
202
- std ::cout << "Bondstress_max_old = " << bond_slip .bondstress_max_old << ".\n" ;
203
- }
190
+ {
191
+ std ::cout << "Slip_min = " << bond_slip .slip_min << ".\n" ;
192
+ std ::cout << "Slip_min_old = " << bond_slip .slip_min_old << ".\n" ;
193
+ std ::cout << "Slip_max = " << bond_slip .slip_max << ".\n" ;
194
+ std ::cout << "Slip_max_old = " << bond_slip .slip_max_old << ".\n" ;
195
+ std ::cout << "Bondstress_min = " << bond_slip .bondstress_min << ".\n" ;
196
+ std ::cout << "Bondstress_min_old = " << bond_slip .bondstress_min_old << ".\n" ;
197
+ std ::cout << "Bondstress_max = " << bond_slip .bondstress_max << ".\n" ;
198
+ std ::cout << "Bondstress_max_old = " << bond_slip .bondstress_max_old << ".\n" ;
199
+ }
204
200
205
201
Real slope = 5.0 * _max_bondstress / _transitional_slip [0 ];
206
202
Real plastic_slip_max = bond_slip .slip_max - bond_slip .bondstress_max / slope ;
@@ -213,9 +209,8 @@ RebarBondSlipConstraint::reinitConstraint()
213
209
if (std ::abs (slip ) < _transitional_slip [0 ])
214
210
{
215
211
if (_debug )
216
- if (_current_node -> id () == 144 )
217
- std ::cout << "Calculating bondstress for Case Ia"
218
- << ".\n" ;
212
+ std ::cout << "Calculating bondstress for Case Ia"
213
+ << ".\n" ;
219
214
_bond_stress = _max_bondstress * MathUtils ::sign (slip ) *
220
215
(5.0 * slip_ratio - 4.5 * slip_ratio * slip_ratio +
221
216
1.4 * slip_ratio * slip_ratio * slip_ratio );
@@ -227,34 +222,30 @@ RebarBondSlipConstraint::reinitConstraint()
227
222
else if (slip >= _transitional_slip [0 ] && slip < _ultimate_slip )
228
223
{
229
224
if (_debug )
230
- if (_current_node -> id () == 144 )
231
- std ::cout << "Calculating bondstress for Case Ib"
232
- << ".\n" ;
225
+ std ::cout << "Calculating bondstress for Case Ib"
226
+ << ".\n" ;
233
227
_bond_stress = 1.9 * _max_bondstress ;
234
228
}
235
229
else if (slip <= - _transitional_slip [0 ] && slip > - _ultimate_slip )
236
230
{
237
231
if (_debug )
238
- if (_current_node -> id () == 144 )
239
- std ::cout << "Calculating bondstress for Case Ic"
240
- << ".\n" ;
232
+ std ::cout << "Calculating bondstress for Case Ic"
233
+ << ".\n" ;
241
234
_bond_stress = -1.9 * _max_bondstress ;
242
235
}
243
236
else
244
237
{
245
238
if (_debug )
246
- if (_current_node -> id () == 144 )
247
- std ::cout << "Calculating bondstress for Case Id"
248
- << ".\n" ;
239
+ std ::cout << "Calculating bondstress for Case Id"
240
+ << ".\n" ;
249
241
_bond_stress = _frictional_bondstress * MathUtils ::sign (slip );
250
242
}
251
243
}
252
244
else if (slip > plastic_slip_max && slip < bond_slip .slip_max )
253
245
{
254
246
if (_debug )
255
- if (_current_node -> id () == 144 )
256
- std ::cout << "Calculating bondstress for Case II"
257
- << ".\n" ;
247
+ std ::cout << "Calculating bondstress for Case II"
248
+ << ".\n" ;
258
249
259
250
_bond_stress = (slip - plastic_slip_max ) * bond_slip .bondstress_max /
260
251
(bond_slip .slip_max - plastic_slip_max );
@@ -264,9 +255,8 @@ RebarBondSlipConstraint::reinitConstraint()
264
255
else if (slip < plastic_slip_min && slip > bond_slip .slip_min )
265
256
{
266
257
if (_debug )
267
- if (_current_node -> id () == 144 )
268
- std ::cout << "Calculating bondstress for Case III"
269
- << ".\n" ;
258
+ std ::cout << "Calculating bondstress for Case III"
259
+ << ".\n" ;
270
260
271
261
_bond_stress = (slip - plastic_slip_min ) * bond_slip .bondstress_min /
272
262
(bond_slip .slip_min - plastic_slip_min );
@@ -276,11 +266,10 @@ RebarBondSlipConstraint::reinitConstraint()
276
266
_bond_stress = _frictional_bondstress ;
277
267
278
268
if (_debug )
279
- if (_current_node -> id () == 144 )
280
- {
281
- std ::cout << "Bondstress = " << _bond_stress << "\n" ;
282
- std ::cout << "Bondstress Derivative = " << _bond_stress_deriv << "\n" ;
283
- }
269
+ {
270
+ std ::cout << "Bondstress = " << _bond_stress << "\n" ;
271
+ std ::cout << "Bondstress Derivative = " << _bond_stress_deriv << "\n" ;
272
+ }
284
273
285
274
Real bond_force = 2.0 * libMesh ::pi * _bar_radius * _current_elem_volume * _bond_stress ;
286
275
Real bond_force_deriv =
@@ -293,12 +282,11 @@ RebarBondSlipConstraint::reinitConstraint()
293
282
_constraint_jacobian_axial = bond_force_deriv * _secondary_tangent ;
294
283
295
284
if (_debug )
296
- if (_current_node -> id () == 144 )
297
- {
298
- std ::cout << "Constraint Residual Axial = " << constraint_force_axial << "\n" ;
299
- std ::cout << "Constraint Residual Normal = " << constraint_force_normal << "\n" ;
300
- std ::cout << "Constraint Residual = " << _constraint_residual << "\n" ;
301
- }
285
+ {
286
+ std ::cout << "Constraint Residual Axial = " << constraint_force_axial << "\n" ;
287
+ std ::cout << "Constraint Residual Normal = " << constraint_force_normal << "\n" ;
288
+ std ::cout << "Constraint Residual = " << _constraint_residual << "\n" ;
289
+ }
302
290
303
291
bond_slip .bondstress_min = std ::min (bond_slip .bondstress_min_old , _bond_stress );
304
292
bond_slip .bondstress_max = std ::max (bond_slip .bondstress_max_old , _bond_stress );
0 commit comments