Page 1 of 1
How to use mode shape result after analysis
Posted: Mon Sep 06, 2021 6:02 am
by gookki
https://www.youtube.com/watch?v=MJFf51Vi6ts
I took the 12th Webinar lecture and applied it to conduct a modal analysis of the slightly modified model.
With this mode analysis result, I would like to input the story shear force corresponding to the mode shape in a pushover method, but is there a way to check the shear force in the mode shape in the post processor?
Re: How to use mode shape result after analysis
Posted: Mon Sep 06, 2021 7:47 am
by marafini.f
Dear gokki,
Mode shapes are one of the intrinsic dynamic characteristics of a structure, together with frequency and damping, I am sure you know that they represent deformations not force.
What you can do is extract the value of "ModesOfVibration(U)", which is the deformation in terms of displacement at a specific node of the structure, and then apply such values as a prescribed displacement to your structure in a load control pushover analysis. This was you can do a modal proportional pushover.
If you need any assistance in performing this let us know.
Enjoy your modeling:geek:
Francesca
Re: How to use mode shape result after analysis
Posted: Mon Sep 06, 2021 9:49 am
by gookki
How can I extract modes of vibration values from a specific node?
I tried many ways, but I couldn't find a way to pull it out with data. However, I understand that using the show function, I can check by reading the legend value by activating only the points in a specific location on the screen. Is there any better way?
Re: How to use mode shape result after analysis
Posted: Mon Sep 06, 2021 11:31 am
by marafini.f
Dear gokki,
you can access the eigenvector values if you open the database with HDF viewer. Like this:

- 1.PNG (91.75 KiB) Viewed 3488 times
If you know some tcl you can use the following script in a customCommand to run a modal analysis and save the eigenvector at a specified list of nodes:
Code: Select all
proc modal { num_modes filename1 {eig_solver -genBandArpack}} {
# begin
puts "\nRunning modal analysis ..."
# get all node tags
set nodes [getNodeTags]
if {[llength $nodes] == 0} {
error "modal - Error: no node in model"
}
# check problem size (2D or 3D) from the first node, we do not support mixed dimesions!!
set ndm [llength [nodeCoord [lindex $nodes 0]]]
# compute total masses
if {$ndm == 3} {
set ndf_max 6
set total_mass {0.0 0.0 0.0 0.0 0.0 0.0}
set mass_labels {"MX" "MY" "MZ" "MRX" "MRY" "MRZ"}
set mass_labels1 {"MODE" "MX" "MY" "MZ" "MRX" "MRY" "MRZ"}
} else {
set ndf_max 3
set total_mass {0.0 0.0 0.0}
set mass_labels {"MX" "MY" "MRZ"}
set mass_labels1 {"MODE" "MX" "MY" "MRZ"}
}
foreach node $nodes {
set indf [llength [nodeDisp $node]]
for {set i 0} {$i < $indf} {incr i} {
set imass [nodeMass $node [expr $i+1]]
set imass_total [lindex $total_mass $i]
lset total_mass $i [expr $imass_total + $imass]
}
}
# some constants
set pi [expr acos(-1.0)]
#modalDamping 0.02 0.02
# solve the eigenvalue problem
set lambdas [eigen $eig_solver $num_modes]
if {[llength $lambdas] != $num_modes} {
error "modal - Error: something went wrong in the eigen analysis"
}
#open a new document to record the values of the eigenvectors
set fp1 [open $filename1 w]
#set nodes_x {8} where we are interested in recording the eigenvectors TO BE EDITED!!!!
set nodes_x {12 9 7 4 6 11}
# process each mode of vibration
for {set imode 0} {$imode < $num_modes} {incr imode} {
# compute i-mode eigen analysis derived data
set lambda [lindex $lambdas $imode]
set omega [expr {sqrt($lambda)}]
set omega [expr {sqrt($lambda)}]
set frequency [expr $omega / 2.0 / $pi]
set period [expr 1.0 / $frequency]
foreach node $nodes_x {
# get eigenvector
puts $node
set V [nodeEigenvector $node [expr $imode+1]]
puts $fp1 "$node $V"
}
}
# done
close $fp1
puts "\nModal Analysis done\n"
}
#ask for the number of modes you want to extract
modal 4 "_eigenvectors.txt" "_frequencies.txt"
record
Unfortunately at the moment there is not the possibility to extract eigenvectors from the post-processor as a table.
Re: How to use mode shape result after analysis
Posted: Tue Sep 07, 2021 2:57 am
by gookki
Both methods were useful and well utilized. Thanks, especially the tcl language, which I haven't dealt with recently, but the code was very helpful.
It was also useful to check the analysis results with the hdf viewer.
Re: How to use mode shape result after analysis
Posted: Tue Sep 07, 2021 7:31 am
by marafini.f
You are welcome.
