Eigen Analysis gives error "expected integer but got 500"

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

Moderators: silvia, selimgunay, Moderators

Post Reply
farasyaira
Posts: 1
Joined: Fri Dec 10, 2021 4:35 am

Eigen Analysis gives error "expected integer but got 500"

Post by farasyaira » Wed Mar 16, 2022 9:45 am

Hello,

I'm doing an eigenvalue analysis on a 2 floor structure. But when I run it, it says expected integer but got "500". I also made a folder so the mode shapes can be recorded in a file but it's empty. I'm not sure what/ where I did wrong so it would be really great if someone can help review my commands and comment on it. Thank you. Command are as below:

# Units: kN,mm

#########################################################################
# Define Modeling Space/ sourcing subroutines/ Creating Results folder #
#########################################################################

wipe all;
model BasicBuilder -ndm 2 -ndf 3;
geomTransf PDelta 1; # Run analysis with PDelta

source DisplayModel2D.tcl;
source DisplayPlane.tcl;

file mkdir ResultsPO75; # Create Main Results folder

#########################################################################
# Input #
#########################################################################

set E 8.4;
set Fy 0.421;

# Column Section Properties
set A_Col 6400.; # Area (mm2)
set I_Col 3413333.3; # Moment of inertia x-x (mm4)
set Z_Col 85333.3; # Plastic modulus (mm3)
set d_Col 80.; # Diameter (mm)
set ry_Col 23.1; # Radius of gyration y-y (mm)
set L_Col 2700; # Length (mm)

#Beam Section Properties
set A_Beam 6400.; # Area (mm2)
set I_Beam 3413333.3; # Moment of inertia x-x (mm4)
set Z_Beam 85333.3; # Plastic modulus (mm3)
set d_Beam 80.; # Depth (mm)
set ry_Beam 23.1; # Radius of gyration y-y (mm)
set L_Beam 3050; # Length (mm)

set BayWidth 3050; # Bay Width (mm)
set HStory1 750; # Height of foundation to first floor (mm)
set HStoryT 2700; # First Story Height (mm)

#########################################################################
# Pre-Calculations #
#########################################################################

set Axis1 0; set Axis2 [expr $Axis1+$BayWidth*1/3]; set Axis3 [expr $Axis1+$BayWidth*2/3]; set Axis4 [expr $Axis1+$BayWidth*1.0];

set Floor1 0;
set Floor2 [expr $Floor1+$HStory1+$HStoryT*0.0];
set Floor3 [expr $Floor1+$HStory1+$HStoryT*1.0];

#########################################################################
# Grid and Main and Plastic Hinge Nodes #
#########################################################################

# node ID X-Coordinate Y-Coordinate

#Grid Nodes
node 31 $Axis1 $Floor3; node 32 $Axis2 $Floor3; node 33 $Axis3 $Floor3; node 34 $Axis4 $Floor3;
node 21 $Axis1 $Floor2; node 22 $Axis2 $Floor2; node 23 $Axis3 $Floor2; node 24 $Axis4 $Floor2;
node 11 $Axis1 $Floor1; node 12 $Axis2 $Floor1; node 13 $Axis3 $Floor1; node 14 $Axis4 $Floor1;

#Offset Nodes
node 312 [expr $Axis1+$d_Col*0.5] [expr $Floor3-$d_Beam*0.0];
node 342 [expr $Axis4-$d_Col*0.5] [expr $Floor3-$d_Beam*0.0];
node 321 [expr $Axis2+$d_Col*0.0] [expr $Floor3-$d_Beam*0.5];
node 331 [expr $Axis3-$d_Col*0.0] [expr $Floor3-$d_Beam*0.5];
node 212 [expr $Axis1+$d_Col*0.5] [expr $Floor2+$d_Beam*0.0];
node 242 [expr $Axis4-$d_Col*0.5] [expr $Floor2+$d_Beam*0.0];
node 111 [expr $Axis1+$d_Col*0.0] [expr $Floor1+$HStory1*1/3];
node 121 [expr $Axis2+$d_Col*0.0] [expr $Floor1+$HStory1*1/3];
node 131 [expr $Axis3+$d_Col*0.0] [expr $Floor1+$HStory1*1/3];
node 141 [expr $Axis4+$d_Col*0.0] [expr $Floor1+$HStory1*1/3];

#Column Plastic Hinge Nodes
node 324 [expr $Axis2+$d_Col*0.0] [expr $Floor3-$d_Beam*0.5];
node 334 [expr $Axis3-$d_Col*0.0] [expr $Floor3-$d_Beam*0.5];
node 113 [expr $Axis1+$d_Col*0.0] [expr $Floor1+$HStory1*1/3];
node 123 [expr $Axis2+$d_Col*0.0] [expr $Floor1+$HStory1*1/3];
node 133 [expr $Axis3+$d_Col*0.0] [expr $Floor1+$HStory1*1/3];
node 143 [expr $Axis4+$d_Col*0.0] [expr $Floor1+$HStory1*1/3];

