How to divide one Brace element into two segments?

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

How to divide one Brace element into two segments?

Post by mohsenrock » Fri Dec 08, 2017 4:48 am

Hi experts,
Suppose that I have one brace in my structure that I would like to divide it into two segments, one completely rigid and the other as an ordinary steel. When I try to model such behavior the responses are not correct. I am trying to avoid buckling. Now the question is this. Should I define some boundary conditions between the brace segments or no? For simplifying the problem I reduced it to one bar element under tensile load and I divided it into two segments. Could you please help me and see if there is something that I am not considering?

Thanks in advance

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];

#Define nodal coordinates
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 Abr1 [expr 10*($cm*$cm)]
set Ibr1 [expr 10*($cm*$cm*$cm*$cm)]
set Rb1 [expr 1*$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 Steel02 $IDSteelB $FyB $EsB $Bbrace
#uniaxialMaterial Steel01 $IDSteelB $FyB $EsB $Bbrace

set Brace1Tag 1

section Fiber $Brace1Tag {
patch quadr $IDSteelB 10 10 [expr -1.0*$cm] [expr 1.0*$cm] [expr -1.0*$cm] [expr -1.0*$cm] [expr 1.0*$cm] [expr -1.0*$cm] [expr 1.0*$cm] [expr 1.0*$cm]
}

geomTransf Linear 1;

set locationB1 "0.0 1.0"
set SecTagB1 "$Brace1Tag $Brace1Tag"
set integrationB1 "FixedLocation 2 $SecTagB1 $locationB1"

#element elasticBeamColumn $eleTag $iNode $jNode $A $E $Iz $transfTag
element nonlinearBeamColumn 111 1 2 1 $integrationB1
element nonlinearBeamColumn 112 2 3 1 $integrationB1

recorder Node -file pushUniaxial.txt -time -node 2 -dof 2 disp;
recorder Element -file ss.out -time -ele 111 section 1 forces
recorder Element -file Element1.out -time -ele 111 section 1 fiber 0.10 0.10 stressStrain

constraints Plain; # 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

# define LATERAL load -------------------------------------------------------------
# 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 100; # apply 100 steps of pushover analysis to a displacement of 10

puts "Tensile Loading Done!"

set currentFactor [getTime]
set dLambda [expr -$currentFactor/50.]
integrator LoadControl $dLambda
analyze 50

puts "Tensile Unloading Done!"

fmk
Site Admin
Posts: 5883
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Re: How to divide one Brace element into two segments?

Post by fmk » Fri Dec 08, 2017 11:32 am

you mean you get responses, but they do not match some a) experiment or b) theory? If a) your modeling approach needs to be tossed. I have seen people model braces by breaking into segments, but never with a rigid element that long. b) your input model and your math assumptions are not in agreement.

Post Reply