Issues on the Stiffness Matrix Extraction & Output
Moderators: silvia, selimgunay, Moderators
Issues on the Stiffness Matrix Extraction & Output
Hi All,
I wanna extract the stiffness matrix in the transient analysis of the concrete-filled steel tube in each tiny time step. And I found the "basic stiffness" command is valid in the 2D model. I found it not useful anymore in the 3D model, however.
In detail, the corresponding script are listed as follows:
set IDloadTag 1001;
set dt [expr 0.02]
set iGMfile "Elcentro_EW.txt";
set iGMdirection "2";
foreach pga {26.0 27.0 28.0 29.0 30.0} {
wipeAnalysis
puts [format "The PGA is %3.2f g" $pga]
recorder Node -file [format "$dataDir/CFSTearthquake_ALLNODEradialdisplacement-%4.3f.txt" $pga] -time -nodeRange 1 [expr ($Elenumber+1)] -dof 2 disp
recorder Element -file [format "$dataDir/CFSTearthquake_localForce-%4.3f.txt" $pga] -time -eleRange 1 $Elenumber basicForce
recorder Node -file [format "$dataDir/CFSTearthquake_response-%4.3f.out" $pga] -time -node [expr ($Elenumber/2+1)] -dof 2 disp
recorder plot [format "$dataDir/CFSTearthquake_response-%4.3f.out" $pga] PGA_Max.Disp 650 0 710 390 -columns 1 2
recorder Element -file [format "$dataDir/CFSTearthquake_matrix-%4.3f.txt" $pga] -time -eleRange 1 $Elenumber basicStiffness;
setTime 0.0
set GMfatt [expr 4.67 * $g * $pga]
set tabasFN "Path -filePath Elcentro_EW.txt -dt $dt -factor $GMfatt"
#Define the excitation using the 960 ground motion records
# tag dir accel series args
pattern UniformExcitation $IDloadTag $iGMdirection -accel $tabasFN
puts EigenvalueAnalysis
set xDamp 0.05;
set nEigenI 1;
set nEigenJ 2;
set lambdaN [eigen [expr $nEigenJ]];
set lambdaI [lindex $lambdaN [expr $nEigenI-1]];
set lambdaJ [lindex $lambdaN [expr $nEigenJ-1]];
set omegaI [expr pow($lambdaI,0.5)];
set omegaJ [expr pow($lambdaJ,0.5)];
set alphaM [expr $xDamp*(2*$omegaI*$omegaJ)/($omegaI+$omegaJ)];
set betaKcurr [expr 2.*$xDamp/($omegaI+$omegaJ)];
rayleigh $alphaM $betaKcurr 0 0
test EnergyIncr 1.0e-1 30 5
# Create the solution algorithm
algorithm Newton
# Create the system of equation storage and solver
system SparseGeneral -piv
# Create the constraint handler
constraints Transformation
# Create the time integration scheme
integrator Newmark 0.5 0.25
# Create the DOF numberer
numberer RCM
# create the transient analysis
analysis VariableTransient -numSublevels 20 -numSubSteps 20
As I said before, the basicstiffness command can only be used in model basic -ndm 2 -ndf 3 instead of model basic -ndm 3 -ndf 6. I thought it should be the new command needed in the 3D model. Anyone can help me with that? Thanks a lot.
Xu
I wanna extract the stiffness matrix in the transient analysis of the concrete-filled steel tube in each tiny time step. And I found the "basic stiffness" command is valid in the 2D model. I found it not useful anymore in the 3D model, however.
In detail, the corresponding script are listed as follows:
set IDloadTag 1001;
set dt [expr 0.02]
set iGMfile "Elcentro_EW.txt";
set iGMdirection "2";
foreach pga {26.0 27.0 28.0 29.0 30.0} {
wipeAnalysis
puts [format "The PGA is %3.2f g" $pga]
recorder Node -file [format "$dataDir/CFSTearthquake_ALLNODEradialdisplacement-%4.3f.txt" $pga] -time -nodeRange 1 [expr ($Elenumber+1)] -dof 2 disp
recorder Element -file [format "$dataDir/CFSTearthquake_localForce-%4.3f.txt" $pga] -time -eleRange 1 $Elenumber basicForce
recorder Node -file [format "$dataDir/CFSTearthquake_response-%4.3f.out" $pga] -time -node [expr ($Elenumber/2+1)] -dof 2 disp
recorder plot [format "$dataDir/CFSTearthquake_response-%4.3f.out" $pga] PGA_Max.Disp 650 0 710 390 -columns 1 2
recorder Element -file [format "$dataDir/CFSTearthquake_matrix-%4.3f.txt" $pga] -time -eleRange 1 $Elenumber basicStiffness;
setTime 0.0
set GMfatt [expr 4.67 * $g * $pga]
set tabasFN "Path -filePath Elcentro_EW.txt -dt $dt -factor $GMfatt"
#Define the excitation using the 960 ground motion records
# tag dir accel series args
pattern UniformExcitation $IDloadTag $iGMdirection -accel $tabasFN
puts EigenvalueAnalysis
set xDamp 0.05;
set nEigenI 1;
set nEigenJ 2;
set lambdaN [eigen [expr $nEigenJ]];
set lambdaI [lindex $lambdaN [expr $nEigenI-1]];
set lambdaJ [lindex $lambdaN [expr $nEigenJ-1]];
set omegaI [expr pow($lambdaI,0.5)];
set omegaJ [expr pow($lambdaJ,0.5)];
set alphaM [expr $xDamp*(2*$omegaI*$omegaJ)/($omegaI+$omegaJ)];
set betaKcurr [expr 2.*$xDamp/($omegaI+$omegaJ)];
rayleigh $alphaM $betaKcurr 0 0
test EnergyIncr 1.0e-1 30 5
# Create the solution algorithm
algorithm Newton
# Create the system of equation storage and solver
system SparseGeneral -piv
# Create the constraint handler
constraints Transformation
# Create the time integration scheme
integrator Newmark 0.5 0.25
# Create the DOF numberer
numberer RCM
# create the transient analysis
analysis VariableTransient -numSublevels 20 -numSubSteps 20
As I said before, the basicstiffness command can only be used in model basic -ndm 2 -ndf 3 instead of model basic -ndm 3 -ndf 6. I thought it should be the new command needed in the 3D model. Anyone can help me with that? Thanks a lot.
Xu
Re: Issues on the Stiffness Matrix Extraction & Output
This recorder option is not implemented for all elements. Which element are you using?
Re: Issues on the Stiffness Matrix Extraction & Output
Hi Scott,
Thanks for your response. The element I used is Displacement-Based Beam-Column Element.
Xu
Thanks for your response. The element I used is Displacement-Based Beam-Column Element.
Xu
Re: Issues on the Stiffness Matrix Extraction & Output
I have the same question.
Re: Issues on the Stiffness Matrix Extraction & Output
In that same problem I find myself when I go to the 3D model, they mentioned that some variables there to overwrite them
-
- Posts: 916
- Joined: Mon Sep 09, 2013 8:50 pm
- Location: University of California, Berkeley
Re: Issues on the Stiffness Matrix Extraction & Output
You can also use the printA command for the structure stiffness matrix.
https://opensees.berkeley.edu/wiki/inde ... tA_Command
https://opensees.berkeley.edu/wiki/inde ... tA_Command
Re: Issues on the Stiffness Matrix Extraction & Output
Thanks all. I have solved the aforementioned problem by coding new functions in Opensees.
-
- Posts: 916
- Joined: Mon Sep 09, 2013 8:50 pm
- Location: University of California, Berkeley
Re: Issues on the Stiffness Matrix Extraction & Output
That sounds great. Did you code the new functions in the source code? If so, you can approach Frank McKenna and Michael Scott for potential implementation of your functions in the standard OpenSees version
Re: Issues on the Stiffness Matrix Extraction & Output
Thanks for your advice. I found that OPENSEES stores the tangential stiffness of the element in each step of the structural analysis (at least for the beam element), but there is no output function. Therefore, it is only necessary to output the tangent stiffness items of each unit to the panel by using output commands and assemble them together to form a structural stiffness matrix. Above modified part are updated in "commands.app" within the "Opensees.sln" and re-generate the executable file.selimgunay wrote: ↑Mon Aug 09, 2021 5:37 pm That sounds great. Did you code the new functions in the source code? If so, you can approach Frank McKenna and Michael Scott for potential implementation of your functions in the standard OpenSees version