Dear NALLAGATLABHAGYASREE,
Have you solve it?
Please tell me how you solve this problem.
Search found 8 matches
- Sat Sep 25, 2021 2:56 am
- Forum: Useful Scripts.
- Topic: Modelling of building for Incremental Dynamic Analysis
- Replies: 3
- Views: 11575
- Fri Sep 24, 2021 1:23 pm
- Forum: OpenSees.exe Users
- Topic: modeling of a spring and a damper in parllel
- Replies: 5
- Views: 5041
Re: modeling of a spring and a damper in parllel
Dear selimgunay,
Thank you very much for your reply.
Ok, I will try using your recommendation.
Thank you very much for your reply.
Ok, I will try using your recommendation.
- Thu Sep 16, 2021 9:07 am
- Forum: OpenSees.exe Users
- Topic: modeling of a spring and a damper in parllel
- Replies: 5
- Views: 5041
Re: modeling of a spring and a damper in parllel
Dears,
I am also facing the same problem.
Is there an effective way to model parallel spring and dashpot model in OpenSees?
Assigning two ZeroLength elements is not working.
I am also facing the same problem.
Is there an effective way to model parallel spring and dashpot model in OpenSees?
Assigning two ZeroLength elements is not working.
- Wed Sep 15, 2021 7:54 am
- Forum: OpenSeesPy
- Topic: Radiation damping, Crad, is not working appropriately in OpenSees.
- Replies: 0
- Views: 12784
Radiation damping, Crad, is not working appropriately in OpenSees.
I am using OpenSees and winkler spring to represent the foundation. Since my ground shaking is not intense, I have chosen 'Foundation condition = 3' which is elastic vertical and horizontal springs.
Could you please tell me how OpenSees considers soil radational damping when I choose 'Foundation condition = 3'?
When I change the value of Crad, radiation damping ​ratio, the output is the same. Results are not changing as I change Crad value.
I have also checked the paper by Prishati Raychowdhury and Tara C., "ShallowFoundationGen OpenSees Documentation" 2008 (Example 1: shear frame). It doesn't show any difference if I change Crad value.
How can I solve this problem? My goal is to represent the dynamic impedance of Soil-structure interaction by linear spring and dashpot.
Please help me
Could you please tell me how OpenSees considers soil radational damping when I choose 'Foundation condition = 3'?
When I change the value of Crad, radiation damping ​ratio, the output is the same. Results are not changing as I change Crad value.
I have also checked the paper by Prishati Raychowdhury and Tara C., "ShallowFoundationGen OpenSees Documentation" 2008 (Example 1: shear frame). It doesn't show any difference if I change Crad value.
How can I solve this problem? My goal is to represent the dynamic impedance of Soil-structure interaction by linear spring and dashpot.
Please help me
- Fri Aug 27, 2021 12:18 pm
- Forum: OpenSees.exe Users
- Topic: radiation damping in QzSimple1 material
- Replies: 8
- Views: 6539
Re: radiation damping in QzSimple1 material
Dear ZVaghefi,
In your previous post, you stated the following idea:
"If the spring behavior is elastic, I use elastic material for them and add dashpot elements parallel to vertical springs in order to provide radiation damping. The damping of each dashpot is calculated in such a way as to produce proper damping for the rocking motion (same as damping proposed by Wolf)."
I want to model elastic Soil-Structure interaction using BNWF model. I used elastic foundation case, which is Foundation condition = 3 in ShallowFoundationGen command.
I didn't see a damping term in the generated file from ShallowFoundationGen command. How can I consider material and radational damping of the soil foundation?
Thank you
Daniel
In your previous post, you stated the following idea:
"If the spring behavior is elastic, I use elastic material for them and add dashpot elements parallel to vertical springs in order to provide radiation damping. The damping of each dashpot is calculated in such a way as to produce proper damping for the rocking motion (same as damping proposed by Wolf)."
I want to model elastic Soil-Structure interaction using BNWF model. I used elastic foundation case, which is Foundation condition = 3 in ShallowFoundationGen command.
I didn't see a damping term in the generated file from ShallowFoundationGen command. How can I consider material and radational damping of the soil foundation?
Thank you
Daniel
- Fri Aug 27, 2021 8:44 am
- Forum: OpenSees.exe Users
- Topic: How can I define material and radiation damping of a soil in BNWF model (ShallowFoundationGen command)?
- Replies: 0
- Views: 10192
How can I define material and radiation damping of a soil in BNWF model (ShallowFoundationGen command)?
I am using Beam on Winkler Foundation model to represent the foundation. Since my ground shaking is not intense, I have chosen 'Foundation condition = 3' which is elastic vertical and horizontal springs.
Could you please tell me how OpenSees considers soil material damping and radational damping when I choose 'Foundation condition = 3'?
When I use ShallowFoundationGen command, how can I define material and radiation damping in OpenSees?
With kind regards,
Daniel
Could you please tell me how OpenSees considers soil material damping and radational damping when I choose 'Foundation condition = 3'?
When I use ShallowFoundationGen command, how can I define material and radiation damping in OpenSees?
With kind regards,
Daniel
- Fri Aug 27, 2021 8:30 am
- Forum: OpenSees.exe Users
- Topic: My pushover analysis (2D Frame) is not converging.
- Replies: 2
- Views: 3293
Re: My pushover analysis (2D Frame) is not converging.
Dear selimgunay,
Thank you very much!
Thank you very much!
- Fri Apr 09, 2021 6:31 am
- Forum: OpenSees.exe Users
- Topic: My pushover analysis (2D Frame) is not converging.
- Replies: 2
- Views: 3293
My pushover analysis (2D Frame) is not converging.
Dears, I have modeled a 2D elastic frame in OpenSees.
I want to get capacity curve with clear maximum value of force.
when I change the value Umax even to unrealistic large value, it gives me a result. It doesn't converge.
Could you please help me on how to make it fix. Thank you in advance.
Here is the code:
# units: N,m
wipe all;
# Define the model type
model BasicBuilder -ndm 2 -ndf 3
# Define frame properties
set columnheight 3.2
set basecolheight 2.9
set baywidth 5.2
set columndepth 0.6
set columnwidth 0.25
set beamdepth 0.6
set beamwidth 0.25
set AreaCol [expr $columndepth*$columnwidth]
set AreaBeam [expr $beamdepth*$beamwidth]
set Icol [expr $columnwidth*pow($columndepth,3)/12.]
set Ibeam [expr $beamwidth*pow($beamdepth,3)/12.]
set E 32000000000.0
set Nmode 5
# Create a folder for output data store
file mkdir ModalAnalysis;
# Define nodes of the frame
# node nodeId Xcord Ycord
node 1 0. 0.
node 2 $baywidth 0.
node 3 [expr 2*$baywidth] 0.
node 4 [expr 3*$baywidth] 0.
node 5 0. $basecolheight
node 6 $baywidth $basecolheight
node 7 [expr 2*$baywidth] $basecolheight
node 8 [expr 3*$baywidth] $basecolheight
node 9 0. [expr $basecolheight + $columnheight]
node 10 $baywidth [expr $basecolheight + $columnheight]
node 11 [expr 2*$baywidth] [expr $basecolheight + $columnheight]
node 12 [expr 3*$baywidth] [expr $basecolheight + $columnheight]
node 13 0. [expr $basecolheight + 2*$columnheight]
node 14 $baywidth [expr $basecolheight + 2*$columnheight]
node 15 [expr 2*$baywidth] [expr $basecolheight + 2*$columnheight]
node 16 [expr 3*$baywidth] [expr $basecolheight + 2*$columnheight]
node 17 0. [expr $basecolheight + 3*$columnheight]
node 18 $baywidth [expr $basecolheight + 3*$columnheight]
node 19 [expr 2*$baywidth] [expr $basecolheight + 3*$columnheight]
node 20 [expr 3*$baywidth] [expr $basecolheight + 3*$columnheight]
node 21 0. [expr $basecolheight + 4*$columnheight]
node 22 $baywidth [expr $basecolheight + 4*$columnheight]
node 23 [expr 2*$baywidth] [expr $basecolheight + 4*$columnheight]
node 24 [expr 3*$baywidth] [expr $basecolheight + 4*$columnheight]
# Define the behaviour of shear frame building.
equalDOF 5 6 2 3
equalDOF 5 7 2 3
equalDOF 5 8 2 3
equalDOF 9 10 2 3
equalDOF 9 11 2 3
equalDOF 9 12 2 3
equalDOF 13 14 2 3
equalDOF 13 15 2 3
equalDOF 13 16 2 3
equalDOF 17 18 2 3
equalDOF 17 19 2 3
equalDOF 17 20 2 3
equalDOF 21 22 2 3
equalDOF 21 23 2 3
equalDOF 21 24 2 3
# Specify the type of geometric transformation
geomTransf Linear 1; # For column element
geomTransf Linear 2; # For beam element
# Create the frame elements
# element elasticBeamColumn eleID firstnode secondnode A E Iz geomTransfTag
element elasticBeamColumn 1 1 5 $AreaCol $E $Icol 1
element elasticBeamColumn 2 5 9 $AreaCol $E $Icol 1
element elasticBeamColumn 3 9 13 $AreaCol $E $Icol 1
element elasticBeamColumn 4 13 17 $AreaCol $E $Icol 1
element elasticBeamColumn 5 17 21 $AreaCol $E $Icol 1
element elasticBeamColumn 6 2 6 $AreaCol $E $Icol 1
element elasticBeamColumn 7 6 10 $AreaCol $E $Icol 1
element elasticBeamColumn 8 10 14 $AreaCol $E $Icol 1
element elasticBeamColumn 9 14 18 $AreaCol $E $Icol 1
element elasticBeamColumn 10 18 22 $AreaCol $E $Icol 1
element elasticBeamColumn 11 3 7 $AreaCol $E $Icol 1
element elasticBeamColumn 12 7 11 $AreaCol $E $Icol 1
element elasticBeamColumn 13 11 15 $AreaCol $E $Icol 1
element elasticBeamColumn 14 15 19 $AreaCol $E $Icol 1
element elasticBeamColumn 15 19 23 $AreaCol $E $Icol 1
element elasticBeamColumn 16 4 8 $AreaCol $E $Icol 1
element elasticBeamColumn 17 8 12 $AreaCol $E $Icol 1
element elasticBeamColumn 18 12 16 $AreaCol $E $Icol 1
element elasticBeamColumn 19 16 20 $AreaCol $E $Icol 1
element elasticBeamColumn 20 20 24 $AreaCol $E $Icol 1
element elasticBeamColumn 21 5 6 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 22 6 7 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 23 7 8 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 24 9 10 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 25 10 11 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 26 11 12 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 27 13 14 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 28 14 15 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 29 15 16 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 30 17 18 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 31 18 19 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 32 19 20 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 33 21 22 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 34 22 23 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 35 23 24 $AreaBeam $E $Ibeam 2
# Assign mass into each node
set m1 24370.4; # total mass in story 1
set m2 90536.73; # total mass in story 2
set m3 90536.73; # total mass in story 3
set m4 90536.73; # total mass in story 4
set m5 10985.4; # total mass in story 5
# mass $nodeTag $massX $massY $massRz
mass 5 [expr $m1/4] 0. 0.
mass 6 [expr $m1/4] 0. 0.
mass 7 [expr $m1/4] 0. 0.
mass 8 [expr $m1/4] 0. 0.
mass 9 [expr $m2/4] 0. 0.
mass 10 [expr $m2/4] 0. 0.
mass 11 [expr $m2/4] 0. 0.
mass 12 [expr $m2/4] 0. 0.
mass 13 [expr $m3/4] 0. 0.
mass 14 [expr $m3/4] 0. 0.
mass 15 [expr $m3/4] 0. 0.
mass 16 [expr $m3/4] 0. 0.
mass 17 [expr $m4/4] 0. 0.
mass 18 [expr $m4/4] 0. 0.
mass 19 [expr $m4/4] 0. 0.
mass 20 [expr $m4/4] 0. 0.
mass 21 [expr $m5/4] 0. 0.
mass 22 [expr $m5/4] 0. 0.
mass 23 [expr $m5/4] 0. 0.
mass 24 [expr $m5/4] 0. 0.
# Fix the support of the structure
fix 1 1 1 1
fix 2 1 1 1
fix 3 1 1 1
fix 4 1 1 1
set omegasquared [eigen $Nmode];
set omega {}
set f {}
set T {}
set pi 3.141593
foreach os $omegasquared {
lappend omega [expr sqrt($os)]
lappend f [expr sqrt($os)/(2*$pi)]
lappend T [expr (2*$pi)/sqrt($os)]
}
set period "ModalAnalysis/Periods.txt"
set Periods [open $period "w"]
foreach t $T {
puts $Periods " $t"
}
close $Periods
set eigenvector "ModalAnalysis/Eigenvector.txt"
set Eigenvector [open $eigenvector "w"]
puts $Eigenvector " Modeshape 1: [nodeEigenvector 5 1 1] [nodeEigenvector 9 1 1] [nodeEigenvector 13 1 1] [nodeEigenvector 17 1 1] [nodeEigenvector 21 1 1]"
puts $Eigenvector " Modeshape 2: [nodeEigenvector 5 2 1] [nodeEigenvector 9 2 1] [nodeEigenvector 13 2 1] [nodeEigenvector 17 2 1] [nodeEigenvector 21 2 1]"
puts $Eigenvector " Modeshape 3: [nodeEigenvector 5 3 1] [nodeEigenvector 9 3 1] [nodeEigenvector 13 3 1] [nodeEigenvector 17 3 1] [nodeEigenvector 21 3 1]"
puts $Eigenvector " Modeshape 4: [nodeEigenvector 5 4 1] [nodeEigenvector 9 4 1] [nodeEigenvector 13 4 1] [nodeEigenvector 17 4 1] [nodeEigenvector 21 4 1]"
puts $Eigenvector " Modeshape 5: [nodeEigenvector 5 5 1] [nodeEigenvector 9 5 1] [nodeEigenvector 13 5 1] [nodeEigenvector 17 5 1] [nodeEigenvector 21 5 1]"
close $Eigenvector
# Recorder
recorder Node -time -file Roofdisp.dat -node 24 -dof 1 disp
recorder Element -file Elementforce1.dat -time -ele 1 globalForce
recorder Element -file Elementforce6.dat -time -ele 6 globalForce
recorder Element -file Elementforce11.dat -time -ele 11 globalForce
recorder Element -file Elementforce16.dat -time -ele 16 globalForce
# Perform gravity analysis
# Assign the timeseries type
timeSeries Linear 1
# Assign uniformly distributed dead load to each beam element
pattern Plain 1 1 {
eleLoad -ele 21 22 23 -type -beamUniform -9070
eleLoad -ele 24 25 26 -type -beamUniform -50520
eleLoad -ele 27 28 29 -type -beamUniform -50520
eleLoad -ele 30 31 32 -type -beamUniform -50520
eleLoad -ele 33 34 35 -type -beamUniform -2050
}
# system UmfPack, This command is used to construct a sparse system of equations which uses the UmfPack solver
system UmfPack
# constraints Plain ,this command is used to construct a Plain constraint handler
constraints Plain
# test NormDispIncr $tol $iter <$pFlag>, This command is used to construct a convergence test
test NormDispIncr 1.0e-8 40 0
# algorithm Newton , This command is used to construct a NewtonRaphson algorithm object
algorithm Newton
# numberer RCM, RCM degree-of-freedom numbering object provide the mapping between the DOF at nodes and equation numbers.
numberer RCM
# integrator LoadControl $lambda, $lambda = the load factor increment
integrator LoadControl 0.1
# Analyze the model (statical)
analysis Static
analyze 10; #use 10 analysis steps
################################### Perform Pushover Analysis ############################################
# At this point gravity loads = constant, time in domain = 0.0
loadConst -time 0.0
# Assign lateral loads
timeSeries Linear 2
pattern Plain 2 2 {
load 5 18414.2 0.0 0.0
load 9 171187.4 0.0 0.0
load 13 252321.4 0.0 0.0
load 17 317362.0 0.0 0.0
load 21 41320.5 0.0 0.0
}
# Define target displacement(maximum displacement)
set Umax 0.3925; # 2.5% of drift
set Uincr 0.01; #
set Nsteps [expr int($Umax/$Uincr)]
# create the displacement controller
integrator DisplacementControl 24 1 $Uincr
analyze $Nsteps
I want to get capacity curve with clear maximum value of force.
when I change the value Umax even to unrealistic large value, it gives me a result. It doesn't converge.
Could you please help me on how to make it fix. Thank you in advance.
Here is the code:
# units: N,m
wipe all;
# Define the model type
model BasicBuilder -ndm 2 -ndf 3
# Define frame properties
set columnheight 3.2
set basecolheight 2.9
set baywidth 5.2
set columndepth 0.6
set columnwidth 0.25
set beamdepth 0.6
set beamwidth 0.25
set AreaCol [expr $columndepth*$columnwidth]
set AreaBeam [expr $beamdepth*$beamwidth]
set Icol [expr $columnwidth*pow($columndepth,3)/12.]
set Ibeam [expr $beamwidth*pow($beamdepth,3)/12.]
set E 32000000000.0
set Nmode 5
# Create a folder for output data store
file mkdir ModalAnalysis;
# Define nodes of the frame
# node nodeId Xcord Ycord
node 1 0. 0.
node 2 $baywidth 0.
node 3 [expr 2*$baywidth] 0.
node 4 [expr 3*$baywidth] 0.
node 5 0. $basecolheight
node 6 $baywidth $basecolheight
node 7 [expr 2*$baywidth] $basecolheight
node 8 [expr 3*$baywidth] $basecolheight
node 9 0. [expr $basecolheight + $columnheight]
node 10 $baywidth [expr $basecolheight + $columnheight]
node 11 [expr 2*$baywidth] [expr $basecolheight + $columnheight]
node 12 [expr 3*$baywidth] [expr $basecolheight + $columnheight]
node 13 0. [expr $basecolheight + 2*$columnheight]
node 14 $baywidth [expr $basecolheight + 2*$columnheight]
node 15 [expr 2*$baywidth] [expr $basecolheight + 2*$columnheight]
node 16 [expr 3*$baywidth] [expr $basecolheight + 2*$columnheight]
node 17 0. [expr $basecolheight + 3*$columnheight]
node 18 $baywidth [expr $basecolheight + 3*$columnheight]
node 19 [expr 2*$baywidth] [expr $basecolheight + 3*$columnheight]
node 20 [expr 3*$baywidth] [expr $basecolheight + 3*$columnheight]
node 21 0. [expr $basecolheight + 4*$columnheight]
node 22 $baywidth [expr $basecolheight + 4*$columnheight]
node 23 [expr 2*$baywidth] [expr $basecolheight + 4*$columnheight]
node 24 [expr 3*$baywidth] [expr $basecolheight + 4*$columnheight]
# Define the behaviour of shear frame building.
equalDOF 5 6 2 3
equalDOF 5 7 2 3
equalDOF 5 8 2 3
equalDOF 9 10 2 3
equalDOF 9 11 2 3
equalDOF 9 12 2 3
equalDOF 13 14 2 3
equalDOF 13 15 2 3
equalDOF 13 16 2 3
equalDOF 17 18 2 3
equalDOF 17 19 2 3
equalDOF 17 20 2 3
equalDOF 21 22 2 3
equalDOF 21 23 2 3
equalDOF 21 24 2 3
# Specify the type of geometric transformation
geomTransf Linear 1; # For column element
geomTransf Linear 2; # For beam element
# Create the frame elements
# element elasticBeamColumn eleID firstnode secondnode A E Iz geomTransfTag
element elasticBeamColumn 1 1 5 $AreaCol $E $Icol 1
element elasticBeamColumn 2 5 9 $AreaCol $E $Icol 1
element elasticBeamColumn 3 9 13 $AreaCol $E $Icol 1
element elasticBeamColumn 4 13 17 $AreaCol $E $Icol 1
element elasticBeamColumn 5 17 21 $AreaCol $E $Icol 1
element elasticBeamColumn 6 2 6 $AreaCol $E $Icol 1
element elasticBeamColumn 7 6 10 $AreaCol $E $Icol 1
element elasticBeamColumn 8 10 14 $AreaCol $E $Icol 1
element elasticBeamColumn 9 14 18 $AreaCol $E $Icol 1
element elasticBeamColumn 10 18 22 $AreaCol $E $Icol 1
element elasticBeamColumn 11 3 7 $AreaCol $E $Icol 1
element elasticBeamColumn 12 7 11 $AreaCol $E $Icol 1
element elasticBeamColumn 13 11 15 $AreaCol $E $Icol 1
element elasticBeamColumn 14 15 19 $AreaCol $E $Icol 1
element elasticBeamColumn 15 19 23 $AreaCol $E $Icol 1
element elasticBeamColumn 16 4 8 $AreaCol $E $Icol 1
element elasticBeamColumn 17 8 12 $AreaCol $E $Icol 1
element elasticBeamColumn 18 12 16 $AreaCol $E $Icol 1
element elasticBeamColumn 19 16 20 $AreaCol $E $Icol 1
element elasticBeamColumn 20 20 24 $AreaCol $E $Icol 1
element elasticBeamColumn 21 5 6 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 22 6 7 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 23 7 8 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 24 9 10 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 25 10 11 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 26 11 12 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 27 13 14 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 28 14 15 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 29 15 16 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 30 17 18 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 31 18 19 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 32 19 20 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 33 21 22 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 34 22 23 $AreaBeam $E $Ibeam 2
element elasticBeamColumn 35 23 24 $AreaBeam $E $Ibeam 2
# Assign mass into each node
set m1 24370.4; # total mass in story 1
set m2 90536.73; # total mass in story 2
set m3 90536.73; # total mass in story 3
set m4 90536.73; # total mass in story 4
set m5 10985.4; # total mass in story 5
# mass $nodeTag $massX $massY $massRz
mass 5 [expr $m1/4] 0. 0.
mass 6 [expr $m1/4] 0. 0.
mass 7 [expr $m1/4] 0. 0.
mass 8 [expr $m1/4] 0. 0.
mass 9 [expr $m2/4] 0. 0.
mass 10 [expr $m2/4] 0. 0.
mass 11 [expr $m2/4] 0. 0.
mass 12 [expr $m2/4] 0. 0.
mass 13 [expr $m3/4] 0. 0.
mass 14 [expr $m3/4] 0. 0.
mass 15 [expr $m3/4] 0. 0.
mass 16 [expr $m3/4] 0. 0.
mass 17 [expr $m4/4] 0. 0.
mass 18 [expr $m4/4] 0. 0.
mass 19 [expr $m4/4] 0. 0.
mass 20 [expr $m4/4] 0. 0.
mass 21 [expr $m5/4] 0. 0.
mass 22 [expr $m5/4] 0. 0.
mass 23 [expr $m5/4] 0. 0.
mass 24 [expr $m5/4] 0. 0.
# Fix the support of the structure
fix 1 1 1 1
fix 2 1 1 1
fix 3 1 1 1
fix 4 1 1 1
set omegasquared [eigen $Nmode];
set omega {}
set f {}
set T {}
set pi 3.141593
foreach os $omegasquared {
lappend omega [expr sqrt($os)]
lappend f [expr sqrt($os)/(2*$pi)]
lappend T [expr (2*$pi)/sqrt($os)]
}
set period "ModalAnalysis/Periods.txt"
set Periods [open $period "w"]
foreach t $T {
puts $Periods " $t"
}
close $Periods
set eigenvector "ModalAnalysis/Eigenvector.txt"
set Eigenvector [open $eigenvector "w"]
puts $Eigenvector " Modeshape 1: [nodeEigenvector 5 1 1] [nodeEigenvector 9 1 1] [nodeEigenvector 13 1 1] [nodeEigenvector 17 1 1] [nodeEigenvector 21 1 1]"
puts $Eigenvector " Modeshape 2: [nodeEigenvector 5 2 1] [nodeEigenvector 9 2 1] [nodeEigenvector 13 2 1] [nodeEigenvector 17 2 1] [nodeEigenvector 21 2 1]"
puts $Eigenvector " Modeshape 3: [nodeEigenvector 5 3 1] [nodeEigenvector 9 3 1] [nodeEigenvector 13 3 1] [nodeEigenvector 17 3 1] [nodeEigenvector 21 3 1]"
puts $Eigenvector " Modeshape 4: [nodeEigenvector 5 4 1] [nodeEigenvector 9 4 1] [nodeEigenvector 13 4 1] [nodeEigenvector 17 4 1] [nodeEigenvector 21 4 1]"
puts $Eigenvector " Modeshape 5: [nodeEigenvector 5 5 1] [nodeEigenvector 9 5 1] [nodeEigenvector 13 5 1] [nodeEigenvector 17 5 1] [nodeEigenvector 21 5 1]"
close $Eigenvector
# Recorder
recorder Node -time -file Roofdisp.dat -node 24 -dof 1 disp
recorder Element -file Elementforce1.dat -time -ele 1 globalForce
recorder Element -file Elementforce6.dat -time -ele 6 globalForce
recorder Element -file Elementforce11.dat -time -ele 11 globalForce
recorder Element -file Elementforce16.dat -time -ele 16 globalForce
# Perform gravity analysis
# Assign the timeseries type
timeSeries Linear 1
# Assign uniformly distributed dead load to each beam element
pattern Plain 1 1 {
eleLoad -ele 21 22 23 -type -beamUniform -9070
eleLoad -ele 24 25 26 -type -beamUniform -50520
eleLoad -ele 27 28 29 -type -beamUniform -50520
eleLoad -ele 30 31 32 -type -beamUniform -50520
eleLoad -ele 33 34 35 -type -beamUniform -2050
}
# system UmfPack, This command is used to construct a sparse system of equations which uses the UmfPack solver
system UmfPack
# constraints Plain ,this command is used to construct a Plain constraint handler
constraints Plain
# test NormDispIncr $tol $iter <$pFlag>, This command is used to construct a convergence test
test NormDispIncr 1.0e-8 40 0
# algorithm Newton , This command is used to construct a NewtonRaphson algorithm object
algorithm Newton
# numberer RCM, RCM degree-of-freedom numbering object provide the mapping between the DOF at nodes and equation numbers.
numberer RCM
# integrator LoadControl $lambda, $lambda = the load factor increment
integrator LoadControl 0.1
# Analyze the model (statical)
analysis Static
analyze 10; #use 10 analysis steps
################################### Perform Pushover Analysis ############################################
# At this point gravity loads = constant, time in domain = 0.0
loadConst -time 0.0
# Assign lateral loads
timeSeries Linear 2
pattern Plain 2 2 {
load 5 18414.2 0.0 0.0
load 9 171187.4 0.0 0.0
load 13 252321.4 0.0 0.0
load 17 317362.0 0.0 0.0
load 21 41320.5 0.0 0.0
}
# Define target displacement(maximum displacement)
set Umax 0.3925; # 2.5% of drift
set Uincr 0.01; #
set Nsteps [expr int($Umax/$Uincr)]
# create the displacement controller
integrator DisplacementControl 24 1 $Uincr
analyze $Nsteps