3D Cantilever Column 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
jwaugh
Posts: 110
Joined: Thu Jul 15, 2004 12:20 pm
Location: HNTB - Portland ME

3D Cantilever Column Analysis

Post by jwaugh » Fri Oct 01, 2004 10:52 am

I am trying to do a 3D cantilever column analysis with a fiber section and am having trouble getting the analysis to run. If anyone out there has done this succesfully and has an input script I could look at and compare with to find where I am making my error I would be greatly appreciative. THank you for your assistance.

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

Post by fmk » Fri Oct 08, 2004 2:41 pm

here is one .. cobbled from Example5.1.tcl and Example3.2.tcl (the file RCsection.tcl
that is sourced is in the ExampleScripts directory) .. note by reversing colWidth & colDepth and changing coordTransformation to 0 1 0 you get same answer (as would expect) .. if you have problems figuring out the orientation of section just switch colWidth and colDepth and look at affect.'

hope this helps!

frank

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

model basic -ndm 3 -ndf 6
set height 144.0
node 1 0.0 0.0 0.0
node 2 0.0 0.0 $height
fix 1 1 1 1 1 1 1

uniaxialMaterial Concrete01 1 -5.0 -0.005 -3.5 -0.02
uniaxialMaterial Concrete01 2 -4.0 -0.002 0.0 -0.006
uniaxialMaterial Steel01 3 60.0 30000.0 0.01

source RCsection.tcl
set colWidth 12
set colDepth 24
RCsection 1 $colDepth $colWidth 2.5 1 2 3 3 0.79 8 8 10 10
set GJ 1.0e10;
uniaxialMaterial Elastic 10 $GJ
section Aggregator 2 10 T -section 1

geomTransf Linear 1 1 0 0
set np 5
element nonlinearBeamColumn 1 1 2 $np 2 1

# Create a Plain load pattern with a Linear TimeSeries
pattern Plain 1 "Linear" {
load 2 0.0 0.0 -10.0 0.0 0.0 0.0
}

analysis Static
analyze 10

loadConst -time 0.0
# Create a Plain load pattern with a Linear TimeSeries
pattern Plain 2 "Linear" {
load 2 1.0 0.0 0.0 0.0 0.0 0.0
}

recorder Node -file example.out -time -node 2 -dof 1 disp
recorder plot example.out hi 10 10 300 300 -columns 2 1

set ok 0
set currentDisp 0.0
set dU 0.1
set maxU 15.0; # Max displacement
set numSteps [expr int($maxU/$dU)]
test NormDispIncr 1.0e-12 1000 0
integrator DisplacementControl 2 1 $dU

while {$ok == 0 && $currentDisp < $maxU} {

set ok [analyze 1]

# if the analysis fails try initial tangent iteration
if {$ok != 0} {
puts "regular newton failed .. lets try an initail stiffness for this step"
test NormDispIncr 1.0e-12 1000 0
algorithm ModifiedNewton -initial
set ok [analyze 1]
if {$ok == 0} {puts "that worked .. back to regular newton"}
test NormDispIncr 1.0e-12 10
algorithm Newton
}

set currentDisp [nodeDisp 2 1]
}

print node 2
print ele

Post Reply