joint2D element ; panel zone, rotation of beam ends
Moderators: silvia, selimgunay, Moderators
I bring an example here: (this is not my model. my model is a lumped plasticity model)
in this model if you ignore only the 4 equalDOF command lines there will be no error for the Joint2D s although the nodes constrained together by equalDOF have no kind of connection or relation to the joint nodes.
in this case you see no errors but you get a period above 1 million seconds !!! what should be done for this model for example?
#3story,3 bay RCS frame
#Build model-----------------------------------------------------------------------------------------------------------------------------
wipe
model BasicBuilder -ndm 2 -ndf 3;
set dataDir Data;
file mkdir $dataDir;
#source DisplayPlane.tcl;
#source DisplayModel2D.tcl;
set N 1;
set m 1;
set sec 1;
set m2 [expr $m*$m];
set m3 [expr $m*$m*$m]
set m4 [expr $m*$m*$m*$m];
set kg [expr 10*$N]
set g [expr 9.81*$m/pow($sec,2)];
set ubig 1e10;
set usmall [expr 1/$ubig];
set Weight [expr 2940000*$N];
set Wroof [expr 2881200*$N];
set PCol [expr $Weight/4];
set Mass [expr $PCol/$g];
set PColR [expr $Wroof/4];
set MassR [expr $PColR/$g];
# define nodal coordinates
node 1 0 0
node 2 7 0
node 3 14 0
node 4 21 0
node 5 0.325 4
node 6 0 4.3
node 7 -0.325 4
node 8 0 3.7
node 9 7.325 4
node 10 7 4.3
node 11 6.675 4
node 12 7 3.7
node 13 14.325 4
node 14 14 4.3
node 15 13.675 4
node 16 14 3.7
node 17 21.325 4
node 18 21 4.3
node 19 20.675 4
node 20 21 3.7
node 21 0.325 8
node 22 0 8.25
node 23 -0.325 8
node 24 0 7.75
node 25 7.325 8
node 26 7 8.25
node 27 6.675 8
node 28 7 7.75
node 29 14.325 8
node 30 14 8.25
node 31 13.675 8
node 32 14 7.75
node 33 21.325 8
node 34 21 8.25
node 35 20.675 8
node 36 21 7.75
node 37 0.325 12
node 38 0 12.2
node 39 -0.325 12
node 40 0 11.8
node 41 7.325 12
node 42 7 12.2
node 43 6.675 12
node 44 7 11.8
node 45 14.325 12
node 46 14 12.2
node 47 13.675 12
node 48 14 11.8
node 49 21.325 12
node 50 21 12.2
node 51 20.675 12
node 52 21 11.8
node 53 22.5 0
node 54 22.5 4
node 55 22.5 8
node 56 22.5 12
node 57 0 0
node 58 7 0
node 59 14 0
node 60 21 0
##################################
##### these 4 lines affect joints' errors########
##################################
#equalDOF 1 57 1 2;
#equalDOF 2 58 1 2;
#equalDOF 3 59 1 2;
#equalDOF 4 60 1 2;
# assign masses to the nodes that the columns are connected to
# each connection takes the mass of 1/2 of each element framing into it (mass=weight/$g)
mass 6 $Mass 0 0;
mass 10 $Mass 0 0;
mass 14 $Mass 0 0;
mass 18 $Mass 0 0;
mass 22 $Mass 0 0;
mass 26 $Mass 0 0;
mass 30 $Mass 0 0;
mass 34 $Mass 0 0;
mass 38 $MassR 0 0;
mass 42 $MassR 0 0;
mass 46 $MassR 0 0;
mass 50 $MassR 0 0;
set NStory 3; # number of stories
set NBay 3; # number of bays
# BOUNDARY CONDITIONS
fix 1 1 1 1
fix 2 1 1 1
fix 3 1 1 1
fix 4 1 1 1
fix 53 1 1 0
# Define ELEMENTS & SECTIONS -------------------------------------------------------------
set ColSecTag1 1;
set ColSecTag2 2;
set ColSecTag3 3;
set BeamSecTag1 4;
set BeamSecTag2 5;
set BeamSecTag3 6;
# define MATERIAL properties ----------------------------------------
#beam
set Fy [expr 385000000*$N/$m2];
set Es [expr 200000000000*$N/$m2];
set Bs 0.02;
set R0 18.5;
set cR1 0.925;
set cR2 0.15;
set matIDhard 1
uniaxialMaterial Steel02 $matIDhard $Fy $Es $Bs $R0 $cR1 $cR2 0 1 0 1;
#reinforcement
set Fy1 [expr 525000000*$N/$m2];
set Es1 [expr 200000000000*$N/$m2];
set Bs1 0.02;
set R01 18.5;
set cR11 0.925;
set cR21 0.15;
uniaxialMaterial Steel02 2 $Fy1 $Es1 $Bs1 $R01 $cR11 $cR21 0 1 0 1;
# Cover concrete
# tag -f'c -epsco -f'cu -epscu
set x [expr -34000000*$N/$m2];
uniaxialMaterial Concrete02 3 $x -0.002 0 -0.01 0.1 0.0 0.0;
#core concrete
set fc [expr -42000000*$N/$m2]
set fc1U $fc;
set eps1U -0.002095;
set fc2U [expr 7478130*$N/$m2];
set eps2U -0.018211;
set nima 0.1;
set ftU [expr 6091896*$N/$m2];
set Ets [expr $ftU/0.002];
uniaxialMaterial Concrete02 4 $fc1U $eps1U $fc2U $eps2U $nima $ftU $Ets;
#slab
set fcslab [expr -52000000*$N/$m2]
set fc1Uslab $fcslab;
set eps1Uslab -0.002;
set fc2Uslab [expr 0.2*$fc1Uslab];
set eps2Uslab -0.05;
set nimaslab 0.1;
set ftUslab [expr -0.13*$fc1Uslab];
set Etsslab [expr $ftUslab/0.002];
uniaxialMaterial Concrete02 5 $fc1Uslab $eps1Uslab $fc2Uslab $eps2Uslab $nimaslab $ftUslab $Etsslab;
#JOINT material
set M1 [expr 2070000*$N*$m];
set e1 0.00108;
set M2 [expr 2300000*$N*$m];
set e2 0.05;
set M3 [expr 1495000*$N*$m];
set e3 0.1;
set M4 [expr -2070000*$N*$m];
set e4 -0.00108;
set M5 [expr -2300000*$N*$m];
set e5 -0.05;
set M6 [expr -1495000*$N*$m];
set e6 -0.1;
uniaxialMaterial Hysteretic 6 $M1 $e1 $M2 $e2 $M3 $e3 $M4 $e4 $M5 $e5 $M6 $e6 0.2 0.5 0.015 0;
set Mps [expr 1500000*$N*$m];
set Kes [expr 810000000*$N*$m];
uniaxialMaterial Steel02 7 $Mps $Kes 0.02 18.5 0.96 0.15 0 1 0 1;
uniaxialMaterial Series 8 6 7;
#
set B [expr 1005750000*$N*$m];
uniaxialMaterial Elastic 9 $B;
#column sections
#4-#11 bars
section fiberSec $ColSecTag1 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad 4 28 1 -.275 -.275 .275 -.275 .275 .275 -.275 .275
patch quad 3 20 1 -.325 -.325 -.275 -.325 -.275 .325 -.325 .325
patch quad 3 20 1 .275 -.325 .325 -.325 .325 .325 .275 .325
patch quad 3 28 1 -.275 .275 .275 .275 .275 .325 -.275 .325
patch quad 3 28 1 -.275 -.325 .275 -.325 .275 -.275 -.275 -.275
# mat nBars area yI zI yF zF
layer straight 2 2 0.00100645 -.275 -.275 .275 -.275
layer straight 2 2 0.00100645 -.275 .275 .275 .275
}
#8-#11 bars
section fiberSec $ColSecTag2 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad 4 18 1 -.275 -.275 .275 -.275 .275 .275 -.275 .275
patch quad 3 10 1 -.325 -.325 -.275 -.325 -.275 .325 -.325 .325
patch quad 3 10 1 .275 -.325 .325 -.325 .325 .325 .275 .325
patch quad 3 18 1 -.275 .275 .275 .275 .275 .325 -.275 .325
patch quad 3 18 1 -.275 -.325 .275 -.325 .275 -.275 -.275 -.275
# mat nBars area yI zI yF zF
layer straight 2 4 0.00100645 -.275 -.275 .275 -.275
layer straight 2 4 0.00100645 -.275 .275 .275 .275
}
#12-#11 bars
section fiberSec $ColSecTag3 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad 4 18 1 -.275 -.275 .275 -.275 .275 .275 -.275 .275
patch quad 3 10 1 -.325 -.325 -.275 -.325 -.275 .325 -.325 .325
patch quad 3 10 1 .275 -.325 .325 -.325 .325 .325 .275 .325
patch quad 3 18 1 -.275 .275 .275 .275 .275 .325 -.275 .325
patch quad 3 18 1 -.275 -.325 .275 -.325 .275 -.275 -.275 -.275
# mat nBars area yI zI yF zF
layer straight 2 4 0.00100645 -.275 -.275 .275 -.275
layer straight 2 2 0.00100645 -.275 -.2 .275 -.2
layer straight 2 2 0.00100645 -.275 .2 .275 .2
layer straight 2 4 0.00100645 -.275 .275 .275 .275
}
#beam sections
#1st floor
section fiberSec $BeamSecTag1 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad $matIDhard 10 1 -.30 -.10 -.283 -.10 -.283 .10 -.30 .10
patch quad $matIDhard 10 1 .283 -.10 .30 -.10 .30 .10 .283 .10
patch quad $matIDhard 20 1 -.283 -.0055 .283 -.0055 .283 .0055 -.283 .0055
patch quad 5 20 1 .37 -.325 .42 -.325 .42 .325 .37 .325
}
#2nd floor
section fiberSec $BeamSecTag2 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad $matIDhard 10 1 -.25 -.10 -.234 -.10 -.234 .10 -.25 .10
patch quad $matIDhard 10 1 .234 -.10 .25 -.10 .25 .10 .234 .10
patch quad $matIDhard 20 1 -.234 -.005 .234 -.005 .234 .005 -.234 .005
patch quad 5 20 1 .32 -.325 .37 -.325 .37 .325 .32 .325
}
#3rd floor
section fiberSec $BeamSecTag3 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad $matIDhard 10 1 -.198 -.10 -.187 -.10 -.187 .10 -.198 .10
patch quad $matIDhard 20 1 .187 -.10 .198 -.10 .198 .10 .187 .10
patch quad $matIDhard 10 1 -.187 -.0035 .187 -.0035 .187 .0035 -.187 .0035
patch quad 5 20 1 .268 -.325 .318 -.325 .318 .325 .268 .325
}
# define ELEMENTS
# set up geometric transformations of element
# separate columns and beams, in case of P-Delta analysis for columns
set IDColTransf 1; # all columns
set IDBeamTransf 2; # all beams
set ColTransfType Linear ; # options, Linear PDelta Corotational
geomTransf $ColTransfType $IDColTransf ; # only columns can have PDelta effects (gravity effects)
geomTransf Linear $IDBeamTransf;
# Define Beam-Column Elements
set np 5; # number of Gauss integration points for nonlinear curvature distribution-- np=2 for linear distribution ok
# columns
element nonlinearBeamColumn 1 57 8 $np $ColSecTag2 $IDColTransf;
element nonlinearBeamColumn 2 58 12 $np $ColSecTag3 $IDColTransf
element nonlinearBeamColumn 3 59 16 $np $ColSecTag3 $IDColTransf
element nonlinearBeamColumn 4 60 20 $np $ColSecTag2 $IDColTransf
element nonlinearBeamColumn 5 6 24 $np $ColSecTag1 $IDColTransf;
element nonlinearBeamColumn 6 10 28 $np $ColSecTag3 $IDColTransf
element nonlinearBeamColumn 7 14 32 $np $ColSecTag3 $IDColTransf
element nonlinearBeamColumn 8 18 36 $np $ColSecTag1 $IDColTransf
element nonlinearBeamColumn 9 22 40 $np $ColSecTag1 $IDColTransf;
element nonlinearBeamColumn 10 26 44 $np $ColSecTag2 $IDColTransf
element nonlinearBeamColumn 11 30 48 $np $ColSecTag2 $IDColTransf
element nonlinearBeamColumn 12 34 52 $np $ColSecTag1 $IDColTransf
# beams
element nonlinearBeamColumn 13 5 11 $np $BeamSecTag1 $IDBeamTransf;
element nonlinearBeamColumn 14 9 15 $np $BeamSecTag1 $IDBeamTransf;
element nonlinearBeamColumn 15 13 19 $np $BeamSecTag1 $IDBeamTransf;
element nonlinearBeamColumn 16 21 27 $np $BeamSecTag2 $IDBeamTransf;
element nonlinearBeamColumn 17 25 31 $np $BeamSecTag2 $IDBeamTransf;
element nonlinearBeamColumn 18 29 35 $np $BeamSecTag2 $IDBeamTransf;
element nonlinearBeamColumn 19 37 43 $np $BeamSecTag3 $IDBeamTransf;
element nonlinearBeamColumn 20 41 47 $np $BeamSecTag3 $IDBeamTransf;
element nonlinearBeamColumn 21 45 51 $np $BeamSecTag3 $IDBeamTransf;
set A [expr 0.65*$m2]
set Iz [expr 0.000744*$m4]
element corotTruss 22 17 54 $A $matIDhard
element corotTruss 23 33 55 $A $matIDhard
element corotTruss 24 49 56 $A $matIDhard
element corotTruss 26 54 55 $A $matIDhard
element elasticBeamColumn 25 53 54 $A $Es $Iz $IDBeamTransf;
element elasticBeamColumn 27 55 56 $A $Es $Iz $IDBeamTransf;
element Joint2D 28 5 6 7 8 2828 8 0;
element Joint2D 29 9 10 11 12 2929 8 0;
element Joint2D 30 13 14 15 16 3030 8 0;
element Joint2D 31 17 18 19 20 3131 8 0;
element Joint2D 32 21 22 23 24 3232 8 0;
element Joint2D 33 25 26 27 28 3333 8 0;
element Joint2D 34 29 30 31 32 3434 8 0;
element Joint2D 35 33 34 35 36 3535 8 0;
element Joint2D 36 37 38 39 40 3636 8 0;
element Joint2D 37 41 42 43 44 3737 8 0;
element Joint2D 38 45 46 47 48 3838 8 0;
element Joint2D 39 49 50 51 52 3939 8 0;
element zeroLength 40 1 57 -mat 9 -dir 6;
element zeroLength 41 2 58 -mat 9 -dir 6;
element zeroLength 42 3 59 -mat 9 -dir 6;
element zeroLength 43 4 60 -mat 9 -dir 6;
# Define RECORDERS -------------------------------------------------------------
recorder Node -file $dataDir/DFree.out -time -node 49 -dof 1 disp; # displacements of free node
# ------------Eigen analysis to see if the model is built correctly --------------------
set lambda [eigen 1];
set PI [expr 2*asin(1.0)];
set xdamp 0.01;
set omega [expr pow($lambda,0.5)]
set Tperiod [expr 2*$PI/$omega]; # period (sec.)
puts "period is $Tperiod seconds"
# define GRAVITY -------------------------------------------------------------
# GRAVITY LOADS # define gravity load applied to beams and columns -- eleLoad applies loads in local coordinate axis
set LBeamtotal 21;
set W [expr 999600*$N];
set WzBeam [expr $W/$LBeamtotal];
set Wr [expr 984900*$N]
set WzBeamr [expr $Wr/$LBeamtotal];
pattern Plain 101 Linear {
eleLoad -ele 13 14 15 -type -beamUniform -$WzBeam; ;
eleLoad -ele 16 17 18 -type -beamUniform -$WzBeam;
eleLoad -ele 19 20 21 -type -beamUniform -$WzBeamr;
}
# define GRAVITY -------------------------------------------------------------
set P [expr 3500000*$N]
pattern Plain 102 Linear {
load 54 0 -$P 0
load 55 0 -$P 0
load 56 0 -$P 0
}
#set ViewScale 5;
#DisplayModel2D DeformedShape $ViewScale ;
# Gravity-analysis parameters -- load-controlled static analysis
set Tol 1.0e-8; # convergence tolerance for test
constraints Transformation; # how it handles boundary conditions
numberer RCM; # renumber dof's to minimize band-width (optimization), if you want to
system BandGeneral ; # how to store and solve the system of equations in the analysis (large model: try UmfPack)
test NormDispIncr $Tol 6 ; # determine if convergence has been achieved at the end of an iteration step
algorithm Newton; # use Newton's solution algorithm: updates tangent stiffness at every iteration
set NstepGravity 10; # apply gravity in 10 steps
set DGravity [expr 1./$NstepGravity]; # first load increment;
integrator LoadControl $DGravity; # determine the next time step for an analysis
analysis Static; # define type of analysis static or transient
analyze $NstepGravity; # apply gravity
# ------------------------------------------------- maintain constant gravity loads and reset time to zero
loadConst -time 0.0
puts "Model Built"
######################## DYNAMIC analysis ####################
# create load pattern
set accelSeries "Series -dt 0.005 -filePath 1.txt -factor 9.81";
pattern UniformExcitation 2 1 -accel $accelSeries;
rayleigh 0. 0. 0. [expr 2*0.01/pow([eigen 1],0.5)];
# create the analysis
wipeAnalysis
constraints Transformation
numberer RCM
system BandGeneral
test NormDispIncr 1.0e-3 500
algorithm ModifiedNewton
integrator Newmark 0.5 0.25
analysis Transient
analyze 9000 0.005;
puts "Done!"
set lambda [eigen 1];
set PI [expr 2*asin(1.0)];
set xdamp 0.01;
set omega [expr pow($lambda,0.5)]
set Tperiod [expr 2*$PI/$omega]; # period (sec.)
puts "final period is $Tperiod"
in this model if you ignore only the 4 equalDOF command lines there will be no error for the Joint2D s although the nodes constrained together by equalDOF have no kind of connection or relation to the joint nodes.
in this case you see no errors but you get a period above 1 million seconds !!! what should be done for this model for example?
#3story,3 bay RCS frame
#Build model-----------------------------------------------------------------------------------------------------------------------------
wipe
model BasicBuilder -ndm 2 -ndf 3;
set dataDir Data;
file mkdir $dataDir;
#source DisplayPlane.tcl;
#source DisplayModel2D.tcl;
set N 1;
set m 1;
set sec 1;
set m2 [expr $m*$m];
set m3 [expr $m*$m*$m]
set m4 [expr $m*$m*$m*$m];
set kg [expr 10*$N]
set g [expr 9.81*$m/pow($sec,2)];
set ubig 1e10;
set usmall [expr 1/$ubig];
set Weight [expr 2940000*$N];
set Wroof [expr 2881200*$N];
set PCol [expr $Weight/4];
set Mass [expr $PCol/$g];
set PColR [expr $Wroof/4];
set MassR [expr $PColR/$g];
# define nodal coordinates
node 1 0 0
node 2 7 0
node 3 14 0
node 4 21 0
node 5 0.325 4
node 6 0 4.3
node 7 -0.325 4
node 8 0 3.7
node 9 7.325 4
node 10 7 4.3
node 11 6.675 4
node 12 7 3.7
node 13 14.325 4
node 14 14 4.3
node 15 13.675 4
node 16 14 3.7
node 17 21.325 4
node 18 21 4.3
node 19 20.675 4
node 20 21 3.7
node 21 0.325 8
node 22 0 8.25
node 23 -0.325 8
node 24 0 7.75
node 25 7.325 8
node 26 7 8.25
node 27 6.675 8
node 28 7 7.75
node 29 14.325 8
node 30 14 8.25
node 31 13.675 8
node 32 14 7.75
node 33 21.325 8
node 34 21 8.25
node 35 20.675 8
node 36 21 7.75
node 37 0.325 12
node 38 0 12.2
node 39 -0.325 12
node 40 0 11.8
node 41 7.325 12
node 42 7 12.2
node 43 6.675 12
node 44 7 11.8
node 45 14.325 12
node 46 14 12.2
node 47 13.675 12
node 48 14 11.8
node 49 21.325 12
node 50 21 12.2
node 51 20.675 12
node 52 21 11.8
node 53 22.5 0
node 54 22.5 4
node 55 22.5 8
node 56 22.5 12
node 57 0 0
node 58 7 0
node 59 14 0
node 60 21 0
##################################
##### these 4 lines affect joints' errors########
##################################
#equalDOF 1 57 1 2;
#equalDOF 2 58 1 2;
#equalDOF 3 59 1 2;
#equalDOF 4 60 1 2;
# assign masses to the nodes that the columns are connected to
# each connection takes the mass of 1/2 of each element framing into it (mass=weight/$g)
mass 6 $Mass 0 0;
mass 10 $Mass 0 0;
mass 14 $Mass 0 0;
mass 18 $Mass 0 0;
mass 22 $Mass 0 0;
mass 26 $Mass 0 0;
mass 30 $Mass 0 0;
mass 34 $Mass 0 0;
mass 38 $MassR 0 0;
mass 42 $MassR 0 0;
mass 46 $MassR 0 0;
mass 50 $MassR 0 0;
set NStory 3; # number of stories
set NBay 3; # number of bays
# BOUNDARY CONDITIONS
fix 1 1 1 1
fix 2 1 1 1
fix 3 1 1 1
fix 4 1 1 1
fix 53 1 1 0
# Define ELEMENTS & SECTIONS -------------------------------------------------------------
set ColSecTag1 1;
set ColSecTag2 2;
set ColSecTag3 3;
set BeamSecTag1 4;
set BeamSecTag2 5;
set BeamSecTag3 6;
# define MATERIAL properties ----------------------------------------
#beam
set Fy [expr 385000000*$N/$m2];
set Es [expr 200000000000*$N/$m2];
set Bs 0.02;
set R0 18.5;
set cR1 0.925;
set cR2 0.15;
set matIDhard 1
uniaxialMaterial Steel02 $matIDhard $Fy $Es $Bs $R0 $cR1 $cR2 0 1 0 1;
#reinforcement
set Fy1 [expr 525000000*$N/$m2];
set Es1 [expr 200000000000*$N/$m2];
set Bs1 0.02;
set R01 18.5;
set cR11 0.925;
set cR21 0.15;
uniaxialMaterial Steel02 2 $Fy1 $Es1 $Bs1 $R01 $cR11 $cR21 0 1 0 1;
# Cover concrete
# tag -f'c -epsco -f'cu -epscu
set x [expr -34000000*$N/$m2];
uniaxialMaterial Concrete02 3 $x -0.002 0 -0.01 0.1 0.0 0.0;
#core concrete
set fc [expr -42000000*$N/$m2]
set fc1U $fc;
set eps1U -0.002095;
set fc2U [expr 7478130*$N/$m2];
set eps2U -0.018211;
set nima 0.1;
set ftU [expr 6091896*$N/$m2];
set Ets [expr $ftU/0.002];
uniaxialMaterial Concrete02 4 $fc1U $eps1U $fc2U $eps2U $nima $ftU $Ets;
#slab
set fcslab [expr -52000000*$N/$m2]
set fc1Uslab $fcslab;
set eps1Uslab -0.002;
set fc2Uslab [expr 0.2*$fc1Uslab];
set eps2Uslab -0.05;
set nimaslab 0.1;
set ftUslab [expr -0.13*$fc1Uslab];
set Etsslab [expr $ftUslab/0.002];
uniaxialMaterial Concrete02 5 $fc1Uslab $eps1Uslab $fc2Uslab $eps2Uslab $nimaslab $ftUslab $Etsslab;
#JOINT material
set M1 [expr 2070000*$N*$m];
set e1 0.00108;
set M2 [expr 2300000*$N*$m];
set e2 0.05;
set M3 [expr 1495000*$N*$m];
set e3 0.1;
set M4 [expr -2070000*$N*$m];
set e4 -0.00108;
set M5 [expr -2300000*$N*$m];
set e5 -0.05;
set M6 [expr -1495000*$N*$m];
set e6 -0.1;
uniaxialMaterial Hysteretic 6 $M1 $e1 $M2 $e2 $M3 $e3 $M4 $e4 $M5 $e5 $M6 $e6 0.2 0.5 0.015 0;
set Mps [expr 1500000*$N*$m];
set Kes [expr 810000000*$N*$m];
uniaxialMaterial Steel02 7 $Mps $Kes 0.02 18.5 0.96 0.15 0 1 0 1;
uniaxialMaterial Series 8 6 7;
#
set B [expr 1005750000*$N*$m];
uniaxialMaterial Elastic 9 $B;
#column sections
#4-#11 bars
section fiberSec $ColSecTag1 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad 4 28 1 -.275 -.275 .275 -.275 .275 .275 -.275 .275
patch quad 3 20 1 -.325 -.325 -.275 -.325 -.275 .325 -.325 .325
patch quad 3 20 1 .275 -.325 .325 -.325 .325 .325 .275 .325
patch quad 3 28 1 -.275 .275 .275 .275 .275 .325 -.275 .325
patch quad 3 28 1 -.275 -.325 .275 -.325 .275 -.275 -.275 -.275
# mat nBars area yI zI yF zF
layer straight 2 2 0.00100645 -.275 -.275 .275 -.275
layer straight 2 2 0.00100645 -.275 .275 .275 .275
}
#8-#11 bars
section fiberSec $ColSecTag2 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad 4 18 1 -.275 -.275 .275 -.275 .275 .275 -.275 .275
patch quad 3 10 1 -.325 -.325 -.275 -.325 -.275 .325 -.325 .325
patch quad 3 10 1 .275 -.325 .325 -.325 .325 .325 .275 .325
patch quad 3 18 1 -.275 .275 .275 .275 .275 .325 -.275 .325
patch quad 3 18 1 -.275 -.325 .275 -.325 .275 -.275 -.275 -.275
# mat nBars area yI zI yF zF
layer straight 2 4 0.00100645 -.275 -.275 .275 -.275
layer straight 2 4 0.00100645 -.275 .275 .275 .275
}
#12-#11 bars
section fiberSec $ColSecTag3 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad 4 18 1 -.275 -.275 .275 -.275 .275 .275 -.275 .275
patch quad 3 10 1 -.325 -.325 -.275 -.325 -.275 .325 -.325 .325
patch quad 3 10 1 .275 -.325 .325 -.325 .325 .325 .275 .325
patch quad 3 18 1 -.275 .275 .275 .275 .275 .325 -.275 .325
patch quad 3 18 1 -.275 -.325 .275 -.325 .275 -.275 -.275 -.275
# mat nBars area yI zI yF zF
layer straight 2 4 0.00100645 -.275 -.275 .275 -.275
layer straight 2 2 0.00100645 -.275 -.2 .275 -.2
layer straight 2 2 0.00100645 -.275 .2 .275 .2
layer straight 2 4 0.00100645 -.275 .275 .275 .275
}
#beam sections
#1st floor
section fiberSec $BeamSecTag1 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad $matIDhard 10 1 -.30 -.10 -.283 -.10 -.283 .10 -.30 .10
patch quad $matIDhard 10 1 .283 -.10 .30 -.10 .30 .10 .283 .10
patch quad $matIDhard 20 1 -.283 -.0055 .283 -.0055 .283 .0055 -.283 .0055
patch quad 5 20 1 .37 -.325 .42 -.325 .42 .325 .37 .325
}
#2nd floor
section fiberSec $BeamSecTag2 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad $matIDhard 10 1 -.25 -.10 -.234 -.10 -.234 .10 -.25 .10
patch quad $matIDhard 10 1 .234 -.10 .25 -.10 .25 .10 .234 .10
patch quad $matIDhard 20 1 -.234 -.005 .234 -.005 .234 .005 -.234 .005
patch quad 5 20 1 .32 -.325 .37 -.325 .37 .325 .32 .325
}
#3rd floor
section fiberSec $BeamSecTag3 {
# mat nfIJ nfJK yI zI yJ zJ yK zK yL zL
patch quad $matIDhard 10 1 -.198 -.10 -.187 -.10 -.187 .10 -.198 .10
patch quad $matIDhard 20 1 .187 -.10 .198 -.10 .198 .10 .187 .10
patch quad $matIDhard 10 1 -.187 -.0035 .187 -.0035 .187 .0035 -.187 .0035
patch quad 5 20 1 .268 -.325 .318 -.325 .318 .325 .268 .325
}
# define ELEMENTS
# set up geometric transformations of element
# separate columns and beams, in case of P-Delta analysis for columns
set IDColTransf 1; # all columns
set IDBeamTransf 2; # all beams
set ColTransfType Linear ; # options, Linear PDelta Corotational
geomTransf $ColTransfType $IDColTransf ; # only columns can have PDelta effects (gravity effects)
geomTransf Linear $IDBeamTransf;
# Define Beam-Column Elements
set np 5; # number of Gauss integration points for nonlinear curvature distribution-- np=2 for linear distribution ok
# columns
element nonlinearBeamColumn 1 57 8 $np $ColSecTag2 $IDColTransf;
element nonlinearBeamColumn 2 58 12 $np $ColSecTag3 $IDColTransf
element nonlinearBeamColumn 3 59 16 $np $ColSecTag3 $IDColTransf
element nonlinearBeamColumn 4 60 20 $np $ColSecTag2 $IDColTransf
element nonlinearBeamColumn 5 6 24 $np $ColSecTag1 $IDColTransf;
element nonlinearBeamColumn 6 10 28 $np $ColSecTag3 $IDColTransf
element nonlinearBeamColumn 7 14 32 $np $ColSecTag3 $IDColTransf
element nonlinearBeamColumn 8 18 36 $np $ColSecTag1 $IDColTransf
element nonlinearBeamColumn 9 22 40 $np $ColSecTag1 $IDColTransf;
element nonlinearBeamColumn 10 26 44 $np $ColSecTag2 $IDColTransf
element nonlinearBeamColumn 11 30 48 $np $ColSecTag2 $IDColTransf
element nonlinearBeamColumn 12 34 52 $np $ColSecTag1 $IDColTransf
# beams
element nonlinearBeamColumn 13 5 11 $np $BeamSecTag1 $IDBeamTransf;
element nonlinearBeamColumn 14 9 15 $np $BeamSecTag1 $IDBeamTransf;
element nonlinearBeamColumn 15 13 19 $np $BeamSecTag1 $IDBeamTransf;
element nonlinearBeamColumn 16 21 27 $np $BeamSecTag2 $IDBeamTransf;
element nonlinearBeamColumn 17 25 31 $np $BeamSecTag2 $IDBeamTransf;
element nonlinearBeamColumn 18 29 35 $np $BeamSecTag2 $IDBeamTransf;
element nonlinearBeamColumn 19 37 43 $np $BeamSecTag3 $IDBeamTransf;
element nonlinearBeamColumn 20 41 47 $np $BeamSecTag3 $IDBeamTransf;
element nonlinearBeamColumn 21 45 51 $np $BeamSecTag3 $IDBeamTransf;
set A [expr 0.65*$m2]
set Iz [expr 0.000744*$m4]
element corotTruss 22 17 54 $A $matIDhard
element corotTruss 23 33 55 $A $matIDhard
element corotTruss 24 49 56 $A $matIDhard
element corotTruss 26 54 55 $A $matIDhard
element elasticBeamColumn 25 53 54 $A $Es $Iz $IDBeamTransf;
element elasticBeamColumn 27 55 56 $A $Es $Iz $IDBeamTransf;
element Joint2D 28 5 6 7 8 2828 8 0;
element Joint2D 29 9 10 11 12 2929 8 0;
element Joint2D 30 13 14 15 16 3030 8 0;
element Joint2D 31 17 18 19 20 3131 8 0;
element Joint2D 32 21 22 23 24 3232 8 0;
element Joint2D 33 25 26 27 28 3333 8 0;
element Joint2D 34 29 30 31 32 3434 8 0;
element Joint2D 35 33 34 35 36 3535 8 0;
element Joint2D 36 37 38 39 40 3636 8 0;
element Joint2D 37 41 42 43 44 3737 8 0;
element Joint2D 38 45 46 47 48 3838 8 0;
element Joint2D 39 49 50 51 52 3939 8 0;
element zeroLength 40 1 57 -mat 9 -dir 6;
element zeroLength 41 2 58 -mat 9 -dir 6;
element zeroLength 42 3 59 -mat 9 -dir 6;
element zeroLength 43 4 60 -mat 9 -dir 6;
# Define RECORDERS -------------------------------------------------------------
recorder Node -file $dataDir/DFree.out -time -node 49 -dof 1 disp; # displacements of free node
# ------------Eigen analysis to see if the model is built correctly --------------------
set lambda [eigen 1];
set PI [expr 2*asin(1.0)];
set xdamp 0.01;
set omega [expr pow($lambda,0.5)]
set Tperiod [expr 2*$PI/$omega]; # period (sec.)
puts "period is $Tperiod seconds"
# define GRAVITY -------------------------------------------------------------
# GRAVITY LOADS # define gravity load applied to beams and columns -- eleLoad applies loads in local coordinate axis
set LBeamtotal 21;
set W [expr 999600*$N];
set WzBeam [expr $W/$LBeamtotal];
set Wr [expr 984900*$N]
set WzBeamr [expr $Wr/$LBeamtotal];
pattern Plain 101 Linear {
eleLoad -ele 13 14 15 -type -beamUniform -$WzBeam; ;
eleLoad -ele 16 17 18 -type -beamUniform -$WzBeam;
eleLoad -ele 19 20 21 -type -beamUniform -$WzBeamr;
}
# define GRAVITY -------------------------------------------------------------
set P [expr 3500000*$N]
pattern Plain 102 Linear {
load 54 0 -$P 0
load 55 0 -$P 0
load 56 0 -$P 0
}
#set ViewScale 5;
#DisplayModel2D DeformedShape $ViewScale ;
# Gravity-analysis parameters -- load-controlled static analysis
set Tol 1.0e-8; # convergence tolerance for test
constraints Transformation; # how it handles boundary conditions
numberer RCM; # renumber dof's to minimize band-width (optimization), if you want to
system BandGeneral ; # how to store and solve the system of equations in the analysis (large model: try UmfPack)
test NormDispIncr $Tol 6 ; # determine if convergence has been achieved at the end of an iteration step
algorithm Newton; # use Newton's solution algorithm: updates tangent stiffness at every iteration
set NstepGravity 10; # apply gravity in 10 steps
set DGravity [expr 1./$NstepGravity]; # first load increment;
integrator LoadControl $DGravity; # determine the next time step for an analysis
analysis Static; # define type of analysis static or transient
analyze $NstepGravity; # apply gravity
# ------------------------------------------------- maintain constant gravity loads and reset time to zero
loadConst -time 0.0
puts "Model Built"
######################## DYNAMIC analysis ####################
# create load pattern
set accelSeries "Series -dt 0.005 -filePath 1.txt -factor 9.81";
pattern UniformExcitation 2 1 -accel $accelSeries;
rayleigh 0. 0. 0. [expr 2*0.01/pow([eigen 1],0.5)];
# create the analysis
wipeAnalysis
constraints Transformation
numberer RCM
system BandGeneral
test NormDispIncr 1.0e-3 500
algorithm ModifiedNewton
integrator Newmark 0.5 0.25
analysis Transient
analyze 9000 0.005;
puts "Done!"
set lambda [eigen 1];
set PI [expr 2*asin(1.0)];
set xdamp 0.01;
set omega [expr pow($lambda,0.5)]
set Tperiod [expr 2*$PI/$omega]; # period (sec.)
puts "final period is $Tperiod"
-
- Posts: 72
- Joined: Fri Jul 10, 2009 3:05 am
- Location: Griffith University
modal participation factor
Hi
How can I calculate "modal participation factor " and "modal participation mass ratios at first period of a frame?
Thanks.
How can I calculate "modal participation factor " and "modal participation mass ratios at first period of a frame?
Thanks.
-
- Posts: 2
- Joined: Sat Jun 26, 2010 3:02 am
- Location: Northern Ireland
- Contact:
joint2D element panel zone rotation of beam ends
This server version is incompatible because of its missing sql command in that early release.
The sql command is very needed to provide some features.
The sql command is very needed to provide some features.
Re:
seyedalirezajalali wrote:
> the link for mentioned source is here:
> opensees.berkeley.edu /OpenSees/doc/ Altoontash_Dissertation.pdf
Sorry, I can not connect to this source. It would be very apprecited for you to send to my email address, I really need it urgently. Thanks. My e-address is " ydgao@ntu.edu.sg".
> the link for mentioned source is here:
> opensees.berkeley.edu /OpenSees/doc/ Altoontash_Dissertation.pdf
Sorry, I can not connect to this source. It would be very apprecited for you to send to my email address, I really need it urgently. Thanks. My e-address is " ydgao@ntu.edu.sg".
Re: joint2D element ; panel zone, rotation of beam ends
hi
what is the meaning of this warning
WARNING BandGenLinLapackSolver::solve() -LAPACK routine returned 1
WARNING NewtonRaphson::solveCurrentStep() -the LinearSysOfEqn failed in solve()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 0 with domain
what is the meaning of this warning
WARNING BandGenLinLapackSolver::solve() -LAPACK routine returned 1
WARNING NewtonRaphson::solveCurrentStep() -the LinearSysOfEqn failed in solve()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 0 with domain
Re: joint2D element ; panel zone, rotation of beam ends
That message means that there is problem in your model. It is possibly unstable. You are missing constraints or have "hanging" nodes
Re: joint2D element ; panel zone, rotation of beam ends
If you go here: http://opensees.berkeley.edu/wiki/index ... 2D_Element
under references you will find a link to that file.
under references you will find a link to that file.