Parameter Studies in Tcl Command Language -...
Transcript of Parameter Studies in Tcl Command Language -...
![Page 1: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/1.jpg)
Parameter Studies in Tcl Command Language
Silvia Mazzoni, Gregory L. Fenves
University of California, Berkeley
User Workshop 20 August 2001
![Page 2: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/2.jpg)
Objective of Study
ðDetermine static and dynamic response of nonlinear structural systemðStatic Push-over Analysis (nonlinear)ðDynamic Time-history Analysis
(nonlinear,inelastic)
ðSeries of framesðSeries of ground motions
![Page 3: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/3.jpg)
Analysis Procedure – the roadmap
RunFrame
Units
ParamList
GMFiles
Static
DynamicAnalysis
Parameters
NodalMesh
Materials
Elements RCcircSection
Output
Gravity
Lateral ReadSMDFile
![Page 4: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/4.jpg)
runFRAME.tcl
FRAME
GROUND MOTION
1. wipe
2. source Units.tcl; # define units
3. source ParamList.tcl; # load up parameter values
4. source GMFiles.tcl; # load up ground-motion filenames
5. foreach Xframe $iXframe {
set Hcol [lindex $iHcol [expr $Xframe-1]]; set Lcol [lindex $iLcol [expr $Xframe-1]];
set Lbeam [lindex $iLbeam [expr $Xframe-1]]; set GrhoCol [lindex $iGrhoCol [expr $Xframe-1]]
set Weight [lindex $iWeight [expr $Xframe-1]]; set GMfact [lindex $iGMfact [expr $Xframe-1]];
set Hbeam [lindex $iHbeam [expr $Xframe-1]]; set Bbeam [lindex $iBbeam [expr $Xframe-1]];
6. source Static.tcl; # load procedure for static analysis
7. source Dynamic.tcl; # load procedure for dynamic analysis
8. puts FRAME$Xframe........FRAME$Xframe........
9. puts STATIC_ANALYSIS
10. Static $Xframe $Hcol $Lcol $Lbeam $GIbIc $GrhoCol $GPcol $GMfact ;
11. puts DYNAMIC_ANALYSIS
12. foreach GroundFile $iGroundFile {
13. puts GroundMotion$GroundFile
14. Dynamic $Xframe $Hcol $Lcol $Lbeam $GIbIc $GrhoCol $GPcol $GMfact $GroundFile;
15. }
16. }
![Page 5: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/5.jpg)
constants
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 g [expr 32.2*$ft/pow($sec,2)];
8. set PI [expr 2*asin(1.0)];
9. set U 1.e10;
10. set u $U;
UNITS.tcl
basic units
engineering units
![Page 6: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/6.jpg)
ParamList.tcl
Study Parameters Study Case
1. set iXframe “1 2 3 4 5 "
2. set iHcol "[expr 6.*$ft] [expr 5.*$ft] [expr 5*$ft] [expr 6*$ft] [expr 6*$ft] "
3. set iLcol "[expr 40.*$ft] [expr 40.25*$ft] [expr 42*$ft] [expr 42*$ft] [expr 34*$ft] "
4. set iLbeam "[expr 40.*$ft] [expr 40.25*$ft] [expr 42*$ft] [expr 42*$ft] [expr 42*$ft] "
5. set iGIbIc "1. 1. 1. 1. 1. "
6. set iGrhoCol "0.015 0.02 0.02 0.02 0.015 "
7. set iGPcol "0.05 0.0643 0.04823 0.04466 0.04466 "
8. set iGMfact "1.645 1.645 1.645 2.389 1.645 "
![Page 7: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/7.jpg)
GMfiles.tcl
1. set iGroundFile {"CHI012" "QKP085" "E02140" "HOL360"
"ELC180" "RO3000" "CAS000“ "ARL360" }
2. # PEER/Silva Data set
3. # search: mag 6.0-7.5 # distance: 12-25km # USGS soil type C 180-360 m/sec # Free-Field Instruments
4. # filename = 'CHI012.at2'; # Imperial Valley, 1979 # 6621 Chiuauah, pga=0.27g
5. # filename = 'QKP085.at2'; # Imperial Valley, 1979 # Cucapah, pga=0.309g
6. # filename = 'E02140.at2'; # Imperial Valley, 1979 # 5515 El Centro Array #2, pga=0.315g
7. # filename = 'HOL360.at2'; # Northridge 1994 # 24303la Hollywood Stor FF, pga=0.364
8. # search: # PGA: 0.3-0.4 # distance: 12-25km # USGS soil type C 180-360 m/sec # Free-Field Instruments
9. # filename = 'ELC180.at2'; # Imperial Valley 1940 # 117 El Centro Arry #9, pga=0.314g
10. # filename = 'Ro3000.at2'; # Northridge 1994 # 90006 Sun Valley Roncoe blvd, pga=0.307g
11. # filename = 'CAS000.at2'; # Whittier-Narrows 1987# 90078 Compton Castlegate St., pga=0.334g
12. # random search:
13. # filename = 'ARL360.at2'; # Northridge 1994 # Arletta Nordhoff Fire Station, pga=0.310g
![Page 8: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/8.jpg)
static.tcl
1. proc Static {Xframe Hcol Lcol Lbeam GIbIc GrhoCol GPcol GMfact} {
2. set ANALYSIS "Static";
3. source analysis.tcl
4. }
1. proc Dynamic {Xframe Hcol Lcol Lbeam GIbIc GrhoCol GPcol GMfact GroundFile} {
2. set ANALYSIS "Dynamic";
3. source analysis.tcl
4. }
dynamic.tcl
![Page 9: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/9.jpg)
analysis.tcl
1. # Create modelbuilder
2. model basic -ndm 3 -ndf 6
3. source units.tcl;
4. source parameters.tcl;
5. source nodalmesh.tcl;
6. source materials.tcl;
7. source elements.tcl;
8. source output.tcl;
9. source gravity.tcl;
10. source lateral.tcl;
11. wipeanalysis
set up parameters and variables
set up structural model
specify data output
apply loading
![Page 10: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/10.jpg)
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,uncracked
5. set IyCol $IgCol; # elastic-column properties
6. set IzCol $IgCol; # elastic-column properties
7. set IzBeam [expr $GIbIc*$IgCol]; # BEAM gross moment of inertia -- horiz Z
8. set Hbeam [expr 8*$ft]; # beam depth, not really used
9. set Bbeam [expr $IzBeam*12/pow($Hbeam,3)]; # beam width not used
10. set IyBeam [expr $Hbeam*pow($Bbeam,3)/12]; # beam gross moment of inertia--vert Y
11. set Abeam [expr $Hbeam*$Bbeam*10000]; # beam cross-sectional area
12. set GLbLc [expr $Lbeam/$Lcol]; # beam-to-column length ratio
GEOMETRY
![Page 11: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/11.jpg)
parameters.tcl
1. 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 2.*$fc2C/$Ec]; # 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 70.*$ksi]; # STEEL yield stress
12. set epsY 0.002; # steel yield strain
13. set Fu [expr 110.*$ksi]; # ultimate stress of steel
14. set epsU 0.1; # ultimate strain of steel
15. set Es [expr $Fy/$epsY]; # Young's Modulus of steel
16. set Bs [expr ($Fu-$Fy)/($epsU-$epsY)/$Es]; # post-yield stiffness ratio of steel
# (+Tension, -Compression)
MATERIAL PROPERTIES
![Page 12: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/12.jpg)
parameters.tcl
1. set NbCol 20; # number of column longitudinal-reinf. bars
2. set AsCol [expr $GrhoCol*$Acol]; # total steel area in column section
3. set AbCol [expr $AsCol/$NbCol]; # bar area of column longitudinal reinforcement
4. set riCol 0.0; # inner radius of column section
5. set roCol $Rcol; # outer radius of column section
6. set np 5; # Number of integration points
7. set IDcore 1; # ID tag for core concrete
8. set IDcover 2; # ID tag for cover concrete
9. set IDsteel 3; # ID tag for steel
10. set nfCoreR 8; # number of radial fibers in core
11. set nfCoreT 16; # number of tangential fibers in core
12. set nfCoverR 2; # number of radial fibers in cover
13. set nfCoverT 16; # number of tangential fibers in cover
14. set IDcolFlex 2; # ID tag for column section in flexure
15. set IDcolTors 10; # ID tag for column section in torsion
16. set IDcolSec 1; # ID tag for column section
17. set IDcolTrans 1; # ID tag for column transformation, defining element normal
18. set IDbeamTrans 2; # ID tag for beam transformation, defining element normal
COLUMN & BEAM SECTION
![Page 13: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/13.jpg)
1. set Pdl [expr -$GPcol*$Acol*$fc]; # gravity axial load per column (-ve value = )
2. set Weight [expr $Pdl*2]; # super-structure weight
3. set Wbeam [expr $Weight/$Lbeam]; # gravity DL distributed along beam length
4. set Mdl [expr $Wbeam*pow($Lbeam,2)/12]; # nodal moment due to distributed DL
5. set Mass [expr $Weight/$g]; # mass of superstructure
6. set Mnode [expr $Mass/2]; # nodal mass for each column joint
parameters.tcl DEAD LOAD
![Page 14: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/14.jpg)
parameters.tcl
1. set xDamp 0.02; # modal damping ratio
2. set const [expr 12*$Ec*$IgCol/pow($Lcol,3)]; # condensed-K constant
3. set numer [expr $IgCol*$Lbeam+6*$IzBeam*$Lcol]; # condensed-K numerator
4. set denom [expr 3.*$IzBeam*$Lcol+2.*$IgCol*$Lbeam]; # condensed-K denominator
5. set Kgross [expr $const*$numer/$denom]; # condensed K of portal frame
6. set Gcrack 0.5; # cracked-stiffness factor
7. set Kcracked [expr $Kgross*$Gcrack]; # cracked stiffness
8. set omega [expr sqrt($Kcracked/$Mass)]; # natural frequency (rad/sec)
9. set Tperiod [expr 2*$PI/$omega]; # period (sec.)
10. set alphaM 0; # M-prop. RAYLEIGH damping
11. set betaK 0; # K-prop. RAYLEIGH damping – CURRENT K
12. set betaKcomm [expr 2*$xDamp/$omega]; # K-prop. RAYLEIGH damping – COMMITTED K
13. set betaKinit 0; # K-prop. RAYLEIGH damping – INITIAL K
DAMPING
D = alphaM*M + betaK*Kcurrent + betaKcomm*Kcommitted + betaKinit*Kinit
![Page 15: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/15.jpg)
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
![Page 16: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/16.jpg)
NodalMesh.tcl1. set IDctrlNode 3;
2. # Define nodes; # frame is in X-Y plane (X-horizontal, Y-vertical)
3. node 1 0.0 0.0 0.0
4. node 2 $Lbeam 0.0 0.0
5. node 3 0.0 $Lcol 0.0 -mass $Mnode 0.0 0.0 0.0 0.0 0.0
6. node 4 $Lbeam $Lcol 0.0 -mass $Mnode 0.0 0.0 0.0 0.0 0.0
7. # Boundary conditions; # node DX DY DZ RX RY RZ ! 1: fixed, 0: released
8. fix 1 1 1 1 1 1 1;
9. fix 2 1 1 1 1 1 1
10. fix 3 0 0 1 1 1 0
11. fix 4 0 0 1 1 1 0
12. # 3---------------------------4
13. # | |
14. # | |
15. # --1-- --2--
![Page 17: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/17.jpg)
materials.tcl concrete
1. set ConcreteMaterialType “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. }
![Page 18: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/18.jpg)
materials.tcl1. set SteelMaterialType “bilinear”
2. if {$SteelMaterialType == “elastic”} {
3. uniaxialMaterial Elastic $IDsteel $Es
4. }
5. if {$SteelMaterialType == “bilinear”} {
6. # Reinforcing steel, uniaxial bilinear steel model with isotropic hardening.
7. # Fy: yield strength, E0: initial elastic tangent modulus b: hardening ratio
8. # a1,a2,a3,a4 are optinonal parameters controlling isotropic hardening (default given)
9. # tag Fy E0 b <a1 a2 a3 a4>
10. uniaxialMaterial Steel01 $IDsteel $Fy $Es $Bs
11. }
12. if {$SteelMaterialType == “hysteretic”} {
13. # Reinforcing steel, uniaxial hysteretic steel model with isotropic hardening.
14. uniaxialMaterial Hysteretic $IDsteel $Fy $epsY $Fu $epsU -$Fy -$epsY -$Fu -$epsU
$pinchX $pinchY $damage1 $damage2 $betaMU
}
steel
![Page 19: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/19.jpg)
elements.tcl
1. 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.
8. if {$ColumnType == “elastic”} {
9. element elasticBeamColumn 1 1 3 $Acol $Ec $G $J $IyCol $IzCol $IDcolTrans
10. element elasticBeamColumn 2 2 4 $Acol $Ec $G $J $IyCol $IzCol $IDcolTrans }
11. if {$ColumnType == “inelastic”} {
12. # element element type ID, node I, node J, no. int pts, section ID, transf. ID
13. element nonlinearBeamColumn 1 1 3 $np $IDcolSec $IDcolTrans
14. element nonlinearBeamColumn 2 2 4 $np $IDcolSec $IDcolTrans }
15. geomTransf Linear $IDbeamTrans 0 0 1; # BEAM transformation, define element normal
16. element elasticBeamColumn 3 3 4 $Abeam $Ec $G $J $ IyBeam $IzBeam $IDbeamTrans
CO
LU
MN
BE
AM
![Page 20: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/20.jpg)
output.tcl
1. if {$ANALYSIS == "Static"} {
2. # Record nodal displacements
3. recorder Node DStatFrame$Xframe.out disp -time -node $IDctrlNode -dof 1
4. # Record element forces
5. for {set iel 1} {$iel <= 2} {incr iel 1} {
6. recorder Element $iel -file El[expr $iel]FStatFrame$Xframe.out force
7. }
8. }
9. if {$ANALYSIS == "Dynamic"} {
10. # Record nodal displacements
11. recorder Node DDynaFrame[expr $Xframe]_$GroundFile.out disp -time -node
$IDctrlNode -dof 1
1. # Record element forces
2. for {set iel 1} {$iel <= 2} {incr iel 1} {
3. recorder Element $iel -time -file El[expr $iel]FDynaFrame[expr $Xframe]_$GroundFile.out force
4. }
5. }
![Page 21: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/21.jpg)
gravity.tcl
1. # set up solution procedure
2. system SparseGeneral; # solution procedure, Super-LU, how it solves system of equations
3. constraints Plain; # how it handles boundary conditions, Plain: removes restrained DOFs
4. # set up convergence criteria
5. test NormUnbalance 1.e-5 20 0; # tolerance, max no. of iter., and print code, 1: every iter.
6. algorithm Newton; # use Newton's solution algorithm: updates tangent K at every iter.
7. numberer RCM; # renumber dof's to minimize band-width (optimization)
8. # set up load stepping # variable load-step
9. integrator LoadControl 0 1 0 0; # : Do init. incr., desired # of iter. to conv., Dmax, Dmin
10. analysis Static; # set up type of analysis, static for gravity
11. pattern Plain 1 Constant {
12. load $IDctrlNode 0.0 -$Pdl 0.0 0.0 0.0 -$Mdl; # Fx Fy Fz Mx My Mz
13. load [expr $IDctrlNode+1] 0.0 -$Pdl 0.0 0.0 0.0 +$Mdl }
14. analyze 1; # APPLY GRAVITY DL
![Page 22: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/22.jpg)
lateral.tcl static
1. set PUSHOVER "DispControl"; # run displacement-controlled static pushover analysis
2. if {$ANALYSIS == "Static"} {
3. # Set lateral load pattern
4. pattern Plain 2 Linear {
5. load $IDctrlNode 100.0 0.0 0.0 0.0 0.0 0.0
6. load [expr $IDctrlNode+1] 100.0 0.0 0.0 0.0 0.0 0.0 }
7. if {$PUSHOVER == "LoadControl"} {
8. integrator LoadControl 0.2 4 0.1 2.0
9. set Nsteps 20
10. analysis Static
11. } elseif {$PUSHOVER == "DispControl"} {
12. integrator DisplacementControl $IDctrlNode 1 $DxPush 1 $DxPush $DxPush
13. set Nsteps [expr int($DmaxPush/$DxPush)]
14. analysis Static
15. } else { puts stderr "Invalid PUSHOVER option“ }
16. }
![Page 23: Parameter Studies in Tcl Command Language - …opensees.berkeley.edu/OpenSees/workshops/Aug2001/SilviaMazzoni20...Parameter Studies in Tcl Command Language Silvia Mazzoni, Gregory](https://reader036.fdocuments.in/reader036/viewer/2022081802/5ae360cf7f8b9a495c8d273d/html5/thumbnails/23.jpg)
lateral.tcl dynamic
1. elseif {$ANALYSIS == "Dynamic"} {
2. wipeAnalysis
3. system SparseGeneral
4. constraints Plain
5. test NormUnbalance 1.0e-2 20 0
6. algorithm Newton
7. numberer RCM
8. integrator Newmark $gamma $beta $alphaM $betaK $betaKcomm $betaKinit; #damping
9. analysis Transient
10. set Nsteps [expr int($TmaxGround/$DtAnalysis)];
11. source ReadSMDFile.tcl; # read in procedure definition to convert data file types
12. set outFile $GroundFile.g3; # set variable holding new filename (PEER files have .at2 extension)
13. ReadSMDFile $GroundFile.at2 $outFile dt; # call procedure to convert the ground-motion file
14. set GMfatt [expr $g*$GMfact]; # data in input file is factor of g
15. set Gaccel "Series -dt $dt -filePath $outFile -factor $GMfatt"; # time series information
16. pattern UniformExcitation 2 1 -accel $Gaccel; # create uniform excit., 2:tag, 1:direxn
17. } else { puts stderr “Invalid ANALYSIS option” }
18. analyze $Nsteps $DtAnalysis Applies to both static & dynamic analyses