issues about eigen values

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

Moderators: silvia, selimgunay, Moderators

Post Reply
xieyifan
Posts: 2
Joined: Wed Feb 14, 2018 9:58 pm
Location: Tongji University

issues about eigen values

Post by xieyifan » Tue Dec 18, 2018 4:45 am

Hi I am doing an opensees analysis about dynamics.
I have noticed that if i do eigen analysis before applying gravity loads to the frame, i get one sets of eigenvalues.
However after applying gravity loads to the frame, if I do an eigen analysis again, the eigenvalues changes.
is it reasonable ?
here is my script.
wipe;



set filename "test"
model BasicBuilder -ndm 2 -ndf 3;




set IFM [expr 24.112]; #nodal gravity load for interior first storey column
set EFM [expr 16.497]; #nodal gravity load for exterior first storey column

set IM [expr 24.151]; #nodal mass for interior column
set EM [expr 16.536]; #nodal gravity load for exterior column

set IRM [expr 16.502]; #nodal gravity load for interior roof column. updated
set ERM [expr 9.843]; #nodal gravity load for exterior roof column. updated

set xa 0; #nodal x coordinates
set xb 5000;
set xc 10000;
set xd 15000;





set h1 3100; # nodal z coordinates
set h2 6400;
set h3 9700;
set h4 13000;
set h5 16300;
set h6 19600;
set h7 22900;


#####################################################################
# DEFINE NODAL COORDINATES IN INCHES AND NODAL MASSES
# tag X Y Mx My Mrot

# Base
node 1 $xa 0 -mass 0 0 0
node 2 $xb 0 -mass 0 0 0
node 3 $xc 0 -mass 0 0 0
node 4 $xd 0 -mass 0 0 0


# Story 1
node 5 $xa $h1 -mass $EFM 0 0
node 6 $xb $h1 -mass $IFM 0 0
node 7 $xc $h1 -mass $IFM 0 0
node 8 $xd $h1 -mass $EFM 0 0


# Story 2
node 9 $xa $h2 -mass $EM 0 0
node 10 $xb $h2 -mass $IM 0 0
node 11 $xc $h2 -mass $IM 0 0
node 12 $xd $h2 -mass $EM 0 0


# Story 3
node 13 $xa $h3 -mass $EM 0 0
node 14 $xb $h3 -mass $IM 0 0
node 15 $xc $h3 -mass $IM 0 0
node 16 $xd $h3 -mass $EM 0 0


# Story 4
node 17 $xa $h4 -mass $EM 0 0
node 18 $xb $h4 -mass $IM 0 0
node 19 $xc $h4 -mass $IM 0 0
node 20 $xd $h4 -mass $EM 0 0


# Story 5
node 21 $xa $h5 -mass $EM 0 0
node 22 $xb $h5 -mass $IM 0 0
node 23 $xc $h5 -mass $IM 0 0
node 24 $xd $h5 -mass $EM 0 0


# Story 6
node 25 $xa $h6 -mass $EM 0 0
node 26 $xb $h6 -mass $IM 0 0
node 27 $xc $h6 -mass $IM 0 0
node 28 $xd $h6 -mass $EM 0 0


# Story 7
node 29 $xa $h7 -mass $ERM 0 0
node 30 $xb $h7 -mass $IRM 0 0
node 31 $xc $h7 -mass $IRM 0 0
node 32 $xd $h7 -mass $ERM 0 0


#####################################################################
# SINGLE POINT CONSTRAINTS
# node DX DY RZ
fix 1 1 1 1
fix 2 1 1 1
fix 3 1 1 1
fix 4 1 1 1

#####################################################################
puts "Finished creating nodes and restraints ..."





# CONCRETE MODEL
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# used in ElaGeomTransf and ElaAssign tcl

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# MAT-1-2 Fc' = 0.79*fcu,k = 23.7 Mpa or 30 MPa C30 #check
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Cover concrete
# tag -f'c -epsco -f'cu -epscu
uniaxialMaterial Concrete01 1 -30 -0.002 -6 -0.0033; # check this

# Core concrete
uniaxialMaterial Concrete01 2 -31.18 -0.0021 -6.24 -0.0091



#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# REINFORMCEMENT STEEL MODEL
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# MAT-3 Fy' = 360 Mpa
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

