Hi,
I have analyzed the model using the OpenSeesSP on Ranger (Supercomputer at TACC).
Since the computer has decommissioned, I have the new allocation on the Stampede (the newest computer).
Do you have any plan to make a compiler for the OpenSeesSP on that machine?
All the best,
Kyungtae Kim
Search found 27 matches
- Mon Feb 11, 2013 1:01 pm
- Forum: Parallel Processing
- Topic: OpenSeesSP on Stampede (TACC)
- Replies: 1
- Views: 2859
- Mon Oct 17, 2011 6:12 pm
- Forum: OpenSees.exe Users
- Topic: Fiber section confined concrete
- Replies: 1
- Views: 1786
Fiber section confined concrete
Hello everyone,
Is there anyone who is familiar with creating a fiber section for an octagonal concrete cross section?
I would like to use a factor to account for confined concrete (core) in defining the core concrete.
The factor will be used to increase the concrete strength.
I am looking for any reference showing the factor or how to define the increase to make the fiber section.
I will appreciate any help on this.
All the best,
Kyungtae Kim
Is there anyone who is familiar with creating a fiber section for an octagonal concrete cross section?
I would like to use a factor to account for confined concrete (core) in defining the core concrete.
The factor will be used to increase the concrete strength.
I am looking for any reference showing the factor or how to define the increase to make the fiber section.
I will appreciate any help on this.
All the best,
Kyungtae Kim
- Wed Jun 22, 2011 9:21 am
- Forum: OpenSees.exe Users
- Topic: equalDOF for local coordinates
- Replies: 2
- Views: 2108
Re: equalDOF for local coordinates
Thank you, Frank
However, I need to constrain only rotation with respect to the local x axis NOT global X.
In this case, do I need to provide the material for this rotation?
Otherwise, how can I constrain the rotation only in the local axis?
However, I need to constrain only rotation with respect to the local x axis NOT global X.
In this case, do I need to provide the material for this rotation?
Otherwise, how can I constrain the rotation only in the local axis?
- Tue Jun 21, 2011 10:53 am
- Forum: OpenSees.exe Users
- Topic: equalDOF for local coordinates
- Replies: 2
- Views: 2108
equalDOF for local coordinates
#..........o node 2 ..............^ Y
#........ /.........................|
#......./...........................|
#......o node 1................... -------> X (Global coordinates, Z is a normal direction of X-Y plane)
I have two nodes at the same location using the zerolength element.
In the local coordinates, the direction from node 1 to node 2 is defined as a longitudinal direction (which is local x).
Also, local z axis is a normal direction of x-y plane.
I want to constrain z-translation in local and theta-x in local.
To do it, I think that the only way is ...
Define the uniaxial material in the local degrees of freedom of 1, 2, 4, 5, 6. Then, Use equalDOF 1 2 3
Otherwise, is there any way NOT defining rotational material in 4, 5, 6 dofs?
#........ /.........................|
#......./...........................|
#......o node 1................... -------> X (Global coordinates, Z is a normal direction of X-Y plane)
I have two nodes at the same location using the zerolength element.
In the local coordinates, the direction from node 1 to node 2 is defined as a longitudinal direction (which is local x).
Also, local z axis is a normal direction of x-y plane.
I want to constrain z-translation in local and theta-x in local.
To do it, I think that the only way is ...
Define the uniaxial material in the local degrees of freedom of 1, 2, 4, 5, 6. Then, Use equalDOF 1 2 3
Otherwise, is there any way NOT defining rotational material in 4, 5, 6 dofs?
- Tue Jun 07, 2011 2:58 pm
- Forum: OpenSees.exe Users
- Topic: WARNING : ran out of memory
- Replies: 1
- Views: 1793
WARNING : ran out of memory
Hi All,
I am trying to create 4 elements of standard brick elements (stdBrick) with uniform size of 20 m.
However, I got the message of ...
WARNING - Node::createDisp() ran out of memory for array of size -6
FATAL Node::getTrialDisp() -- ran out of memory
Is there anyone who knows this problem??
My script is shown below.
--------------------------------------------------------------------------------
wipe
model BasicBuilder -ndm 3 -ndf -3
set origin {}; # coordinates of node 1 in the 1st element
lappend origin 0. 0. 0.
set meshGrid 1; # size of brick element
set nEleX 2; # no. of elements in X direction
set nEleY 2; # no. of elements in Y direction
set nEleZ 1; # no. of elements in Z direction
# Node
set nodeCount 0
for {set k 1} {$k <= [expr $nEleZ+1]} {incr k} {
for {set j 1} {$j <= [expr $nEleY+1]} {incr j} {
for {set i 1} {$i <= [expr $nEleX+1]} {incr i} {
incr nodeCount
set x [expr [lindex $origin 0] + $meshGrid*($i-1)]
set y [expr [lindex $origin 1] + $meshGrid*($j-1)]
set z [expr [lindex $origin 2] + $meshGrid*($k-1)]
node $nodeCount $x $y $z
puts "node $nodeCount $x $y $z"
}
}
}
# Element
set nEle [expr $nEleX * $nEleY * $nEleZ]
puts "Total number of elements = $nEle "
nDMaterial ElasticIsotropic 1 994202.574 0.425;# 1.5
set eleCount 0
for {set k 1} {$k <= $nEleZ} {incr k} {
for {set j 1} {$j <= $nEleY} {incr j} {
for {set i 1} {$i <= $nEleX} {incr i} {
set node1 [expr $i + ($j-1)*($nEleX+1) + ($k-1)*($nEleX+1)*($nEleY+1)]
set node2 [expr $node1+1]
set node3 [expr $node2 + ($nEleX+1)]
set node4 [expr $node3 - 1]
set node5 [expr $node1 + ($nEleX+1)*($nEleY+1)]
set node6 [expr $node2 + ($nEleX+1)*($nEleY+1)]
set node7 [expr $node3 + ($nEleX+1)*($nEleY+1)]
set node8 [expr $node4 + ($nEleX+1)*($nEleY+1)]
incr eleCount
puts "$eleCount"
element stdBrick $eleCount $node1 $node2 $node3 $node4 $node5 $node6 $node7 $node8 1
puts "$eleCount $node1 $node2 $node3 $node4 $node5 $node6 $node7 $node8 1"
}
}
}
I am trying to create 4 elements of standard brick elements (stdBrick) with uniform size of 20 m.
However, I got the message of ...
WARNING - Node::createDisp() ran out of memory for array of size -6
FATAL Node::getTrialDisp() -- ran out of memory
Is there anyone who knows this problem??
My script is shown below.
--------------------------------------------------------------------------------
wipe
model BasicBuilder -ndm 3 -ndf -3
set origin {}; # coordinates of node 1 in the 1st element
lappend origin 0. 0. 0.
set meshGrid 1; # size of brick element
set nEleX 2; # no. of elements in X direction
set nEleY 2; # no. of elements in Y direction
set nEleZ 1; # no. of elements in Z direction
# Node
set nodeCount 0
for {set k 1} {$k <= [expr $nEleZ+1]} {incr k} {
for {set j 1} {$j <= [expr $nEleY+1]} {incr j} {
for {set i 1} {$i <= [expr $nEleX+1]} {incr i} {
incr nodeCount
set x [expr [lindex $origin 0] + $meshGrid*($i-1)]
set y [expr [lindex $origin 1] + $meshGrid*($j-1)]
set z [expr [lindex $origin 2] + $meshGrid*($k-1)]
node $nodeCount $x $y $z
puts "node $nodeCount $x $y $z"
}
}
}
# Element
set nEle [expr $nEleX * $nEleY * $nEleZ]
puts "Total number of elements = $nEle "
nDMaterial ElasticIsotropic 1 994202.574 0.425;# 1.5
set eleCount 0
for {set k 1} {$k <= $nEleZ} {incr k} {
for {set j 1} {$j <= $nEleY} {incr j} {
for {set i 1} {$i <= $nEleX} {incr i} {
set node1 [expr $i + ($j-1)*($nEleX+1) + ($k-1)*($nEleX+1)*($nEleY+1)]
set node2 [expr $node1+1]
set node3 [expr $node2 + ($nEleX+1)]
set node4 [expr $node3 - 1]
set node5 [expr $node1 + ($nEleX+1)*($nEleY+1)]
set node6 [expr $node2 + ($nEleX+1)*($nEleY+1)]
set node7 [expr $node3 + ($nEleX+1)*($nEleY+1)]
set node8 [expr $node4 + ($nEleX+1)*($nEleY+1)]
incr eleCount
puts "$eleCount"
element stdBrick $eleCount $node1 $node2 $node3 $node4 $node5 $node6 $node7 $node8 1
puts "$eleCount $node1 $node2 $node3 $node4 $node5 $node6 $node7 $node8 1"
}
}
}
- Fri Nov 19, 2010 12:49 pm
- Forum: Documentation
- Topic: Control damping
- Replies: 1
- Views: 3835
Control damping
Hi, all
I am working on a bridge modeling.
For a 5% damping ratio, I used 'region' command with parameters following.. for all elements.
# RAYLEIGH damping parameters,
# D=$alphaM*M + $betaKcurr*Kcurrent + $betaKcomm*KlastCommit + $beatKinit*$Kinitial
set xDamp 0.05; # damping ratio
set MpropSwitch 1.0;
set KcurrSwitch 0.0;
set KcommSwitch 1.0;
set KinitSwitch 0.0;
set nEigenI 1; # mode 1
set nEigenJ 3; # mode 3
set lambdaN [eigen [expr $nEigenJ]]; # eigenvalue analysis for nEigenJ modes
set lambdaI [lindex $lambdaN [expr $nEigenI-1]]; # eigenvalue mode i
set lambdaJ [lindex $lambdaN [expr $nEigenJ-1]]; # eigenvalue mode j
set omegaI [expr pow($lambdaI,0.5)];
set omegaJ [expr pow($lambdaJ,0.5)];
set alphaM [expr $MpropSwitch*$xDamp*(2*$omegaI*$omegaJ)/($omegaI+$omegaJ)]; # M-prop. damping; D = alphaM*M
set betaKcurr [expr $KcurrSwitch*2.*$xDamp/($omegaI+$omegaJ)]; # current-K; +beatKcurr*KCurrent
set betaKcomm [expr $KcommSwitch*2.*$xDamp/($omegaI+$omegaJ)]; # last-committed K; +betaKcomm*KlastCommitt
set betaKinit [expr $KinitSwitch*2.*$xDamp/($omegaI+$omegaJ)]; # initial-K; +beatKinit*Kini
rayleigh $alphaM $betaKcurr $betaKinit $betaKcomm; # RAYLEIGH damping
However, I would like to assign a different damping ratio, for example, of 2% to some of zerolength elements with keeping the 5% damping for other elements.
For this control, do I need to change only 'set xDamp 0.05' into 'set xDamp 0.02'?
Then, assign new parameters obtained the above into zerolength elements using 'region' command?
Is it a right way?
Otherwise, I will appreciate any suggestion on this work.
All the best,
I am working on a bridge modeling.
For a 5% damping ratio, I used 'region' command with parameters following.. for all elements.
# RAYLEIGH damping parameters,
# D=$alphaM*M + $betaKcurr*Kcurrent + $betaKcomm*KlastCommit + $beatKinit*$Kinitial
set xDamp 0.05; # damping ratio
set MpropSwitch 1.0;
set KcurrSwitch 0.0;
set KcommSwitch 1.0;
set KinitSwitch 0.0;
set nEigenI 1; # mode 1
set nEigenJ 3; # mode 3
set lambdaN [eigen [expr $nEigenJ]]; # eigenvalue analysis for nEigenJ modes
set lambdaI [lindex $lambdaN [expr $nEigenI-1]]; # eigenvalue mode i
set lambdaJ [lindex $lambdaN [expr $nEigenJ-1]]; # eigenvalue mode j
set omegaI [expr pow($lambdaI,0.5)];
set omegaJ [expr pow($lambdaJ,0.5)];
set alphaM [expr $MpropSwitch*$xDamp*(2*$omegaI*$omegaJ)/($omegaI+$omegaJ)]; # M-prop. damping; D = alphaM*M
set betaKcurr [expr $KcurrSwitch*2.*$xDamp/($omegaI+$omegaJ)]; # current-K; +beatKcurr*KCurrent
set betaKcomm [expr $KcommSwitch*2.*$xDamp/($omegaI+$omegaJ)]; # last-committed K; +betaKcomm*KlastCommitt
set betaKinit [expr $KinitSwitch*2.*$xDamp/($omegaI+$omegaJ)]; # initial-K; +beatKinit*Kini
rayleigh $alphaM $betaKcurr $betaKinit $betaKcomm; # RAYLEIGH damping
However, I would like to assign a different damping ratio, for example, of 2% to some of zerolength elements with keeping the 5% damping for other elements.
For this control, do I need to change only 'set xDamp 0.05' into 'set xDamp 0.02'?
Then, assign new parameters obtained the above into zerolength elements using 'region' command?
Is it a right way?
Otherwise, I will appreciate any suggestion on this work.
All the best,
- Wed Oct 06, 2010 10:43 am
- Forum: OpenSees.exe Users
- Topic: Eigenvalues at a certain step in dynamic analysis
- Replies: 1
- Views: 1982
Eigenvalues at a certain step in dynamic analysis
Hi, all
I am looking up an eigenvalue at a certain step in dynamic analysis.
For example, I am using an uniform excitation load pattern which has 878 time steps.
I am interested in the eigenvalue exactly at a 478 step.
I write down following..
...
pattern UniformExcitation 2 1 -accel $Gaccel1
pattern UniformExcitation 3 2 -accel $Gaccel2
pattern UniformExcitation 4 3 -accel $Gaccel3
#wipe analysis
constraints Penalty 1.0e+18 1.0e+18
numberer RCM
system UmfPack
test EnergyIncr 1.0e-6 20 0
algorithm KrylovNewton
integrator Newmark 0.5 0.25
analysis VariableTransient
set ok [analyze 477 0.02]
set controlTime [getTime]
puts "$controlTime"
# recorder
eval "recorder Node -file eigenvector1.out -node all -dof 1 2 3 \"eigen 1\" "
eval "recorder Node -file eigenvector2.out -node all -dof 1 2 3 \"eigen 2\" "
eval "recorder Node -file eigenvector3.out -node all -dof 1 2 3 \"eigen 3\" "
eval "recorder Node -file eigenvector4.out -node all -dof 1 2 3 \"eigen 4\" "
eval "recorder Node -file eigenvector5.out -node all -dof 1 2 3 \"eigen 5\" "
eval "recorder Node -file eigenvector6.out -node all -dof 1 2 3 \"eigen 6\" "
set ok [analyze 399 0.02]
set controlTime [getTime]
puts "$controlTime"
---------------------------------------------------------------
Is it a right way?
Otherwise, I will appreciate any suggestion on this.
All the best,
I am looking up an eigenvalue at a certain step in dynamic analysis.
For example, I am using an uniform excitation load pattern which has 878 time steps.
I am interested in the eigenvalue exactly at a 478 step.
I write down following..
...
pattern UniformExcitation 2 1 -accel $Gaccel1
pattern UniformExcitation 3 2 -accel $Gaccel2
pattern UniformExcitation 4 3 -accel $Gaccel3
#wipe analysis
constraints Penalty 1.0e+18 1.0e+18
numberer RCM
system UmfPack
test EnergyIncr 1.0e-6 20 0
algorithm KrylovNewton
integrator Newmark 0.5 0.25
analysis VariableTransient
set ok [analyze 477 0.02]
set controlTime [getTime]
puts "$controlTime"
# recorder
eval "recorder Node -file eigenvector1.out -node all -dof 1 2 3 \"eigen 1\" "
eval "recorder Node -file eigenvector2.out -node all -dof 1 2 3 \"eigen 2\" "
eval "recorder Node -file eigenvector3.out -node all -dof 1 2 3 \"eigen 3\" "
eval "recorder Node -file eigenvector4.out -node all -dof 1 2 3 \"eigen 4\" "
eval "recorder Node -file eigenvector5.out -node all -dof 1 2 3 \"eigen 5\" "
eval "recorder Node -file eigenvector6.out -node all -dof 1 2 3 \"eigen 6\" "
set ok [analyze 399 0.02]
set controlTime [getTime]
puts "$controlTime"
---------------------------------------------------------------
Is it a right way?
Otherwise, I will appreciate any suggestion on this.
All the best,
- Wed Sep 15, 2010 9:47 am
- Forum: OpenSees.exe Users
- Topic: zerolength element
- Replies: 1
- Views: 1899
zerolength element
Hi, all
I am modeling a simple bridge with a intermediate hinge.
The hinge skews with a 45 degree with respect to a global coordinate.
To connect node 1 and node 2 at the hinge, I used the zerolength element.
< Case 1 >
uniaxialMaterial ElasticPPGap 302 4.529e+004 [expr 3478.5/3.] 0.0127
uniaxialMaterial ElasticPPGap 304 4.529e+006 [expr -3478.5/3.] 0.
uniaxialMaterial Parallel 307 302 304
uniaxialMaterial Elastic 308 4.529e+010
element zeroLength 1 1 2 -mat 307 308 -dir 1 2 -orient 0.707107 0.707107 0 -0.707107 0.707107 0
equalDOF 12 19 3 4 5 6
...................................................
It's because the vector of local x of zerolength element is defined with a 45 degree.
Moreover, I tried a different way where
< Case 2 >
element zeroLength 1 1 2 -mat 307 -dir 1
equalDOF 1 2 2 3 4 5 6
.............................................
Compared with the case 1, case 2 had the same results.
Here is my question.
If I did not assign the local x coordinate of the zerolength element in Case 2,
what is the vector of the local x of the element?
I think it might be the same as a vector of global X because two nodes locate at the same coordinates and the material direction is defined with 1st degree of freedom.
However, responses of the element are same...That's not my expect..
Could you clarify me?
I am modeling a simple bridge with a intermediate hinge.
The hinge skews with a 45 degree with respect to a global coordinate.
To connect node 1 and node 2 at the hinge, I used the zerolength element.
< Case 1 >
uniaxialMaterial ElasticPPGap 302 4.529e+004 [expr 3478.5/3.] 0.0127
uniaxialMaterial ElasticPPGap 304 4.529e+006 [expr -3478.5/3.] 0.
uniaxialMaterial Parallel 307 302 304
uniaxialMaterial Elastic 308 4.529e+010
element zeroLength 1 1 2 -mat 307 308 -dir 1 2 -orient 0.707107 0.707107 0 -0.707107 0.707107 0
equalDOF 12 19 3 4 5 6
...................................................
It's because the vector of local x of zerolength element is defined with a 45 degree.
Moreover, I tried a different way where
< Case 2 >
element zeroLength 1 1 2 -mat 307 -dir 1
equalDOF 1 2 2 3 4 5 6
.............................................
Compared with the case 1, case 2 had the same results.
Here is my question.
If I did not assign the local x coordinate of the zerolength element in Case 2,
what is the vector of the local x of the element?
I think it might be the same as a vector of global X because two nodes locate at the same coordinates and the material direction is defined with 1st degree of freedom.
However, responses of the element are same...That's not my expect..
Could you clarify me?
- Tue Jul 27, 2010 11:17 am
- Forum: OpenSees.exe Users
- Topic: Elastic-Perfectly Plastic Material
- Replies: 1
- Views: 2015
Elastic-Perfectly Plastic Material
Hi, all
I am just checking the elastoplastic material as a hook for a expansion joint by using the zero-length element.
A model is very simple following :
wipe
model BasicBuilder -ndm 2 -ndf 3
# Column
set Ac 3.3428e+1
set Ic 2.195e+1
set Ec 20.0e+10
# Shear keys
uniaxialMaterial ElasticPP 13 1.08e+6 3.4259e-3
node 1 0. 0.
node 2 0. 10.
node 3 0. 10.
fix 1 1 1 1
set transfColumn 2
geomTransf Linear $transfColumn
element elasticBeamColumn 1 1 2 $Ac $Ec $Ic $transfColumn
element zeroLength 2 2 3 -mat 13 -dir 1
equalDOF 2 3 2 3
pattern Plain 100 Linear {
load 3 100 0. 0.
}
recorder Node -file disp.txt -node 1 2 3 -dof 1 2 3 disp
recorder Element -file force.txt -ele 2 force
constraints Penalty 1.0e+18 1.0e+18
numberer Plain
system BandGeneral
integrator DisplacementControl 3 1 0.0001
#integrator LoadControl 0000.1
test EnergyIncr 1.e-6 10 0
algorithm Newton
analysis Static
set ok [analyze 1000]
------------------------------------------
The output just comes out only with a elastic range.
To look at a plastic part, how can I do?
I will appreciate any comments on that.
I am just checking the elastoplastic material as a hook for a expansion joint by using the zero-length element.
A model is very simple following :
wipe
model BasicBuilder -ndm 2 -ndf 3
# Column
set Ac 3.3428e+1
set Ic 2.195e+1
set Ec 20.0e+10
# Shear keys
uniaxialMaterial ElasticPP 13 1.08e+6 3.4259e-3
node 1 0. 0.
node 2 0. 10.
node 3 0. 10.
fix 1 1 1 1
set transfColumn 2
geomTransf Linear $transfColumn
element elasticBeamColumn 1 1 2 $Ac $Ec $Ic $transfColumn
element zeroLength 2 2 3 -mat 13 -dir 1
equalDOF 2 3 2 3
pattern Plain 100 Linear {
load 3 100 0. 0.
}
recorder Node -file disp.txt -node 1 2 3 -dof 1 2 3 disp
recorder Element -file force.txt -ele 2 force
constraints Penalty 1.0e+18 1.0e+18
numberer Plain
system BandGeneral
integrator DisplacementControl 3 1 0.0001
#integrator LoadControl 0000.1
test EnergyIncr 1.e-6 10 0
algorithm Newton
analysis Static
set ok [analyze 1000]
------------------------------------------
The output just comes out only with a elastic range.
To look at a plastic part, how can I do?
I will appreciate any comments on that.
- Wed Apr 21, 2010 3:08 pm
- Forum: OpenSees.exe Users
- Topic: Multiple Support Excitation
- Replies: 25
- Views: 14853
- Tue Apr 20, 2010 3:50 pm
- Forum: OpenSees.exe Users
- Topic: Multiple Support Excitation
- Replies: 25
- Views: 14853
Unit : meter
dt : 0.02
numbers are quite small...
from 0.02 sec.
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000001
0.000001
0.000001
0.000001
0.000000
0.000000
0.000000
-0.000001
-0.000002
-0.000003
-0.000003
-0.000004
-0.000005
-0.000006
-0.000006
-0.000007
-0.000007
-0.000007
-0.000007
-0.000008
-0.000008
-0.000008
-0.000008
-0.000008
-0.000008
-0.000009
-0.000009
-0.000009
-0.000009
-0.000010
-0.000010
-0.000011
....
dt : 0.02
numbers are quite small...
from 0.02 sec.
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000001
0.000001
0.000001
0.000001
0.000000
0.000000
0.000000
-0.000001
-0.000002
-0.000003
-0.000003
-0.000004
-0.000005
-0.000006
-0.000006
-0.000007
-0.000007
-0.000007
-0.000007
-0.000008
-0.000008
-0.000008
-0.000008
-0.000008
-0.000008
-0.000009
-0.000009
-0.000009
-0.000009
-0.000010
-0.000010
-0.000011
....
- Tue Apr 20, 2010 1:43 pm
- Forum: OpenSees.exe Users
- Topic: Multiple Support Excitation
- Replies: 25
- Views: 14853
I am sorry to bother you again.
Would you check it out?
Since I applied an input to the base in the X direction.
I released the corresponding dof and used constraints of Penalty.
I did not scale the input.
If I changed the constraints into Transformation, I got almost zero displacements...
Why..?
#---------------------------------------------------------------------------------------
wipe
model BasicBuilder -ndm 3 -ndf 6
node 1 0. 0. 0. -mass 0. 0. 0. 0. 0. 0.
node 2 0. 0. 10. -mass 180.617 180.617 180.617 0. 0. 0.
node 3 0. 0. 20. -mass 180.617 180.617 180.617 0. 0. 0.
fix 1 0 1 1 1 1 1
geomTransf Linear 1 0. 1. 0.
element elasticBeamColumn 1 1 2 3.669 33094834.944 13789514.56 2.305 1.778 0.872 1
element elasticBeamColumn 2 2 3 3.669 33094834.944 13789514.56 2.305 1.778 0.872 1
set nEigenI 1
set nEigenJ 1
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 lambda1 [lindex $lambdaN 0]
set omega1 [expr pow($lambda1,0.5)]
set PI 3.141592654
set freq1 [expr $omega1/2/$PI]
puts "Natural frequency = $freq1"
set xDamp 0.05
set MpropSwitch 1.0
set KcurrSwitch 0.0
set KcommSwitch 0.0
set KinitSwitch 1.0
set alphaM [expr $MpropSwitch*$xDamp*(2*$omegaI*$omegaJ)/($omegaI+$omegaJ)]
set betaKcurr [expr $KcurrSwitch*2.*$xDamp/($omegaI+$omegaJ)]
set betaKcomm [expr $KcommSwitch*2.*$xDamp/($omegaI+$omegaJ)]
set betaKinit [expr $KinitSwitch*2.*$xDamp/($omegaI+$omegaJ)]
rayleigh $alphaM $betaKcurr $betaKinit $betaKcomm
puts "rayleigh $alphaM $betaKcurr $betaKinit $betaKcomm"
# recorder
recorder Node -file topNode_multi.acc -time -node 3 -dof 1 2 3 accel
recorder Node -file topNode_multi.txt -time -node 3 -dof 1 2 3 disp
# Multiple Support Excitation
set GMfact [expr 1.]
pattern MultipleSupport 1 {
set DispSeries "Series -dt 0.02 -filePath xdisp_center.out -factor $GMfact"
groundMotion 1 Plain -disp $DispSeries
imposedMotion 1 1 1
}
#constraints Penalty 1.0e+18 1.0e+18
constraints Transformation
numberer RCM
system BandGeneral
test NormDispIncr 1.0e-3 20 1
algorithm ModifiedNewton
integrator Newmark 0.5 0.25
analysis VariableTransient
analyze 877 0.02 0.00015 0.02 20
Would you check it out?
Since I applied an input to the base in the X direction.
I released the corresponding dof and used constraints of Penalty.
I did not scale the input.
If I changed the constraints into Transformation, I got almost zero displacements...
Why..?
#---------------------------------------------------------------------------------------
wipe
model BasicBuilder -ndm 3 -ndf 6
node 1 0. 0. 0. -mass 0. 0. 0. 0. 0. 0.
node 2 0. 0. 10. -mass 180.617 180.617 180.617 0. 0. 0.
node 3 0. 0. 20. -mass 180.617 180.617 180.617 0. 0. 0.
fix 1 0 1 1 1 1 1
geomTransf Linear 1 0. 1. 0.
element elasticBeamColumn 1 1 2 3.669 33094834.944 13789514.56 2.305 1.778 0.872 1
element elasticBeamColumn 2 2 3 3.669 33094834.944 13789514.56 2.305 1.778 0.872 1
set nEigenI 1
set nEigenJ 1
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 lambda1 [lindex $lambdaN 0]
set omega1 [expr pow($lambda1,0.5)]
set PI 3.141592654
set freq1 [expr $omega1/2/$PI]
puts "Natural frequency = $freq1"
set xDamp 0.05
set MpropSwitch 1.0
set KcurrSwitch 0.0
set KcommSwitch 0.0
set KinitSwitch 1.0
set alphaM [expr $MpropSwitch*$xDamp*(2*$omegaI*$omegaJ)/($omegaI+$omegaJ)]
set betaKcurr [expr $KcurrSwitch*2.*$xDamp/($omegaI+$omegaJ)]
set betaKcomm [expr $KcommSwitch*2.*$xDamp/($omegaI+$omegaJ)]
set betaKinit [expr $KinitSwitch*2.*$xDamp/($omegaI+$omegaJ)]
rayleigh $alphaM $betaKcurr $betaKinit $betaKcomm
puts "rayleigh $alphaM $betaKcurr $betaKinit $betaKcomm"
# recorder
recorder Node -file topNode_multi.acc -time -node 3 -dof 1 2 3 accel
recorder Node -file topNode_multi.txt -time -node 3 -dof 1 2 3 disp
# Multiple Support Excitation
set GMfact [expr 1.]
pattern MultipleSupport 1 {
set DispSeries "Series -dt 0.02 -filePath xdisp_center.out -factor $GMfact"
groundMotion 1 Plain -disp $DispSeries
imposedMotion 1 1 1
}
#constraints Penalty 1.0e+18 1.0e+18
constraints Transformation
numberer RCM
system BandGeneral
test NormDispIncr 1.0e-3 20 1
algorithm ModifiedNewton
integrator Newmark 0.5 0.25
analysis VariableTransient
analyze 877 0.02 0.00015 0.02 20
- Tue Apr 20, 2010 12:51 pm
- Forum: OpenSees.exe Users
- Topic: Multiple Support Excitation
- Replies: 25
- Views: 14853
- Tue Apr 20, 2010 11:09 am
- Forum: OpenSees.exe Users
- Topic: Multiple Support Excitation
- Replies: 25
- Views: 14853
- Tue Apr 20, 2010 11:01 am
- Forum: OpenSees.exe Users
- Topic: Multiple Support Excitation
- Replies: 25
- Views: 14853