Analyses eigen

Post Reply
ivan pellegrino
Posts: 2
Joined: Wed Nov 13, 2019 2:42 pm

Analyses eigen

Post by ivan pellegrino » Wed Nov 13, 2019 3:20 pm

Hi, I have a complex structure with 850 elements and 410 nodes. I have a "section fiber" model added with "section aggregator" and "special purpose" to chose number and type of integration. Masses are modelling like a "massDens" in FBA (ElementsForceBeamColumn). I have "fix" my structure and I create a RECORD with "modesofVibration" and a PatternConstraint with "fix nodes".
Why Eigen Analyses don't go to the end?

STKO Team
Posts: 220
Joined: Tue Oct 29, 2019 8:45 am

Re: Analyses eigen

Post by STKO Team » Thu Nov 14, 2019 3:29 pm

Hi Ivan,
There could be a number of reasons. Could you please post the error that OpenSEES shows on the terminal?
STKO Team

ivan pellegrino
Posts: 2
Joined: Wed Nov 13, 2019 2:42 pm

Re: Analyses eigen

Post by ivan pellegrino » Thu Nov 14, 2019 8:36 pm

Hi, I was told to use "customCommand" that allows to insert a "Script" in order to input the command "record". My trouble is: which code line have i to put for this command?
File in output: definitions, elments, materials, nodes, sections, main are correctly written.
While analysis step file, has code lines regarding to "fix" and "rigid diaphragrm" with the last line code as follows:
eigen -genBandArpack 3

MPCORecorder: done loading HDF5
loaded symbol "H5check_version".
loaded symbol "H5open".
loaded symbol "H5Screate_simple".
loaded symbol "H5Sclose".
loaded symbol "H5Acreate2".
loaded symbol "H5Awrite".
loaded symbol "H5Aclose".
loaded symbol "H5Tcopy".
loaded symbol "H5Tset_size".
loaded symbol "H5Tset_strpad".
loaded symbol "H5Gcreate2".
loaded symbol "H5Gclose".
loaded symbol "H5Dcreate2".
loaded symbol "H5Dclose".
loaded symbol "H5Dwrite".
loaded symbol "H5Pcreate".
loaded symbol "H5Pclose".
loaded symbol "H5Pset_link_creation_order".
loaded symbol "H5Pset_libver_bounds".
loaded symbol "H5Fcreate".
loaded symbol "H5Fflush".
loaded symbol "H5Fclose".
loaded symbol "H5Fstart_swmr_write".
loaded symbol "H5T_STD_I32LE_g".
loaded symbol "H5T_NATIVE_INT_g".
loaded symbol "H5T_IEEE_F64LE_g".
loaded symbol "H5T_NATIVE_DOUBLE_g".
loaded symbol "H5T_C_S1_g".
loaded symbol "H5P_CLS_FILE_CREATE_ID_g".
loaded symbol "H5P_CLS_FILE_ACCESS_ID_g".
loaded symbol "H5P_CLS_GROUP_CREATE_ID_g".
Premere un tasto per continuare . . .

STKO Team
Posts: 220
Joined: Tue Oct 29, 2019 8:45 am

Re: Analyses eigen

Post by STKO Team » Thu Nov 14, 2019 10:45 pm

Ok so the problem is not that the analysis is not running... it runs but since the "eigen" analysis is the only one you are running, you don't see any result. Why? because OpenSEES does not automatically call "record" during an "eigen" analysis as it does with standard "analysis" command.

So you need to add a new analysis step of this "customCommand" just after the "eigen" analysis step.
custom_command.PNG
custom_command.PNG (33.99 KiB) Viewed 3529 times

In the editor of the custom command, open the tcl script editor by clicking on the "+" sign on the right, and there just write "record".
open tcl script editor.PNG
open tcl script editor.PNG (4.93 KiB) Viewed 3529 times
record.PNG
record.PNG (18.13 KiB) Viewed 3529 times