set E 2e5
set fy 360.0
set b 0.02; # CHECK THIS VALUE

# Define material section properties.
#============================================#
# matTag fy E b #
#============================================#
uniaxialMaterial Steel01 3 $fy $E $b








#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# DEFINE COLUMN SECTIONS
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Column section story all

set z1 400; # width loading along this direction Bending about this direction
set x1 400; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 11 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# 8 phi 16
# mat nBars area yI zI yJ zJ
layer straight 3 3 200.96 $h -$b $h $b;
layer straight 3 2 200.96 0 -$b 0 $b;
layer straight 3 3 200.96 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#DEFINE BEAM SECTIONS
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# Floor 1 beam section 101
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 101 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 1 beam section 102
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 102 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 2 2#22+2#16
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 200.96 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 1 beam section 103
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 103 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}

# Floor 2 beam section 201
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 201 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 2 beam section 202
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 202 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 2 2#22+2#16
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 200.96 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 2 beam section 203
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 203 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 3 beam section 301
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 301 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 3 beam section 302
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 302 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 2 2#22+2#16
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 200.96 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 3 beam section 303
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 303 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 4 beam section 401
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 401 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 4 beam section 402
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 402 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 2 2#22+2#16
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 200.96 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# Floor 4 beam section 403
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 403 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 5 beam section 501
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 501 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 5 beam section 502
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 502 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 2 2#22+2#16
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 200.96 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 5 beam section 503
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 503 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 1 2#22+2#18
# mat nBars area yI zI yJ zJ
layer straight 3 2 379.94 $h -$b $h $b;
layer straight 3 2 254.34 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 6 beam section 601
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 601 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 3 3#14+2#14
# mat nBars area yI zI yJ zJ
layer straight 3 3 153.86 $h -$b $h $b;
layer straight 3 2 153.86 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 6 beam section 602
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 602 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 3 3#14+2#14
# mat nBars area yI zI yJ zJ
layer straight 3 3 153.86 $h -$b $h $b;
layer straight 3 2 153.86 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 6 beam section 603
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 603 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 3 3#14+2#14
# mat nBars area yI zI yJ zJ
layer straight 3 3 153.86 $h -$b $h $b;
layer straight 3 2 153.86 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 7 beam section 701
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 701 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 3 2#14+2#14 updated cos the mass of roof is updated.
# mat nBars area yI zI yJ zJ
layer straight 3 2 153.86 $h -$b $h $b;
layer straight 3 2 153.86 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 7 beam section 702
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 702 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 3 2#14+2#14 updated cos the mass of roof is updated.
# mat nBars area yI zI yJ zJ
layer straight 3 2 153.86 $h -$b $h $b;
layer straight 3 2 153.86 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Floor 7 beam section 703
set z1 400; # width loading along this direction Bending about this direction
set x1 250; # depth, bending about z-direction
set d 25; # Clear distance

set b [expr ($x1-2*$d)/2]; #core
set h [expr ($z1-2*$d)/2]; #core
set x [expr $x1/2]; #out
set z [expr $z1/2]; #out

set divIJ 4;
set divJKC 66; # CORE
set divJK 100; # TOP-BOT Long parts
set divJKL 20; # LEFT SHORT
set divJKR 20; # RIGHT SHORT

section Fiber 703 {
# mat ndivIJ ndivJK yI zI yJ zJ yK zK yL zL
patch quadr 2 $divIJ $divJKC $h -$b $h $b -$h $b -$h -$b; # CORE
patch quadr 1 $divIJ $divJK $z -$x $z $x $h $x $h -$x; # Top long
patch quadr 1 $divIJ $divJK -$h -$x -$h $x -$z $x -$z -$x; # Bot long
patch quadr 1 $divIJ $divJKL $h -$x $h -$b -$h -$b -$h -$x; # Left CHECK
patch quadr 1 $divIJ $divJKR $h $b $h $x -$h $x -$h $b; # Right
#
# section 3 2#14+2#14 updated cos the mass of roof is updated.
# mat nBars area yI zI yJ zJ
layer straight 3 2 153.86 $h -$b $h $b;
layer straight 3 2 153.86 -$h -$b -$h $b;
}
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#####################################################################
puts "Finished creating cross sections..."



