structural model i - opensees...opensees and neesgrid simulation component user workshop, 2-3 sept...
TRANSCRIPT
1
Structural Model I (parameter definition; nodes; constraints; materials; sections & elements; block & region; geometric transformation)
Silvia MazzoniUniversity of California, Berkeley
OpenSees and NEESgrid Simulation ComponentUser Workshop, 2-3 Sept 2004
Sponsored by the National Science Foundationthrough the Pacific Earthquake Engineering Research Centerand the NEESgrid System Integration Project
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 2
Example:Reinforced-Concrete Frame
ρlcol
H
Ig
Igcol
beam
Hcol
beam
Lbeam
Lcol
Wsuperstructure
2
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 3
ModelBuilder Objects• model Command• node Command• mass Command• Constraints objects• uniaxialMaterial Command• nDMaterial Command• section Command• element Command• block Command• region Command• Geometric Transformation Command• Time Series• pattern Command
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 4
input-file architecture
RCSection
parameters
nodal mesh
materials
elements
output
lateral
gravity
analysis type:-static-dynamic
RUN.tcl ground-motions(dynamic analysis)
units & constants
ReadGMfile
moment-curvature
1
2
3
•model Command
•node Command•mass Command•Constraints objects
•uniaxialMaterial Command•nDMaterial Command
•section Command•element Command•Geometric Transformation Command
OpenSees model-building commands
analysis.tcl
nodalmesh.tcl
materials.tcl
elements.tcl
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 6
http://opensees.berkeley.edu
4
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 7
or, OpenSeesManual.chm
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 8
commandsnode $nodeTag (ndm $coords) <-mass (ndf $MassValues)>
constrained1unconstrained0
constraint type (0 or 1). ndf values are specified, corresponding to the ndf degrees-of-freedom.
The two constraint types are:
$ConstrValues
integer tag identifying the node to be constrained$nodeTag
copy and paste from manual:
nodal mass corresponding to each DOF (ndfarguments) (optional)
$MassValues
nodal coordinates (ndm arguments)$coords
integer tag identifying node$nodeTag
fix $nodeTag (ndf $ConstrValues)
5
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 9
nodalmesh.tcl
1. # Define nodes; # frame is in X-Y plane (X-horizontal, Y-vertical)
2. node 1 0.0 0.0 0.0
3. node 2 $Lbeam 0.0 0.0
4. node 3 0.0 $Lcol 0.0 -mass $Mnode 0.0 0.0 0.0 0.0 0.0
5. node 4 $Lbeam $Lcol 0.0 -mass $Mnode 0.0 0.0 0.0 0.0 0.0
6. # Boundary conditions; # node DX DY DZ RX RY RZ ! 1: fixed, 0: released
7. fix 1 1 1 1 1 1 1;
8. fix 2 1 1 1 1 1 1
9. fix 3 0 0 1 1 1 0
10. fix 4 0 0 1 1 1 0
11. # 3---------------------------4
12. # | |
13. # | |
14. # --1-- --2--
coordinates & mass
boundary conditions
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 10
materials copy and paste from manual:
uniaxialMaterial Elastic $matTag $E <$eta>
damping tangent (optional, default=0.0)$eta
tangent$E
unique material object integer tag$matTag
uniaxialMaterial Concrete01 $matTag $fpc $epsc0 $fpcu $epsU
strain at crushing strength*$epsU
crushing strength*$fpcu
strain at compressive strength*$epsc0
compressive strength*$fpc
unique material object integer tag$matTag
6
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 11
tcl if statement
if {logical statement} {….series of commands…..
}
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 12
materials.tcl concrete
uniaxialMaterial Concrete01 $matTag $fpc $epsc0 $fpcu $epsU
1. set ConcreteMaterialType “inelastic” # options: "elastic","inelastic"
2. if {$ConcreteMaterialType == “elastic”} {
3. uniaxialMaterial Elastic $IDcore $Ec
4. uniaxialMaterial Elastic $IDcover $Ec
5. }
6. if {$ConcreteMaterialType == “inelastic”} {
7. # uniaxial Kent-Scott-Park concrete model w/ linear unload/reload, no T strength (-ve comp.)
8. uniaxialMaterial Concrete01 $IDcore $fc1C $eps1C $fc2C $eps2C; # Core
9. uniaxialMaterial Concrete01 $IDcover $fc1U $eps1U $fc2U $eps2U;# Cover
10. }
7
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 13
uniaxialMaterial Hysteretic $matTag $s1p $e1p $s2p $e2p <$s3p $e3p> $s1n $e1n $s2n $e2n <$s3n $e3n> $pinchX $pinchY $damage1 $damage2 <$beta>
power used to determine the degraded unloading stiffness based on ductility, mu-beta (optional, default=0.0)
$beta
damage due to energy: D2(Eii/Eult)$damage2damage due to ductility: D1(mu-1)$damage1pinching factor for stress (or force) during reloading$pinchY
pinching factor for strain (or deformation) during reloading$pinchX
stress and strain (or force & deformation) at third point of the envelope in the negative direction (optional)*
$e3n$s3n
stress and strain (or force & deformation) at second point of the envelope in the negative direction*
$e2n$s2n
stress and strain (or force & deformation) at first point of the envelope in the negative direction*
$e1n$s1n
stress and strain (or force & deformation) at third point of the envelope in the positive direction (optional)
$e3p$s3p
stress and strain (or force & deformation) at second point of the envelope in the positive direction
$e2p$s2p
stress and strain (or force & deformation) at first point of the envelope in the positive direction
$e1p$s1punique material object integer tag$matTag
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 14
materials.tcl reinforcing steel
1. set SteelMaterialType "hysteretic"; # options: ”elastic","bilinear","hysteretic“
2. if {$SteelMaterialType == "elastic"} {3. uniaxialMaterial Elastic $IDsteel $Es4. }5. if {$SteelMaterialType == "bilinear"} {6. # Reinforcing steel, uniaxial bilinear steel model with isotropic hardening.7. uniaxialMaterial Steel01 $IDsteel $Fy $Es $Bs8. }9. if {$SteelMaterialType == "hysteretic"} {10. # Reinforcing steel, uniaxial hysteretic steel model with isotropic hardening.11. uniaxialMaterial Hysteretic $IDsteel $Fy $epsY $Fy1 $epsY1 $Fu $epsU -$Fy -
$epsY -$Fy1 -$epsY1 -$Fu -$epsU $pinchX $pinchY $damage1 $damage2 $betaMUsteel
12. }
8
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 15
tcl procedure
proc procName {input variables} {… series of commands
}
to execute:
procName input variables
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 16
fiber section command
section Fiber $secTag {fiber <fiber arguments>patch <patch arguments> layer <layer arguments>
}
fiber $yLoc $zLoc $A $matTag
material tag of the pre-defined UniaxialMaterial object used to represent the stress-strain for the area of the fiber
$matTagarea of fiber$Az coordinate of the fiber in the section (local coordinate system)$zLocy coordinate of the fiber in the section (local coordinate system)$yLoc
cover patch
core patch
steel layer
externalradius
internalradius
9
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 17
ending angle (optional. default=360.0)$endAngstarting angle (optional. default=0.0)$startAngexternal radius$extRadinternal radius$intRady & z-coordinates of the center of the circle$zCenter$yCenter number of subdivisions (fibers) in the radial direction.$numSubdivRad
number of subdivisions (fibers) in the circumferential direction.
$numSubdivCirc
material integer tag of the previously-defined UniaxialMaterial object used to represent the stress-strain for the area of the fiber
$matTag
section command (cont.)
patch circ $matTag $numSubdivCirc $numSubdivRad $yCenter $zCenter $intRad $extRad <$startAng $endAng>
$startAng
$endAng
$extRad $intRad
($yCenter, $zCenter)
$numSubdivCirc=4
$num
Subd
ivRad
=3
y
z
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 18
starting and ending angle of reinforcing layer, respectively. (Optional, Default: a full circle is assumed 0-360)
$endAng$startAngradius of reinforcing layer$radius
y and z-coordinates of center of reinforcing layer (local coordinate system)
$zCenter$yCenterarea of individual reinforcing bar$areaBarnumber of reinforcing bars along layer$numBar
material integer tag of the previously-defined UniaxialMaterial object used to represent the stress-strain for the area of the fiber
$matTag
section command (cont.)
layer circ $matTag $numBar $areaBar $yCenter $zCenter $radius <$startAng $endAng>
y
z
$numBars=
5
($yCenter, $zCenter)
$startAng
$endAng
$radius
10
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 19
tcl procedure: define fiber section
360o/Nbars
Ab
covercore patch
cover patch
Ro
Ri
CONCRETESTEEL
proc RCcircSection {id Ri Ro cover coreID coverID steelID Nbars Ab nfCoreR nfCoreT nfCoverR nfCoverT} {
section fiberSec $id {
set Rc [expr $Ro-$cover]; # Core radius
patch circ $coreID $nfCoreT $nfCoreR 0 0 $Ri $Rc 0 360; # Define the core patch
patch circ $coverID $nfCoverT $nfCoverR 0 0 $Rc $Ro 0 360; # Define the cover patch
if {$Nbars<= 0} { return }
set theta [expr 360.0/$Nbars]; # angle increment between bars
layer circ $steelID $Nbars $Ab 0 0 $Rc $theta 360; # Define the reinforcing layer
}
}
CONCRETE
STEEL
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 20
section aggregator• groups previously-defined UniaxialMaterial objects into a single section force-
deformation model section Aggregator $secTag $matTag1 $string1 $matTag2 $string2 ....... <-section $sectionTag>
specifies a previously-defined Section object (identified by the argument $sectionTag) to which these UniaxialMaterial objects may be added to recursively define a new Section object
<-section $sectionTag>
Torsion Force-DeformationT
Shear force-deformation along section local z-axisVzMoment-curvature about section local y-axisMyShear force-deformation along section local y-axisVyMoment-curvature about section local z-axisMzAxial force-deformationP
the force-deformation quantities corresponding to each section object. One of the following strings is used:
$string1, $string2 ....previously-defined UniaxialMaterial objects$matTag1, $matTag2 ...unique section object integer tag$secTag
11
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 21
geometric transformation• performs a linear geometric transformation of beam stiffness and
resisting force from the basic system to the global-coordinate system
geomTransf Linear $transfTag $vecxzX $vecxzY $vecxzZ <-jntOffset $dXi $dYi $dZi $dXj $dYj $dZj>
joint offset values -- absolute offsets specified with respect to the global coordinate system for element-end node j (the number of arguments depends on the dimensions of the current model) (optional)
$dXj $dYj $dZj
joint offset values -- absolute offsets specified with respect to the global coordinate system for element-end node i (the number of arguments depends on the dimensions of the current model) (optional)
$dXi $dYi $dZi
X, Y, and Z components of vecxz, the vector used to define the local x-z plane of the local-coordinate system. The local y-axis is defined by taking the cross product of the x-axis and the vecxz vector. These components are specified in the global-coordinate system X,Y,Z and define a vector that is in a plane parallel to the x-z plane of the local-coordinate system.These items need to be specified for the three-dimensional problem.
$vecxzX $vecxzY $vecxzZ
unique identifier for CrdTransf object$transfTag
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 22
local coordinate system
Y
Z
X
node j
node i
y
x
z
local xz plane
vecxz (vecxzX, vecxzY, vecxzZ)
vector parallel to vecxz
12
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 23
elements• Truss Element• Corotational Truss Element• Elastic Beam Column Element• NonLinear Beam-Column Elements
– Nonlinear Beam Column Element– Beam With Hinges Element– Displacement-Based Beam-Column Element
• Zero-Length Elements• Quadrilateral Elements• Brick Elements• FourNodeQuadUP Element• BeamColumnJoint Element
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 24
Elastic Beam Column Element
• 2D:
• 3D:
element elasticBeamColumn $eleTag $iNode $jNode $A $E $G $J $Iy $Iz $transfTag
element elasticBeamColumn $eleTag $iNode $jNode $A $E $Iz $transfTag
13
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 25
Nonlinear Beam Column Element
tolerance for satisfaction of element compatibility (optional, default=10-16)
$tol
maximum number of iterations to undertake to satisfy element compatibility (optional, default=1)
$maxIters
element mass density (per unit length), from which a lumped-mass matrix is formed (optional, default=0.0)
$massDens
identifier for previously-defined coordinate-transformation(CrdTransf) object
$transfTagidentifier for previously-defined section object$secTagnumber of integration points along the element.$numIntgrPtsend nodes$jNode$iNode unique element object tag$eleTag
element nonlinearBeamColumn $eleTag $iNode $jNode $numIntgrPts $secTag $transfTag <-mass $massDens> <-iter $maxIters $tol>
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 26
elements.tclC
OLU
MN
BEA
M
Tcl procedure1. set ColumnType “inelastic”;
2. source RCcircSection.tcl; # proc to define circular fiber section– flexure
3. RCcircSection $IDcolFlex $riCol $roCol $cover $IDcore $IDcover $IDsteel $NbCol $AbCol $nfCoreR $nfCoreT $nfCoverR $nfCoverT
4. uniaxialMaterial Elastic $IDcolTors $GJ; # Define torsion
5. section Aggregator $IDcolSec $IDcolTors T -section $IDcolFlex; # attach torsion & flex
6. geomTransf Linear $IDcolTrans 0 0 1; # no 2nd-order effects, define element normal
7. if {$ColumnType == “elastic”} {
8. element elasticBeamColumn 1 1 3 $Acol $Ec $G $J $IyCol $IzCol $IDcolTrans
9. element elasticBeamColumn 2 2 4 $Acol $Ec $G $J $IyCol $IzCol $IDcolTrans }
10. if {$ColumnType == “inelastic”} {
11. # element element type ID, node I, node J, no. int pts, section ID, transf. ID
12. element nonlinearBeamColumn 1 1 3 $np $IDcolSec $IDcolTrans
13. element nonlinearBeamColumn 2 2 4 $np $IDcolSec $IDcolTrans }
14. geomTransf Linear $IDbeamTrans 0 0 1; # BEAM transformation, define element normal
15. element elasticBeamColumn 3 3 4 $Abeam $Ec $G $J $IyBeam $IzBeam $IDbeamTrans
14
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 27
region command• label a group of nodes and elements. • This command is also used to assign rayleigh
damping parameters to the nodes and elements in this region.
• The region is specified by either elements or nodes, not both. If elements are defined, the region includes these elements and the all connected nodes. If nodes are specified, the region includes these nodes and all elements whose external nodes are prescribed
NEW
region $regTag <-ele ($ele1 $ele2 ...)> <-eleRange $startEle $endEle> <-ele all> <-node ($node1 $node2 ...)> <-nodeRange $startNode $endNode> <-node all> <-rayleigh $alphaM $betaK $betaKinit $betaKcomm>
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 28
region command (element region)
region $regTag <-ele ($ele1 $ele2 ...)> <-eleRange $startEle $endEle> <-ele all> <-node ($node1 $node2 ...)> <-nodeRange $startNode $endNode> <-node all> <-rayleigh $alphaM $betaK $betaKinit $betaKcomm>
Arguments to define Rayleigh damping matrix (optional, default: zero)
$alphaM $betaK $betaKinit $betaKcomm
all elements in domain (optional & default)all
tag for start and end elements -- range of selected elements in domain (optional, default: all)
$startEle $endEle
tags of elements -- selected elements in domain (optional, default: omitted)
$ele1 $ele2 ...unique integer tag$regTag
15
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 29
region command (node region)
region $regTag <-ele ($ele1 $ele2 ...)> <-eleRange $startEle $endEle> <-ele all> <-node ($node1 $node2 ...)> <-nodeRange $startNode $endNode> <-node all> <-rayleigh $alphaM $betaK $betaKinit $betaKcomm>
Arguments to define Rayleigh damping matrix (optional, default: zero
$alphaM $betaK $betaKinit $betaKcomm
all nodes in domain (optional & default)all
tag for start and end nodes -- range of nodes in domain (optional, default: all)
$startNode $endNode
node tags -- select nodes in domain (optional, default: all)
$node1 $node2 ...unique integer tag$regTag
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 30
region command (damping)
region $regTag <-ele ($ele1 $ele2 ...)> <-eleRange $startEle $endEle> <-ele all> <-node ($node1 $node2 ...)> <-nodeRange $startNode $endNode> <-node all> <-rayleigh $alphaM $betaK $betaKinit $betaKcomm>
C = $alphaM*M + $betaK*K + $betaKinit*Kinitial $betaKcomm*Kcommitted
stiffness matrix at last-committed state determination used to calculate Rayleigh Damping
KlastCommit
stiffness matrix at initial state determination used to calculate Rayleigh Damping
Kinit
stiffness matrix at current state determination used to calculate Rayleigh Damping
Kcurrentmass matrix used to calculate Rayleigh DampingM
16
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 31
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 32
RUN.tcl
set up
static analysis
dynamic analysis
1. wipe # clear memory2. source units.tcl; # units and constants3. source GMFiles.tcl; # load up ground-motion filenames
4. set ANALYSIS "Static"; # static pushover analysis5. source Analysis.tcl
6. set ANALYSIS "Dynamic"; # dynamic ground-motion analysis7. foreach GroundFile $iGroundFile {8. puts GroundMotion_$GroundFile9. source Analysis.tcl10. }
17
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 33
units.tcl
1. set in 1.;
2. set sec 1.;
3. set kip 1.;
4. set ksi [expr $kip/pow($in,2)];
5. set psi [expr $ksi/1000.];
6. set ft [expr 12.*$in];
7. set cm [expr 2.54*$in];
8. set MPa [expr 145*$psi];
9. set g [expr 981*$cm/pow($sec,2)];
10. set PI [expr 2*asin(1.0)];
11. set U 1.e10;
12. set u [expr 1./$U];
metric units
basic units
imperial units
gravitational constant
π
a really large number
a really small number
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 34
concatenate into one vector
gmfiles.tcl1. #large magnitude, small distance 2. set set1 {"IV40elc" "LD92yer" "LP89agw" "LP89cap" "LP89g03"
"LP89g04" "LP89gmr" "LP89hch" "LP89hda" "LP89svl" }3. set set2 {"NR94cnp" "NR94far" "NR94fle" "NR94glp" "NR94hol"
"NR94stc" "SF71pel" "SH87bra" "SH87icc" "SH87wsm" }
4. #large magnitude, large distance 5. set set3 {"BM68elc" "LD92ind" "LD92psa" "LP89a2e" "LP89fms"
"LP89hvr" "LP89sjw" "LP89slc" "NR94bad" "NR94cas" }6. set set4 {"NR94cen" "NR94jab" "NR94lh1" "NR94loa" "NR94lv2"
"NR94php" "NR94pic" "NR94sor" "NR94sse" "NR94ver" }
7. set iGroundFile $set1$set2$set3$set4;
18
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 35
analysis.tcl
set up parameters and variables
set up structural model
specify data output
apply loading
clear memory
create model builder1. model basic -ndm 3 -ndf 6
2. source units.tcl;
3. source parameters.tcl;
4. source nodalmesh.tcl;
5. source materials.tcl;
6. source elements.tcl;
7. source output.tcl;
8. source gravity.tcl;
9. source lateral.tcl;
10. wipeanalysis
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 36
superstructure
ground motion
parameters.tcl basic parameters
1. set Hcol [expr 5*$ft]; # column diameter2. set Lcol [expr 36*$ft]; # column length3. set GrhoCol 0.0125; # column longitudinal-steel ratio
4. set Hbeam [expr 8.*$ft]; # beam depth5. set Lbeam [expr 36.*$ft]; # beam length
6. set Weight [expr 3000.*$kip]; # superstructure weight
7. set GMfact 1.5; # ground-motion scaling factor
column
beam
look, units!
19
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 37
parameters.tcl
1. set Rcol [expr $Hcol/2]; # COLUMN radius
2. set Acol [expr $PI*pow($Rcol,2)]; # column cross-sectional area
3. set cover [expr $Hcol/15]; # column cover width
4. set IgCol [expr $PI*pow($Rcol,4)/4]; # column gross moment of inertia
5. set IyCol $IgCol; # elastic-column properties
6. set IzCol $IgCol; # elastic-column properties
7. set Bbeam $Hcol; # BEAM beam width
8. set IzBeam [expr $GIbIc*$IgCol]; # beam gross moment of inertia -- horiz Z
9. set IyBeam [expr $Hbeam*pow($Bbeam,3)/12]; # beam gross moment of inertia--vert Y
10. set Abeam [expr $Hbeam*$Bbeam*10000]; # beam cross-sectional area
11. set GLbLc [expr $Lbeam/$Lcol]; # beam-to-column length ratio
GEOMETRY
column
beam
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 38
parameters.tcl1. set fc [expr -5.5*$ksi]; # CONCRETE Compressive Strength
2. set Ec [expr 57*$ksi*sqrt(-$fc/$psi)]; # Concrete Elastic Modulus
3. set fc1C [expr 1.26394*$fc]; # CONFINED concrete max. stress (Mander)
4. set eps1C [expr 2.*$fc1C/$Ec]; # strain at maximum stress
5. set fc2C $fc; # ultimate stress
6. set eps2C [expr 5*$eps1C]; # strain at ultimate stress
7. set fc1U $fc; # UNCONFINED concrete maximum stress
8. set eps1U -0.003; # strain at maximum stress
9. set fc2U [expr 0.1*$fc]; # ultimate stress
10. set eps2U -0.006; # strain at ultimate stress
11. set Fy [expr 68.*$ksi]; # STEEL yield stress
12. set Es [expr 29000.*$ksi]; # modulus of steel
13. set epsY [expr $Fy/$Es]; # steel yield strain
14. set Fy1 [expr 89.8*$ksi]; # steel stress post-yield
15. set epsY1 0.06; # steel strain post-yield
16. set Fu [expr 95.2*$ksi]; # ultimate stress of steel
17. set epsU 0.1; # ultimate strain of steel
18. set Bs [expr ($Fu-$Fy)/($epsU-$epsY)/$Es]; # post-yield stiffness ratio of steel
MATERIAL PROPERTIES
concrete
steel
20
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 39
parameters.tcl
1. set pinchX 1.0; # pinching parameter for hysteretic model 2. set pinchY 1.0; # pinching parameter for hysteretic model 3. set damage1 0.0; # damage parameter for hysteretic model 4. set damage2 0.0; # damage parameter for hysteretic model
5. set betaMUsteel 0.0; # degraded unloading stiffness based on MU^(-beta)
6. set betaMUjoint 0.0; # degraded unloading stiffness based on MU^(-beta)7. set betaMUph 0.0; # degraded unloading stiffness based on MU^(-beta)8. set G $U; # Torsional stiffness Modulus9. set J 1.; # Torsional stiffness of section10. set GJ [expr $G*$J]; # Torsional stiffness
HYSTERETIC MODEL
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 40
parameters.tcl
1. # define COLUMN REINFORCEMENT parameters2. set NbCol 20; # number of column longitudinal-reinf. bars3. set AsCol [expr $GrhoCol*$Acol]; # total steel area in column section4. set AbCol [expr $AsCol/$NbCol]; # bar area of column longitudinal reinforcement
5. # set up parameters for column section and element definition6. set np 5; # Number of integration points7. set riCol 0.0; # inner radius of column section8. set roCol $Rcol; # outer radius of column section
9. set IDcore 1; # ID tag for core concrete10. set IDcover 2; # ID tag for cover concrete11. set IDsteel 3; # ID tag for steel
12. set nfCoreR 8; # number of radial fibers in core13. set nfCoreT 16; # number of tangential fibers in core14. set nfCoverR 2; # number of radial fibers in cover15. set nfCoverT 16; # number of tangential fibers in cover
16. set IDcolFlex 2; # ID tag for column section in flexure, before aggreg. torsion17. set IDcolTors 10; # ID tag for column section in torsion18. set IDcolSec 1; # ID tag for column section
19. set IDcolTrans 1; # ID tag for column transformation, defining element normal20. set IDbeamTrans 2; # ID tag for beam transformation, defining element normal
Column&beam-model properties
21
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 41
parameters.tcl
1. set Pdl [expr $Weight/2]; # gravity axial load per column
2. set Wbeam [expr $Weight/$Lbeam]; # distributed gravity dead load
3. set Mdl [expr $Wbeam*pow($Lbeam,2)/12]; # nodal moment
4. set Mass [expr $Weight/$g]; # mass of superstructure
5. set Mnode [expr $Mass/2]; # nodal mass for each column
GRAVITY
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 42
parameters.tcl
1. # define DAMPING parameters from $xDamp --SDOF system, use stiffness proportional damping only
2. set xDamp 0.02; # modal damping ratio
3. set lambda [eigen 1]; # eigenvalue analysis4. set omega [expr sqrt($lambda)]; # natural frequency (rad/sec)5. set Tperiod [expr 2*$PI/$omega]; # period (sec.)
6. set alphaM 0; # mass-prop. RAYLEIGH damping parameter; D = alphaM*M7. set betaK 0; # stiffness proportional damping; +beatK*KCurrent8. set betaKcomm [expr 2*$xDamp/$omega]; # +betaKcomm*KlastCommitt9. set betaKinit 0; # +beatKinit*Kini
DAMPING
NOTE: you actually have to move these commands to after the model has been set up, as you cannot perform an eigenvalue analysis at this point, yet
22
Silvia Mazzoni, UC BerkeleyOpenSees User Workshop 2004 43
parameters.tcl
1. set DxPush [expr 0.1*$in]; # Displacement increment for pushover analysis
2. set DmaxPush [expr 20*$in]; # maximum displamcement for pushover analysis
3. set DtAnalysis [expr 0.005*$sec]; # time-step Dt for lateral analysis
4. set DtGround [expr 0.02*$sec]; # time-step Dt for input grond motion
5. set TmaxGround [expr 50 *$sec]; # maximum duration of ground-motion analysis
6. set gamma 0.5; # gamma value for newmark integration
7. set beta 0.25; # beta value for newmark integration
ANALYSIS
static
dynamic