Now you should be able to see the results (note that to visualize modes of vibration in post processor, don't forget to ask for the "modesOfVibration" nodal result in the "MPCORecorder" command.
When you will load the output database in the post processor you will see some warnings:
false warnings.PNG
false warnings.PNG (10.81 KiB) Viewed 3529 times

Just ignore them! In the Beta version of STKO the post processor can load the modes of vibration (eigenvectors) but not the eigenvalues and their derived quantities (thus the warning). However this is fixed in the first official release of STKO that will be online in few days.

If you are interested in saving also the eigenvalues (and their derived quantities) in a text file, you can remove the "eigen" command and keep only the "customCommand" where you can replace the simple "record" line, with something more complete:

Code: Select all

# set the required number of eigenvalues here
set num_eigen 5

# run the eigen command and store the resulting eigenvalues
# in the "lambdas" list
set lambdas [eigen $num_eigen]

# manually call record if there is no other analysis after the eigen command.
# unfortunately in opensees the eigen command does not call automatically a record...
puts "record eigen"
record

# process all eigenvalues and obtain periods
# print them to screen and to a file
set out_file [open "eigenvalues.txt" w]
set format_string "%16s%16s%16s%16s"; # used to format the header of the table
set format_double "%16g%16g%16g%16g"; # used to format floating point values of the table
set pi [expr acos(-1.0)]
puts [format $format_string "lambda" "omega" "frequency" "period"]
puts $out_file [format $format_string "lambda" "omega" "frequency" "period"]
for {set i 0} {$i < $num_eigen} {incr i} {
	set lambda [lindex $lambdas $i]
	set omega [expr {sqrt($lambda)}]
	set frequency [expr $omega / 2.0 / $pi]
	set period [expr 1.0 / $frequency]
	puts [format $format_double $lambda $omega $frequency $period]
	puts $out_file [format $format_double $lambda $omega $frequency $period]
}
close $out_file
custom_eigen.PNG
custom_eigen.PNG (58.82 KiB) Viewed 3529 times

Hope this helps!
If you still have problems, reply to this post attaching your .SCD file and I will have a look

STKO Team

CristinaLesevic
Posts: 3
Joined: Sat Nov 16, 2019 5:17 pm

Re: Analyses eigen

Post by CristinaLesevic » Sat Nov 16, 2019 7:44 pm

Thanks, now the eigen model has been built!

CristinaLesevic
Posts: 3
Joined: Sat Nov 16, 2019 5:17 pm

Analyses eigen

Post by CristinaLesevic » Sat Nov 16, 2019 7:52 pm

The same model has been used for a Static Analysis, after having assigned loads. Now the problem is:
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 8(dW: << -nan(ind), dW0: -nan(ind))
Static parameters are:
-Transformation Method
-Reverse C-M Numberer
-BandGeneral SOE
-Newton algorithm
-Energy Increment Test
-Load control
Which can be the problems?
Thk

CristinaLesevic
Posts: 3
Joined: Sat Nov 16, 2019 5:17 pm

Re: Analyses eigen

Post by CristinaLesevic » Sat Nov 16, 2019 7:58 pm

i think that problem are connected with definition of material: I used Concrete07. It's possible?
Because thanks to OpenSees code and Concrete02 the analysis runs.

STKO Team
Posts: 220
Joined: Tue Oct 29, 2019 8:45 am

Re: Analyses eigen

Post by STKO Team » Mon Nov 18, 2019 9:04 am

Dear Cristina,

Yes, It could be that the Concrete07 gives more convergence issue than the Concrete01 or Concrete02. It also happended to me with the ConcreteCM, which is the same as the Concrete07, but with a smooth hysteretic curve and some more control parameters.

If you want to use the Concrete07, make sure you follow these guidelines:
  • fc and ec must be negative, the code will give you a wrong stress-strain curve otherwise
  • ft and et must be positive and et must be >ft/Ec
  • xp and xn should be large values as 10E4, so that the stress responses in tension and compression never reach 0, but apprach to 0 asymptotically.
  • use r to calibrate the fracture energy in tension and compression, smaller values give larger fracture energy

Yulu Liu
Posts: 22
Joined: Fri Nov 15, 2019 6:31 am

Re: Analyses eigen

Post by Yulu Liu » Mon Nov 25, 2019 7:42 am

I know that the modes of vibration are shown with different color in STKO, but I want to plot the modes with certain data, so how can I get the eigen vectors?
Thank you!

MassimoPetracca
Posts: 37
Joined: Wed Jul 24, 2019 11:10 am

Re: Analyses eigen

Post by MassimoPetracca » Mon Nov 25, 2019 10:06 am

Dear Yulu Liu,

I did not understand what you want to achieve...

If you want to plot the eigenvectors, just choose modesOfVibration in the Result dropdown menu (so the eigenvectors will be used as color-map source data) and also in the deformation droodown menu (so the eigenvectors will be used as deformation source data).

If instead you only want to extract the values (i.e. a table of eigenmodes), in the beta-version you cannot do it in STKO (though we are implementing it for the next release).

However the *.mpco output file is actually a HDF5 Database, so it can be open with another free software (HDF View, https://www.hdfgroup.org/downloads/hdfview/#download) that allows you to see the contents of the files (datasets) and export them.
  1. Install HDFView, run it and open (as read-only ) the *.mpco output database
    hv_open.png
    hv_open.png (9.12 KiB) Viewed 3398 times
  2. Open the *.mpco database, choose "all files" as file filter, because we changed the extension from .h5 to .mpco
    hv_open_2.png
    hv_open_2.png (77.5 KiB) Viewed 3398 times
  3. Browse the file tree untill you find the mode that you want
    hv_load.png
    hv_load.png (39.64 KiB) Viewed 3398 times
  4. double-click and you will fin the eigenvector, the 3 columns are the 3 (x y z) components.
    Each row correspond to a node. Which one? Open the ID dataset, and you will find the nodal ID. So if you pick the 2nd row of the MODE_0 dataset, it is the XYZ components of the eigenvector 0 at the node given in the 2nd row of the ID dataset
    hv_exp.png
    hv_exp.png (71.76 KiB) Viewed 3398 times
    There you can export of copy/paste the dataset

Post Reply