#################################################################################################
#
# GEOMETRIC TRANSFORMATIONS ROUTINE
#
# Writen by: Erol Kalkan
# Last modified: JAN 2004
#
# Objective:
#
# Units: kip-in
#################################################################################################
# Column rigid end offsets CHECK LATER xieyifan check
geomTransf Linear 11
geomTransf Linear 12
geomTransf Linear 13
geomTransf Linear 14
geomTransf Linear 15
geomTransf Linear 16
geomTransf Linear 17

#geomTransf PDelta 11 -jntOffset 0 0 0 -30;
#geomTransf PDelta 12 -jntOffset 0 0 0 -22.5;
#geomTransf PDelta 13 -jntOffset 0 0 0 -22.5;
#geomTransf PDelta 14 -jntOffset 0 0 0 -22.5;
#geomTransf PDelta 15 -jntOffset 0 0 0 -22.5;
#geomTransf PDelta 16 -jntOffset 0 0 0 -22.5;
#geomTransf PDelta 17 -jntOffset 0 0 0 -22.0;


# Beam rigid end offsets
geomTransf Linear 21 -jntOffset 200 0 -200 0 ;# the half of column depth

#####################################################################
puts "Finished geometric transformation ..."
#####################################################################
# Beam rigid end offsets
#geomTransf Linear 21 -jntOffset 7 0 -7 0 should i need this ??

#################################################################################################
#
# Section Assigment Routine
#
# Writen by: Erol Kalkan
# Last modified: Oct 2003
#
# Objective:
#
# Units: kip-in
#################################################################################################
# NUMBER OF INTEGRATION POINTS
set nP 4;
#####################################################################
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# DEFINE ELEMENTS
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Columns
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# tag ndI ndJ nPts secID transf max iter and tol for elem comp
# 1st Storey Columns
element nonlinearBeamColumn 11 1 5 $nP 11 11 -iter 10 10e-16
element nonlinearBeamColumn 12 2 6 $nP 11 11 -iter 10 10e-16
element nonlinearBeamColumn 13 3 7 $nP 11 11 -iter 10 10e-16
element nonlinearBeamColumn 14 4 8 $nP 11 11 -iter 10 10e-16


# 2nd Storey Columns
element nonlinearBeamColumn 21 5 9 $nP 11 12 -iter 10 10e-16
element nonlinearBeamColumn 22 6 10 $nP 11 12 -iter 10 10e-16
element nonlinearBeamColumn 23 7 11 $nP 11 12 -iter 10 10e-16
element nonlinearBeamColumn 24 8 12 $nP 11 12 -iter 10 10e-16


# 3rd Storey Columns
element nonlinearBeamColumn 31 9 13 $nP 11 13 -iter 10 10e-16
element nonlinearBeamColumn 32 10 14 $nP 11 13 -iter 10 10e-16
element nonlinearBeamColumn 33 11 15 $nP 11 13 -iter 10 10e-16
element nonlinearBeamColumn 34 12 16 $nP 11 13 -iter 10 10e-16


# 4th Storey Columns
element nonlinearBeamColumn 41 13 17 $nP 11 14 -iter 10 10e-16
element nonlinearBeamColumn 42 14 18 $nP 11 14 -iter 10 10e-16
element nonlinearBeamColumn 43 15 19 $nP 11 14 -iter 10 10e-16
element nonlinearBeamColumn 44 16 20 $nP 11 14 -iter 10 10e-16


# 5th Storey Columns
element nonlinearBeamColumn 51 17 21 $nP 11 15 -iter 10 10e-16
element nonlinearBeamColumn 52 18 22 $nP 11 15 -iter 10 10e-16
element nonlinearBeamColumn 53 19 23 $nP 11 15 -iter 10 10e-16
element nonlinearBeamColumn 54 20 24 $nP 11 15 -iter 10 10e-16


# 6th Storey Columns
element nonlinearBeamColumn 61 21 25 $nP 11 16 -iter 10 10e-16
element nonlinearBeamColumn 62 22 26 $nP 11 16 -iter 10 10e-16
element nonlinearBeamColumn 63 23 27 $nP 11 16 -iter 10 10e-16
element nonlinearBeamColumn 64 24 28 $nP 11 16 -iter 10 10e-16


