Why inserting rigidlink bar fails the analysis?

Forum for OpenSees users to post questions, comments, etc. on the use of the OpenSees interpreter, OpenSees.exe

Moderators: silvia, selimgunay, Moderators

Post Reply
mohsenrock
Posts: 16
Joined: Tue Mar 07, 2017 4:18 am

Why inserting rigidlink bar fails the analysis?

Post by mohsenrock »

Hello experts!!
I have a simple problem in which a bar is loaded in tension. In this case, everything goes well and I have the correct responses. Now I would like to make a part of my element rigid. So I added a rigidlink bar to the problem. But as soon as adding it, the problem fails without doing anything. Do I have to reconsider something when adding rigidlink bar? What is the problem in this case? My code is written as follows:

wipe all;
model BasicBuilder -ndm 2 -ndf 3
source LibUnits.tcl; # Define units

#Define the geometry
set L1 [expr 25*$cm];

set IDctrlNode 2; # Node where displacement is read for disp control
set IDctrlDOF 1; # Degree of freedom of displacement read

#Define the coordinates
set x0 0.0;
set xL 0.0;
set y0 0.0;
set yL $L1;
set xL2 [expr 2*$xL];
set yL2 [expr 2*$yL];

node 1 $x0 $y0
node 2 $xL $yL
node 3 $xL2 $yL2

#Boundary conditions
fix 1 1 1 1

#Parameters for brace cross-section
set Rb1 [expr 1*$cm]
set Ab1 [expr 3.1416*$cm*$cm];
set Ib1 [expr 0.785*$cm*$cm*$cm*$cm];

set FyB [expr 2500.0*($kg/($cm*$cm))]; # Steel yield stress
set EsB [expr 2000000*($kg/($cm*$cm))]; # Steel Modulus of Elasticity
set Bbrace 0.12; # The hardening ratio
set IDSteelB 4;
uniaxialMaterial Steel01 $IDSteelB $FyB $EsB $Bbrace

section Fiber $Brace1Tag {
patch circ $IDSteelB 5 5 0.0 0.0 0.0 [expr $Rb1] 0.0 360.0
}

set Brace1Tag 1

geomTransf Linear 1;

rigidLink beam 1 2
element nonlinearBeamColumn 111 2 3 5 $Brace1Tag 1

recorder Node -file pushUniaxial.txt -time -node 2 -dof 2 disp;

constraints Plain Lagrange; # how it handles boundary conditions
numberer Plain; # renumber dof's to minimize band-width (optimization), if you want to
system BandGeneral; # how to store and solve the system of equations in the analysis
test NormDispIncr 1.0e-8 6 ; # determine if convergence has been achieved at the end of an iteration step
algorithm Newton; # use Newton's solution algorithm: updates tangent stiffness at every iteration
integrator LoadControl 0.1; # determine the next time step for an analysis, # apply gravity in 10 steps
analysis Static # define type of analysis static or transient
analyze 0; # perform gravity analysis
loadConst -time 0.0; # hold gravity constant and restart time

# Lateral load pattern
pattern Plain 2 Linear {
load 3 0.0 1 0.0; # node#, FX FY MZ -- representative lateral load at top node
}

# pushover: diplacement controlled static analysis
integrator LoadControl 0.5; # switch to displacement control, for node 11, dof 1, 0.1 increment
analyze 50; # apply 100 steps of pushover analysis to a displacement of 10

puts "Tensile Loading Done!"

Thanks in advance!!
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Re: Why inserting rigidlink bar fails the analysis?

Post by fmk »

did you read the warning messages (I am assuming you have sorted the errors as script posted is missing stuff)

WARNING PlainHandler::handle() - constraint matrix not identity, ignoring constraint for node 2
non-varyng assumed

use a Penalty constraint handler./
mohsenrock
Posts: 16
Joined: Tue Mar 07, 2017 4:18 am

Re: Why inserting rigidlink bar fails the analysis?

Post by mohsenrock »

Thanks for the answer. How much should be the alpha values (the ones in the Penalty constraint) in this case?
dgale
Posts: 57
Joined: Fri Jan 15, 2016 4:01 am
Location: UPM

Re: Why inserting rigidlink bar fails the analysis?

Post by dgale »

Normally I use 1e16 1e16 and the results are good
Post Reply