#Beam Plastic Hinge Nodes
node 315 [expr $Axis1+$d_Col*0.5] [expr $Floor3-$d_Beam*0.0];
node 345 [expr $Axis4-$d_Col*0.5] [expr $Floor3-$d_Beam*0.0];
node 215 [expr $Axis1+$d_Col*0.5] [expr $Floor2+$d_Beam*0.0];
node 245 [expr $Axis4-$d_Col*0.5] [expr $Floor2+$d_Beam*0.0];

#########################################################################
# Rigid Links #
#########################################################################
# Create Rigid Elastic elements
# element elasticBeamColumn ID Node1 Node2 Area E I GeomTrans1D

element elasticBeamColumn 31312 31 312 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 32321 32 321 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 33331 33 331 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 34342 34 342 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 21212 21 212 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 24242 24 242 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 11111 11 111 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 12121 12 121 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 13131 13 131 640000. $E [expr 1000*$I_Col] 1;
element elasticBeamColumn 14141 14 141 640000. $E [expr 1000*$I_Col] 1;

########################################################################
# Columns and Beams #
########################################################################
#element elasticBeamColumn ID Node1 Node2 Area E I GeomTransID

element elasticBeamColumn 31532 315 32 $A_Beam $E $I_Beam 1;
element elasticBeamColumn 3233 32 33 $A_Beam $E $I_Beam 1;
element elasticBeamColumn 33345 33 345 $A_Beam $E $I_Beam 1;
element elasticBeamColumn 2131 21 31 $A_Col $E $I_Col 1;
element elasticBeamColumn 22324 22 324 $A_Col $E $I_Col 1;
element elasticBeamColumn 23334 23 334 $A_Col $E $I_Col 1;
element elasticBeamColumn 2434 24 34 $A_Col $E $I_Col 1;
element elasticBeamColumn 21113 21 113 $A_Col $E $I_Col 1;
element elasticBeamColumn 22123 22 123 $A_Col $E $I_Col 1;
element elasticBeamColumn 23133 23 133 $A_Col $E $I_Col 1;
element elasticBeamColumn 24143 24 143 $A_Col $E $I_Col 1;
element elasticBeamColumn 21522 215 22 $A_Beam $E $I_Beam 1;
element elasticBeamColumn 2223 22 23 $A_Beam $E $I_Beam 1;
element elasticBeamColumn 23245 23 245 $A_Beam $E $I_Beam 1;

########################################################################
# Column and Beam Plastic Springs #
########################################################################
# Create zero-length elements with rotational I-M-K Springs
# uniaxialMaterial Hardening $matTag $E $sigmaY $H_iso $H_kin
# element zeroLength ID point1 point2 materialassign direction


#FOUNDATION SPRINGS DIRECTION 1 AND 2
uniaxialMaterial Hardening 111 0.0098 2 0.001336 0.001336; # force-displacement with strain hardening
element zeroLength 111113 111 113 -mat 111 -dir 1 2;
element zeroLength 121123 121 123 -mat 111 -dir 1 2;
element zeroLength 131133 131 133 -mat 111 -dir 1 2;
element zeroLength 141143 141 143 -mat 111 -dir 1 2;

#COLUMN SPRINGS DIRECTION 1 AND 2
uniaxialMaterial Hardening 222 2.13 4.32 0.122 0.122;
element zeroLength 321324 321 324 -mat 222 -dir 1 2;
element zeroLength 331334 331 334 -mat 222 -dir 1 2;

#COLUMN SPRINGS DIRECTION 6
uniaxialMaterial Hardening 333 0.12 3.11 0.0017 0.0017;
element zeroLength 3213242 321 324 -mat 333 -dir 6;
element zeroLength 3313342 331 334 -mat 333 -dir 6;

#BEAM SPRINGS DIRECTION 1 AND 2
uniaxialMaterial Hardening 444 2.13 4.32 0.122 0.122;
element zeroLength 312315 312 315 -mat 444 -dir 1 2;
element zeroLength 342345 342 345 -mat 444 -dir 1 2;
element zeroLength 212215 212 215 -mat 444 -dir 1 2;
element zeroLength 242245 242 245 -mat 444 -dir 1 2;

#BEAM SPRINGS DIRECTION 6
uniaxialMaterial Hardening 555 0.12 3.11 0.0017 0.0017;
element zeroLength 3123152 312 315 -mat 555 -dir 6;
element zeroLength 3423452 342 345 -mat 555 -dir 6;
element zeroLength 2122152 212 215 -mat 555 -dir 6;
element zeroLength 2422452 242 245 -mat 555 -dir 6;