# 7th Storey Columns
element nonlinearBeamColumn 71 25 29 $nP 11 17 -iter 10 10e-16
element nonlinearBeamColumn 72 26 30 $nP 11 17 -iter 10 10e-16
element nonlinearBeamColumn 73 27 31 $nP 11 17 -iter 10 10e-16
element nonlinearBeamColumn 74 28 32 $nP 11 17 -iter 10 10e-16


#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Beams
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# tag ndI ndJ nPts secID transf
# 1th Storey Beams
element nonlinearBeamColumn 101 5 6 $nP 101 21 -iter 10 10e-16
element nonlinearBeamColumn 102 6 7 $nP 102 21 -iter 10 10e-16
element nonlinearBeamColumn 103 7 8 $nP 103 21 -iter 10 10e-16


# 2nd Storey Beams
element nonlinearBeamColumn 201 9 10 $nP 201 21 -iter 10 10e-16
element nonlinearBeamColumn 202 10 11 $nP 202 21 -iter 10 10e-16
element nonlinearBeamColumn 203 11 12 $nP 203 21 -iter 10 10e-16


# 3rd Storey Beams
element nonlinearBeamColumn 301 13 14 $nP 301 21 -iter 10 10e-16
element nonlinearBeamColumn 302 14 15 $nP 302 21 -iter 10 10e-16
element nonlinearBeamColumn 303 15 16 $nP 303 21 -iter 10 10e-16


# 4th Storey Beams
element nonlinearBeamColumn 401 17 18 $nP 401 21 -iter 10 10e-16
element nonlinearBeamColumn 402 18 19 $nP 402 21 -iter 10 10e-16
element nonlinearBeamColumn 403 19 20 $nP 403 21 -iter 10 10e-16


# 5th Storey Beams
element nonlinearBeamColumn 501 21 22 $nP 501 21 -iter 10 10e-16
element nonlinearBeamColumn 502 22 23 $nP 502 21 -iter 10 10e-16
element nonlinearBeamColumn 503 23 24 $nP 503 21 -iter 10 10e-16


# 6th Storey Beams
element nonlinearBeamColumn 601 25 26 $nP 601 21 -iter 10 10e-16
element nonlinearBeamColumn 602 26 27 $nP 602 21 -iter 10 10e-16
element nonlinearBeamColumn 603 27 28 $nP 603 21 -iter 10 10e-16


# 7th Storey Beams
element nonlinearBeamColumn 701 29 30 $nP 701 21 -iter 10 10e-16
element nonlinearBeamColumn 702 30 31 $nP 702 21 -iter 10 10e-16
element nonlinearBeamColumn 703 31 32 $nP 703 21 -iter 10 10e-16


#############################################################################
puts "Finished assigning sections ..."
#############################################################################








#####################################################################
puts "Finished Eigen Analysis..."
puts "A [eigen 3]"

# Load Application
# The following are the dead loads applied to each node.
set g -9800.0; # Gravity Load Calculation

pattern Plain 1 Linear {
# node RX RY MZ
# 1-Floor:
load 5 0.0 [expr $EFM*$g] 0.0;
load 6 0.0 [expr $IFM*$g] 0.0;
load 7 0.0 [expr $IFM*$g] 0.0;
load 8 0.0 [expr $EFM*$g] 0.0;



# 2-Floor:
load 9 0.0 [expr $EM*$g] 0.0;
load 10 0.0 [expr $IM*$g] 0.0;
load 11 0.0 [expr $IM*$g] 0.0;
load 12 0.0 [expr $EM*$g] 0.0;

# 3-Floor:
load 13 0.0 [expr $EM*$g] 0.0;
load 14 0.0 [expr $IM*$g] 0.0;
load 15 0.0 [expr $IM*$g] 0.0;
load 16 0.0 [expr $EM*$g] 0.0;

# 4-Floor:
load 17 0.0 [expr $EM*$g] 0.0;
load 18 0.0 [expr $IM*$g] 0.0;
load 19 0.0 [expr $IM*$g] 0.0;
load 20 0.0 [expr $EM*$g] 0.0;

# 5-Floor:
load 21 0.0 [expr $EM*$g] 0.0;
load 22 0.0 [expr $IM*$g] 0.0;
load 23 0.0 [expr $IM*$g] 0.0;
load 24 0.0 [expr $EM*$g] 0.0;

# 6-Floor:
load 25 0.0 [expr $EM*$g] 0.0;
load 26 0.0 [expr $IM*$g] 0.0;
load 27 0.0 [expr $IM*$g] 0.0;
load 28 0.0 [expr $EM*$g] 0.0;


# 7-Floor:
load 29 0.0 [expr $ERM*$g] 0.0;
load 30 0.0 [expr $IRM*$g] 0.0;
load 31 0.0 [expr $IRM*$g] 0.0;
load 32 0.0 [expr $ERM*$g] 0.0;

}
####################################################################################
# Gravity Analysis #
####################################################################################
puts "B [eigen 3]"
set GravSteps 10

recorder Node -file $filename/disp.out -time -node 29 -dof 2 disp

system UmfPack; # solution procedure, how it solves system of equations
puts "C [eigen 3]"
constraints Plain; # how it handles boundary conditions, enforce constraints
puts "D [eigen 3]"
test NormDispIncr 1.0e-6 100 0
puts "E [eigen 3]"
algorithm Newton
puts "F [eigen 3]"
numberer RCM; # renumber dof's to minimize band-width
puts "G [eigen 3]"
integrator LoadControl [expr 1./$GravSteps] 1 [expr 1./$GravSteps] [expr 1./$GravSteps]
analysis Static

analyze $GravSteps # run gravity analysis

loadConst -time 0.0; # keep gravity load and restart time -- lead to lateral-load analysis

#####################################################################
puts "Finished Gravity Analysis..."
#####################################################################

puts "J [eigen 3]"


wipeAnalysis

loadConst -time 0.0

source PlaRecorderdyn.tcl

set outFile rec_ch16.tcl; # accel ?
set Nsteps 1500
set dt 0.02;
set sfactor 0.4954
set GMfatt [expr $sfactor*9800.0/386.2]
puts "GMfatt: $GMfatt"
set omg_sqr [eigen 1]
#puts "T1: [expr 2.0*3.1415926/pow($omg_sqr,0.5)] s"
set gamma 0.5
set beta 0.25;
set alphaM [expr 2*0.04]; # 5% damping Mass proportional ao ??
set betaK [expr 2*0.04/(pow($omg_sqr,0.5))]; # Stiffness proportional a1 ??
set betaKcomm 0
set betaKinit 0

system UmfPack
constraints Plain

#test NormDispIncr 1.0e-2 200 0;
#test NormDispIncr 1.0e- 200 0;
test EnergyIncr 1.0e-2 1000;
#algorithm Newton
algorithm NewtonLineSearch 0.8; # BETTER
#algorithm KrylovNewton
#algorithm ModifiedNewton -initial
#algorithm Broyden 200

numberer RCM
#integrator Newmark $gamma $beta $alphaM $betaK $betaKcomm $betaKinit;
integrator Newmark $gamma $beta;
#analysis Transient;
analysis VariableTransient;

# # define DAMPING--------------------------------------------------------------------------------------
# # apply Rayleigh DAMPING from $xDamp
# # D=$alphaM*M + $betaKcurr*Kcurrent + $betaKcomm*KlastCommit + $beatKinit*$Kinitial
# set xDamp 0.05; # 2% damping ratio
# set lambda [eigen 1]; # eigenvalue mode 1
# set omega [expr pow($lambda,0.5)];
# set alphaM 0.; # M-prop. damping; D = alphaM*M
# set betaKcurr 0.; # K-proportional damping; +beatKcurr*KCurrent
# set betaKcomm [expr 2.*$xDamp/($omega)]; # K-prop. damping parameter; +betaKcomm*KlastCommitt
# set betaKinit 0.; # initial-stiffness proportional damping +beatKinit*Kini
# # define damping
# rayleigh $alphaM $betaKcurr $betaKinit $betaKcomm; # RAYLEIGH damping