########################################################################
# Boundary Conditions #
########################################################################
# Create Boundary Conditions at Supports and Floors

# SUPPORTS
# fix NodeID UX UY RZ
# 1 means fixed, 0 means free
fix 111 1 0 1;
fix 121 1 0 1;
fix 131 1 0 1;
fix 141 1 0 1;
fix 21 0 0 1;
fix 31 0 0 1;
fix 22 0 0 1;
fix 32 0 0 1;
fix 23 0 0 1;
fix 33 0 0 1;
fix 24 0 0 1;
fix 34 0 0 1;

# FLOOR MOVEMENT
# equalDOF MasterNodeID SlaveNodeID IDofDOF
equalDOF 315 32 1;
equalDOF 32 33 1;
equalDOF 33 345 1;
equalDOF 215 22 1;
equalDOF 22 23 1;
equalDOF 23 245 1;

# BEAM JOINTS
equalDOF 312 315 1 2; equalDOF 342 345 1 2;
equalDOF 212 215 1 2; equalDOF 242 245 1 2;

# COLUMN JOINTS
equalDOF 111 113 1 2; equalDOF 121 123 1 2;
equalDOF 131 133 1 2; equalDOF 141 143 1 2;
equalDOF 321 324 1 2; equalDOF 331 334 1 2;

puts "Model Built";

########################################################################
# Nodal Mass #
########################################################################
# mass NodeID Mass_X Mass_Y Mass_Z

set mass1 1500;
mass 31 $mass1 1.0e-10 1.0e-10;

########################################################################
# Gravity Load #
########################################################################

# density of Tulipwood Poplar is 510 kg/m3 (from Timbersource)

pattern Plain 100 Linear {
load 31 0. -0.122 0.;
load 34 0. -0.122 0.;
load 32 0. -0.158 0.;
load 33 0. -0.158 0.;
}

eleLoad -ele 31532 3233 33345 21522 2223 23245 -type -beamUniform -0.033;
eleLoad -ele 2131 22324 23334 2434 -type -beamUniform -0.088;
eleLoad -ele 21113 22123 23133 24143 -type -beamUniform -0.024;

########################################################################
# Eigen Value Analysis #
########################################################################

set numModes 2;

file mkdir modes;


for { set k 1 } { $k <= $numModes } { incr k } {
recorder Node -file [format "modes/mode%i.out" $k] -node 31 32 33 34 21 22 23 24 11 12 13 14 -dof 1 2 3 "eigen $k"
}

set lambda [eigen -fullGenLapack $numModes];

set omega {}
set f {}
set T {}
set pi 3.141593

foreach lam $lambda {
lappend omega [expr sqrt($lam)]
lappend f [expr sqrt($lam)/(2*$pi)]
lappend T [expr (2*$pi)/sqrt($lam)]
}

puts "periods are $T"

set period "modes/Periods.txt"
set Periods [open $period "w"]
foreach t $T {
puts $Periods " $t"
}
close $Periods

recorder display "Mode Shape 1" 10 10 500 500 -wipe
prp $Floor3 $Floor3 1; # projection reference point (prp); defines the center of projection (viewer eye)
vup 0 1 0; # view-up vector (vup)
vpn 0 0 1; # view-plane normal (vpn)
viewWindow -200 200 -200 200; # coordiantes of the window relative to prp
display -1 5 20; # the 1st arg. is the tag for display mode (ex. -1 is for the first mode shape)
# the 2nd arg. is magnification factor for nodes, the 3rd arg. is magnif. factor of deformed shape
recorder display "Mode Shape 2" 10 10 500 500 -wipe
prp $Floor3 $Floor3 1;
vup 0 1 0;
vpn 0 0 1;
viewWindow -200 200 -200 200
display -2 5 20

# Run a one step gravity load with no loading (to record eigenvectors)
#-----------------------------------------------------------------------
integrator Newmark 0.5 0.25

# Convergence test
# tolerance maxIter displayCode
test NormDispIncr 1.0e-8 10

# Solution algorithm
algorithm Newton

# DOF numberer
numberer RCM

# Constraint handler
constraints Transformation


# System of equations solver
system UmfPack

analysis Transient

analyze [expr 10/0.02] 0.02

# get values of eigenvectors for translational DOFs
#---------------------------------------------------
set f11 [nodeEigenvector 31 1 1]
set f21 [nodeEigenvector 21 1 1]
set f12 [nodeEigenvector 31 2 1]
set f22 [nodeEigenvector 21 2 1]
puts "eigenvector 1: [list [expr {$f11/$f21}] [expr {$f21/$f21}] ]"
puts "eigenvector 2: [list [expr {$f12/$f22}] [expr {$f22/$f22}] ]"


wipeAnalysis

Post Reply