#############################################################################
# # ------ 计算结构的自振频率,按照阻尼比计算Rayleigh常数--------------
# set pi 3.1415926; # 定义pi,asin是反正弦函数
# set nEigenI 1; #主振型1为第一振型
# set nEigenJ 2; #主振型2为第二振型
# set nEigenK 3; #主振型3为第二振型
# set lambdaN [eigen [expr $nEigenK]]; # 求三阶振型 eigenvalue analysis for nEigenJ modes
# set lambdaI [lindex $lambdaN [expr $nEigenI-1]]; # 提取第一阶特征值 eigenvalue mode j = 1
# set lambdaJ [lindex $lambdaN [expr $nEigenJ-1]]; # 提取第二阶特征值 eigenvalue mode j = 2
# set lambdaK [lindex $lambdaN [expr $nEigenK-1]]; # 提取第三阶特征值 eigenvalue mode k = 3
# set w1 [expr pow($lambdaI,0.5)]; # 第一阶频率的特征周期 (1st mode circular frequency)
# set w2 [expr pow($lambdaJ,0.5)]; # 第二阶频率的特征周期 (2nd mode circular frequency)
# set w3 [expr pow($lambdaK,0.5)]; # 第三阶频率的特征周期 (3nd mode circular frequency)
# # set w1 [expr 2.0*$pi/1.4416]; # 第一阶频率的特征周期 (1st mode circular frequency)
# # set w2 [expr 2.0*$pi/0.4658]; # 第二阶频率的特征周期 (2nd mode circular frequency)
# # set w3 [expr 2.0*$pi/0.2646]; # 第三阶频率的特征周期 (3nd mode circular frequency)
# set T1 [expr 2.0*$pi/$w1]; #第一阶频率的特征周期 1st mode period of the structure
# set T2 [expr 2.0*$pi/$w2]; #第二阶频率的特征周期 2nd mode period of the structure
# set T3 [expr 2.0*$pi/$w3]; #第三阶频率的特征周期 3nd mode period of the structure
# puts " $T1 $T2 $T3"
# set F1 [expr 1.0/$T1]; # 1st mode frequency of the structure
# set F2 [expr 1.0/$T2]; # 2nd mode frequency of the structure
# set F3 [expr 1.0/$T3]; # 3nd mode frequency of the structure
# puts "前三阶周期"
# puts "T1 = $T1 s"; #第一阶频率的特征周期 display the first mode period in the command window
# puts "T2 = $T2 s"; # 第二阶频率的特征周期display the second mode period in the command window
# puts "T3 = $T3 s"; # 第三阶频率的特征周期display the third mode period in the command window
# puts "前三阶频率"
# puts "f1 = $F1 Hz"; # display the first mode period in the command window
# puts "f2 = $F2 Hz"; # display the second mode period in the command window
# puts "f3 = $F3 Hz"; # display the third mode period in the command window

puts [eigen 3]
#print eigenvectors.out -node 6 10 14 18 22 26 30


set pi 3.1415926
set eigFID [open Eigen_Node_DefoShape_EigenVal2.out w]
set lambda [eigen 3]
puts $eigFID " lambda omega period frequency"
foreach lambda $lambda {
set omega [expr sqrt($lambda)]
set period [expr 2.0*$pi/$omega]
set frequ [expr 1.0/$period]
puts "$period"
puts $eigFID [format " %+1.6e %+1.6e %+1.6e %+1.6e" $lambda $omega $period $frequ]
}
close $eigFID
# analyze






# set zeta 0.05; #设置阻尼比为0.05
# set a0 [expr $zeta*2.0*$w1*$w2/($w1 + $w2)]; #质量相关系数a0 (mass damping coefficient based on first and second modes)
# set a1 [expr $zeta*2.0/($w1 + $w2)]; # 刚度相关系数a1(stiffness damping coefficient based on first and second modes)
# #----定义阻尼 质量矩阵系数 当前刚度矩阵系数 初始刚度矩阵系数 上一时步刚度系数
# #rayleigh 0.0 $a1 0 0
# rayleigh $a0 $a1 0 0; #定义瑞利阻尼,只填写a0、a1即可
# puts "a0 = $a0 "
# puts "a1 = $a1 "

# set Gaccel "Series -dt $dt -filePath $outFile -factor $GMfatt"; # time series information
# pattern UniformExcitation 2 1 -accel $Gaccel; # create uniform excitation
# analyze $Nsteps $dt 0.001 0.02 1000;
# #analyze $Nsteps $dt;
# puts "end"
# ####################################################################################
# # End of Analysis #
# ####################################################################################

selimgunay
Posts: 913
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: issues about eigen values

Post by selimgunay » Wed Jan 02, 2019 11:13 am

This is mainly because of the fiber sections and the tensile stresses due to gravity loading. You are using concrete01 which does not have any tension resistance, therefore stiffness becomes zero for fibers under tension. Difference would be smaller if you use Concrete02

Post Reply