Search found 26 matches

by civilengr_tahir
Fri Jun 14, 2013 11:39 am
Forum: Useful Scripts.
Topic: Modal Push Over Analysis
Replies: 20
Views: 52994

Re: Modal Push Over Analysis

you are more than welcome :)
by civilengr_tahir
Fri Jun 14, 2013 11:31 am
Forum: Useful Scripts.
Topic: Modal Push Over Analysis
Replies: 20
Views: 52994

Re: Modal Push Over Analysis

No I did not try Adaptive pushover,I did Modal pushover instead. As I explained to u earlier, the material or hysteretic behavior of SDOF depends upon the response of Multimode full structure.. first u have to run a reversed cyclic Pushover analysis then after examining the hystertic loops it will be clear whether a bilinear is more suitable or any other material behavior. Thats my e-mail address civilengr_tahir@hotmail, u can send me an e-mail, if u need more information..
by civilengr_tahir
Fri Jun 14, 2013 2:15 am
Forum: Useful Scripts.
Topic: Modal Push Over Analysis
Replies: 20
Views: 52994

Re: Modal Push Over Analysis

welcome :) there is no need to apply any axial load for SDOF..u can remove that OR even if u keep it zero it doesnt matter
by civilengr_tahir
Thu Jun 13, 2013 11:59 pm
Forum: Useful Scripts.
Topic: Modal Push Over Analysis
Replies: 20
Views: 52994

Re: Modal Push Over Analysis

you can easily modify this code, if you want to use bi-linear relationship,just replace the uni-axial hysteretic material with a bi-linear one
by civilengr_tahir
Thu Jun 13, 2013 11:55 pm
Forum: Useful Scripts.
Topic: Modal Push Over Analysis
Replies: 20
Views: 52994

Re: Modal Push Over Analysis

I have use uni-axial hysteresis material for SDOF. Then I have assigned the Fsn/Ln - Dn relationship to a zerolength element with unit mass..here is the code,let me if it is not working..

# units: N, m, sec
wipe; # clear memory of all past model definitions
set val1 [clock seconds];
file mkdir Data; # create data directory
model BasicBuilder -ndm 2 -ndf 3; # Define the model builder, ndm=#dimension, ndf=#dofs

# nodal coordinates:
node 1 0 0 ;
node 2 0 0 ;

puts "Generated - NODES"
fix 1 1 1 1


equalDOF 1 2 2 3;

mass 2 1 1.00E-09 1.00E-09

# Define Fsn/Ln - Dn relationship

#uniaxialMaterial Hysteretic $matTag $s1p $e1p $s2p $e2p <$s3p $e3p> $s1n $e1n $s2n $e2n <$s3n $e3n> $pinchX $pinchY $damage1 $damage2 <$beta>

set matTag 1;

set y1 1283.03;
set x1 193.72;

set y2 1464.5;
set x2 1243.9;


set ny1 -1283.03;
set nx1 -193.72;

set ny2 -1464.5;
set nx2 -1243.9;



set pinchX 0;
set pinchY 0;

set damage1 0.0;

set damage2 0.0;

set beta 0.5;

uniaxialMaterial Hysteretic $matTag $y1 $x1 $y2 $x2 $ny1 $nx1 $ny2 $nx2 $pinchX $pinchY $damage1 $damage2 $beta




element zeroLength 1 1 2 -mat 1 -dir 1

pattern Plain 1 Linear {

load 2 0 0 0











}
#NOTE: unit system;
#force = N;
#length = mm;
#mass = Ton;
#ground motion = G;
#ground motion scale = 9810;


constraints Transformation;
numberer RCM;
system BandGeneral;
test NormUnbalance 1.0e-3 200 5
algorithm KrylovNewton
integrator LoadControl 0.1
puts "START : Gravity Load Analysis"
analysis Static
for {set i 1} {$i <= 9} {incr i} {
puts "Step = $i/10"

analyze 1
}


recorder Element -file Data/SpringForce1D.txt -time -ele 1 force;
recorder Element -file Data/SpringDispm1D.txt -time -ele 1 deformation;

puts "Step = 10/10"
analyze 1
puts "COMPLETED : Gravity Load Analysis"

loadConst -time 0.0

set GMdirectionX 1;

set GMfileX "ELL.txt"

set DtAnalysis [expr 0.005];
set TmaxAnalysis [expr 40];
set dt 0.005;
set GMfatt 34335;
set AccelSeriesX "Series -dt $dt -filePath $GMfileX -factor $GMfatt";

set xDamp 0.02
set MpropSwitch 1.0;
set KcurrSwitch 0.0;
set KcommSwitch 0.0;
set KinitSwitch 1.0;
set omegaI 4.18;
set omegaJ 5.18;
set alphaM [expr $MpropSwitch*$xDamp*(2.0*$omegaI*$omegaJ)/($omegaI+$omegaJ)];
set betaKcurr [expr $KcurrSwitch*2.0*$xDamp/($omegaI+$omegaJ)];
set betaKcomm [expr $KcommSwitch*2.0*$xDamp/($omegaI+$omegaJ)];
set betaKinit [expr $KinitSwitch*2.0*$xDamp/($omegaI+$omegaJ)];
set Nsteps [expr int($TmaxAnalysis/$DtAnalysis)];
rayleigh $alphaM $betaKcurr $betaKinit $betaKcomm;

constraints Transformation;
numberer RCM;
system BandGeneral;
test NormDispIncr 1.0e-3 50 5
algorithm NewtonLineSearch 0.5
integrator Newmark 0.5 0.25
analysis Transient

pattern UniformExcitation 2 $GMdirectionX -accel $AccelSeriesX;



puts "START : Dynamic Ground Motion Analysis (NDA)"
for {set i 1} { $i <= $Nsteps } { incr i } {
analyze 1 $DtAnalysis
set val2 [clock seconds]
puts "t= [format %6.3f [expr $DtAnalysis*$i]] Secs, Start Time=[clock format $val1 -format "%D %X %P"] ,Current Time= [clock format $val2 -format "%D %X %P"] "
}
set elapsedTime [expr $val2-$val1]
set days [ expr int($elapsedTime/86400)]
set hours [expr int(($elapsedTime-$days*86400)/3600)]
set minutes [expr int(($elapsedTime- $days*86400-$hours*3600)/60)]
set seconds [expr int($elapsedTime- $days*86400-$hours*3600-$minutes*60)]
puts "COMPLETED : Dynamic Ground Motion Analysis (White Noise)"
puts "Total Time Required --> $days days $hours hours $minutes minutes $seconds seconds"
by civilengr_tahir
Thu Jun 13, 2013 12:57 pm
Forum: Useful Scripts.
Topic: Modal Push Over Analysis
Replies: 20
Views: 52994

Re: Modal Push Over Analysis

You are welcome..Actually the choice of SDOF Idealized mode depends upon the hysterics behavior of your structure..U have to run Reversed cyclic Pushover analysis to get an idea of hysterics response of ur structure..By looking at hysterics response if u thinks that bilinear model is suitable for that specific building go for that..If u thinks its flage shaped then go flage shaped model. Accuracy of your results will greatly depends upon the choice of SDOF model..I hope this will help you,Dont hesitate to ask more questions :)
by civilengr_tahir
Thu Jun 07, 2012 11:23 pm
Forum: Useful Scripts.
Topic: Modal Push Over Analysis
Replies: 20
Views: 52994

Re: Modal Push Over Analysis

you are more than welcome :)
by civilengr_tahir
Mon Jan 30, 2012 7:54 am
Forum: OpenSees.exe Users
Topic: Eigenvalue analysis problems
Replies: 6
Views: 5933

Re: Eigenvalue analysis problems

Hi vesna..Thank you for ur reply..I need to calculate moment at each story,in static analysis its simple to get the moment by multilying the total height with Fx,but in time history analysis it wont be like that I think,because center of resultant force can shift downward.Thats why when I calculate the moment by Fx in height results seems wrong. I dont know how to calculate the moments, Im not sure wether I explain in right way or not.Anyways thanx for ur reply
by civilengr_tahir
Fri Jan 13, 2012 5:48 am
Forum: OpenSees.exe Users
Topic: Reverse cycle displacement control at two nodes
Replies: 11
Views: 12227

Re: Reverse cycle displacement control at two nodes

hi hjxiang and Vesna..
I also want to apply the Reverse cyclic history on a certain in my model. I did the same as you( hjxiang) have done,but when I look at the results it shows that displacement is increasing monotonically not as i write in my dispalcement history(i.e reverse cyclic). Can you please share your full input tcl script or atleast the analysis part of you in put plz
by civilengr_tahir
Wed Jan 11, 2012 11:44 pm
Forum: OpenSees.exe Users
Topic: Eigenvalue analysis problems
Replies: 6
Views: 5933

Re: Eigenvalue analysis problems

Thank you Vesna..I got it..I have another question,
I am having problem using 4 nonded Quad elements. Its a 2D model of a shear wall. Since it is a 2D model it gives my forces in x and y directions only. Is there any way I can get moments? I have done a time history analysis using Quad elements,so point of inflection can fluctuate therefore it is not possible to get the Moment by simply shear force into full height of wall. I dont know how to get moments from this model,if I calculate using maximum shear force at each storey and total height as shear span the results seems wrong . Can you please explain,is there any way I can get the moment directly from opensees?
by civilengr_tahir
Sun Jan 08, 2012 10:14 am
Forum: Useful Scripts.
Topic: Modal Push Over Analysis
Replies: 20
Views: 52994

Re: Modal Push Over Analysis

hi sghanea
here is an example for a 30 story shear wall for modal pushover analysis. wall is model by using non-linear beam column elements. you can see that the in pattern Plain 2 Linear lateral force (Sn1=m*phi_1) has been applied and then the wall is pushed upto 1% drift. For 2nd and 3rd mode repeat the same process by just changing the Sn2=m*phi_2 and Sn3=m*phi_3.
Hope so it will help you :D



# units: KN, m, sec
wipe; # clear memory of all past model definitions
set val1 [clock seconds];
file mkdir Data; # create data directory
model BasicBuilder -ndm 2 -ndf 3; # Define the model builder, ndm=#dimension, ndf=#dofs

node 1 0 0 ;
node 2 0 3500 ;
node 3 0 7000 ;
node 4 0 10500 ;
node 5 0 14000 ;
node 6 0 17500 ;
node 7 0 21000 ;
node 8 0 24500 ;
node 9 0 28000 ;
node 10 0 31500 ;
node 11 0 35000 ;
node 12 0 38500 ;
node 13 0 42000 ;
node 14 0 45500 ;
node 15 0 49000 ;
node 16 0 52500 ;
node 17 0 56000 ;
node 18 0 59500 ;
node 19 0 63000 ;
node 20 0 66500 ;
node 21 0 70000 ;
node 22 0 73500 ;
node 23 0 77000 ;
node 24 0 80500 ;
node 25 0 84000 ;
node 26 0 87500 ;
node 27 0 91000 ;
node 28 0 94500 ;
node 29 0 98000 ;
node 30 0 101500 ;



puts "Generated - NODES"

fix 1 1 1 1

puts "Generated - RESTRAINTS"



# unconfined concrete
set fc1U -24; # UNCONFINED concrete (todeschini parabolic model), maximum stress
set eps1U -0.003; # strain at maximum strength of unconfined concrete
set fc2U [expr 0.2*$fc1U]; # ultimate stress
set eps2U -0.01; # strain at ultimate stress
set lambda 0.1; # ratio between unloading slope at $eps2 and initial slope $Ec
# tensile-strength properties
set ftU [expr -0.1*$fc1U]; # tensile strength +tension
set Ets [expr $ftU/0.002]; # tension softening stiffness
# -----------

uniaxialMaterial Concrete02 1 $fc1U $eps1U $fc2U $eps2U $lambda $ftU $Ets; # build cover concrete (unconfined)


# -----------
set Fy 400; # STEEL yield stress
set Es 200000; # modulus of steel
set Bs 0.01; # strain-hardening ratio
set R0 18; # control the transition from elastic to plastic branches
set cR1 0.925; # control the transition from elastic to plastic branches
set cR2 0.15; # control the transition from elastic to plastic branches
uniaxialMaterial Steel02 2 $Fy $Es $Bs $R0 $cR1 $cR2; # build reinforcement material






# FIBER SECTION properties -------------------------------------------------------------
## set some paramaters


section fiberSec 1 {





#patch quad $matTag $numSubdivIJ $numSubdivJK $yI $zI $yJ $zJ $yK $zK $yL $zL


patch quad 1 4 50 0 0 4500 0 4500 310 0 310



# Create the reinforcing fibers
layer straight 2 2 314 80 80 80 230
layer straight 2 2 314 220 80 220 230
layer straight 2 2 314 345 80 345 230
layer straight 2 2 314 470 80 470 230
layer straight 2 2 314 595 80 595 230
layer straight 2 2 314 720 80 720 230
layer straight 2 2 113 845 80 845 230
layer straight 2 2 113 1045 80 1045 230
layer straight 2 2 113 1245 80 1245 230
layer straight 2 2 113 1445 80 1445 230
layer straight 2 2 113 1645 80 1645 230
layer straight 2 2 113 1845 80 1845 230
layer straight 2 2 113 2045 80 2045 230
layer straight 2 2 113 2245 80 2245 230
layer straight 2 2 113 2445 80 2445 230
layer straight 2 2 113 2645 80 2645 230
layer straight 2 2 113 2845 80 2845 230
layer straight 2 2 113 3045 80 3045 230
layer straight 2 2 113 3245 80 3245 230
layer straight 2 2 113 3445 80 3445 230
layer straight 2 2 113 3645 80 3645 230
layer straight 2 2 490 3770 80 3770 230
layer straight 2 2 490 3895 80 3895 230
layer straight 2 2 490 4020 80 4020 230
layer straight 2 2 490 4145 80 4145 230
layer straight 2 2 490 4270 80 4270 230
layer straight 2 2 490 4395 80 4395 230
layer straight 2 2 490 4475 80 4475 230

}



section fiberSec 2 {





#patch quad $matTag $numSubdivIJ $numSubdivJK $yI $zI $yJ $zJ $yK $zK $yL $zL


patch quad 1 4 50 0 0 4500 0 4500 250 0 250



# Create the reinforcing fibers
layer straight 2 2 314 50 50 50 200
layer straight 2 2 314 190 50 190 200
layer straight 2 2 314 315 50 315 200
layer straight 2 2 314 440 50 440 200
layer straight 2 2 200 565 50 565 200
layer straight 2 2 200 690 50 690 200
layer straight 2 2 113 815 50 815 200
layer straight 2 2 113 1035 50 1035 200
layer straight 2 2 113 1255 50 1255 200
layer straight 2 2 113 1475 50 1475 200
layer straight 2 2 113 1695 50 1695 200
layer straight 2 2 113 1915 50 1915 200
layer straight 2 2 113 2135 50 2135 200
layer straight 2 2 113 2355 50 2355 200
layer straight 2 2 113 2575 50 2575 200
layer straight 2 2 113 2795 50 2795 200
layer straight 2 2 113 3015 50 3015 200
layer straight 2 2 113 3235 50 3235 200
layer straight 2 2 113 3455 50 3455 200
layer straight 2 2 113 3675 50 3675 200
layer straight 2 2 314 3800 50 3800 200
layer straight 2 2 314 3925 50 3925 200
layer straight 2 2 314 4050 50 4050 200
layer straight 2 2 314 4175 50 4175 200
layer straight 2 2 490 4300 50 4300 200
layer straight 2 2 490 4445 50 4445 200




}





section fiberSec 3 {





#patch quad $matTag $numSubdivIJ $numSubdivJK $yI $zI $yJ $zJ $yK $zK $yL $zL


patch quad 1 4 50 0 0 4500 0 4500 250 0 250



# Create the reinforcing fibers
layer straight 2 2 314 50 50 50 200
layer straight 2 2 314 190 50 190 200
layer straight 2 2 200 315 50 315 200
layer straight 2 2 200 440 50 440 200
layer straight 2 2 200 565 50 565 200
layer straight 2 2 200 690 50 690 200
layer straight 2 2 113 815 50 815 200
layer straight 2 2 113 1065 50 1065 200
layer straight 2 2 113 1315 50 1315 200
layer straight 2 2 113 1565 50 1565 200
layer straight 2 2 113 1815 50 1815 200
layer straight 2 2 113 2065 50 2065 200
layer straight 2 2 113 2315 50 2315 200
layer straight 2 2 113 2565 50 2565 200
layer straight 2 2 113 2815 50 2815 200
layer straight 2 2 113 3065 50 3065 200
layer straight 2 2 113 3315 50 3315 200
layer straight 2 2 113 3565 50 3565 200
layer straight 2 2 314 3815 50 3815 200
layer straight 2 2 314 3940 50 3940 200
layer straight 2 2 314 4065 50 4065 200
layer straight 2 2 314 4190 50 4190 200
layer straight 2 2 490 4315 50 4315 200
layer straight 2 2 490 4440 50 4440 200



}


section fiberSec 4 {





#patch quad $matTag $numSubdivIJ $numSubdivJK $yI $zI $yJ $zJ $yK $zK $yL $zL


patch quad 1 4 50 0 0 4500 0 4500 250 0 250



# Create the reinforcing fibers
layer straight 2 2 314 50 50 50 200
layer straight 2 2 314 190 50 190 200
layer straight 2 2 200 315 50 315 200
layer straight 2 2 200 440 50 440 200
layer straight 2 2 200 565 50 565 200
layer straight 2 2 200 690 50 690 200
layer straight 2 2 63 815 50 815 200
layer straight 2 2 113 965 50 965 200
layer straight 2 2 113 1115 50 1115 200
layer straight 2 2 113 1265 50 1265 200
layer straight 2 2 113 1415 50 1415 200
layer straight 2 2 113 1565 50 1565 200
layer straight 2 2 113 1715 50 1715 200
layer straight 2 2 113 1865 50 1865 200
layer straight 2 2 113 2015 50 2015 200
layer straight 2 2 113 2165 50 2165 200
layer straight 2 2 113 2315 50 2315 200
layer straight 2 2 113 2465 50 2465 200
layer straight 2 2 113 2615 50 2615 200
layer straight 2 2 113 2765 50 2765 200
layer straight 2 2 113 2915 50 2915 200
layer straight 2 2 113 3065 50 3065 200
layer straight 2 2 113 3215 50 3215 200
layer straight 2 2 113 3365 50 3365 200
layer straight 2 2 113 3515 50 3515 200
layer straight 2 2 113 3665 50 3665 200
layer straight 2 2 314 3815 50 3815 200
layer straight 2 2 314 3940 50 3940 200
layer straight 2 2 314 4065 50 4065 200
layer straight 2 2 314 4190 50 4190 200
layer straight 2 2 490 4315 50 4315 200
layer straight 2 2 490 4440 50 4440 200




}

section fiberSec 5 {





#patch quad $matTag $numSubdivIJ $numSubdivJK $yI $zI $yJ $zJ $yK $zK $yL $zL


patch quad 1 4 50 0 0 4500 0 4500 250 0 250



# Create the reinforcing fibers
layer straight 2 2 200 50 50 50 200
layer straight 2 2 200 190 50 190 200
layer straight 2 2 200 315 50 315 200
layer straight 2 2 200 440 50 440 200
layer straight 2 2 200 565 50 565 200
layer straight 2 2 200 690 50 690 200
layer straight 2 2 63 815 50 815 200
layer straight 2 2 113 990 50 990 200
layer straight 2 2 113 1165 50 1165 200
layer straight 2 2 113 1340 50 1340 200
layer straight 2 2 113 1515 50 1515 200
layer straight 2 2 113 1690 50 1690 200
layer straight 2 2 113 1865 50 1865 200
layer straight 2 2 113 2040 50 2040 200
layer straight 2 2 113 2215 50 2215 200
layer straight 2 2 113 2390 50 2390 200
layer straight 2 2 113 2565 50 2565 200
layer straight 2 2 113 2740 50 2740 200
layer straight 2 2 113 2915 50 2915 200
layer straight 2 2 113 3090 50 3090 200
layer straight 2 2 113 3265 50 3265 200
layer straight 2 2 113 3440 50 3440 200
layer straight 2 2 113 3615 50 3615 200
layer straight 2 2 314 3790 50 3790 200
layer straight 2 2 314 3915 50 3915 200
layer straight 2 2 314 4040 50 4040 200
layer straight 2 2 314 4165 50 4165 200
layer straight 2 2 314 4290 50 4290 200
layer straight 2 2 314 4415 50 4415 200




}


section fiberSec 6 {





#patch quad $matTag $numSubdivIJ $numSubdivJK $yI $zI $yJ $zJ $yK $zK $yL $zL


patch quad 1 4 50 0 0 4500 0 4500 250 0 250



# Create the reinforcing fibers
layer straight 2 2 200 50 50 50 200
layer straight 2 2 200 190 50 190 200
layer straight 2 2 200 315 50 315 200
layer straight 2 2 200 440 50 440 200
layer straight 2 2 200 565 50 565 200
layer straight 2 2 200 690 50 690 200
layer straight 2 2 63 815 50 815 200
layer straight 2 2 113 1015 50 1015 200
layer straight 2 2 113 1215 50 1215 200
layer straight 2 2 113 1415 50 1415 200
layer straight 2 2 113 1615 50 1615 200
layer straight 2 2 113 1815 50 1815 200
layer straight 2 2 113 2015 50 2015 200
layer straight 2 2 113 2215 50 2215 200
layer straight 2 2 113 2415 50 2415 200
layer straight 2 2 113 2615 50 2615 200
layer straight 2 2 113 2815 50 2815 200
layer straight 2 2 113 3015 50 3015 200
layer straight 2 2 113 3215 50 3215 200
layer straight 2 2 113 3415 50 3415 200
layer straight 2 2 113 3615 50 3615 200
layer straight 2 2 314 3815 50 3815 200
layer straight 2 2 314 3940 50 3940 200
layer straight 2 2 314 4065 50 4065 200
layer straight 2 2 314 4190 50 4190 200
layer straight 2 2 314 4315 50 4315 200
layer straight 2 2 314 4440 50 4440 200





}




# define geometric transformation: performs a linear geometric transformation of beam stiffness and resisting force from the basic system to the global-coordinate system
set ColTransfTag 1; # associate a tag to column transformation
geomTransf Linear $ColTransfTag ;

# element connectivity:
set numIntgrPts 5; # number of integration points for force-based element
element dispBeamColumn 1 1 2 $numIntgrPts 1 $ColTransfTag;
element dispBeamColumn 2 2 3 $numIntgrPts 1 $ColTransfTag;
element dispBeamColumn 3 3 4 $numIntgrPts 2 $ColTransfTag;
element dispBeamColumn 4 4 5 $numIntgrPts 2 $ColTransfTag;
element dispBeamColumn 5 5 6 $numIntgrPts 3 $ColTransfTag;
element dispBeamColumn 6 6 7 $numIntgrPts 4 $ColTransfTag;
element dispBeamColumn 7 7 8 $numIntgrPts 4 $ColTransfTag;
element dispBeamColumn 8 8 9 $numIntgrPts 4 $ColTransfTag;
element dispBeamColumn 9 9 10 $numIntgrPts 5 $ColTransfTag;
element dispBeamColumn 10 10 11 $numIntgrPts 5 $ColTransfTag;
element dispBeamColumn 11 11 12 $numIntgrPts 5 $ColTransfTag;
element dispBeamColumn 12 12 13 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 13 13 14 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 14 14 15 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 15 15 16 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 16 16 17 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 17 17 18 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 18 18 19 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 19 19 20 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 20 20 21 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 21 21 22 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 22 22 23 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 23 23 24 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 24 24 25 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 25 25 26 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 26 26 27 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 27 27 28 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 28 28 29 $numIntgrPts 6 $ColTransfTag;
element dispBeamColumn 29 29 30 $numIntgrPts 6 $ColTransfTag;









puts "Generated - ELEMENTS"

pattern Plain 1 Linear {
load 2 0 -279310.3448 0
load 3 0 -279310.3448 0
load 4 0 -279310.3448 0
load 5 0 -279310.3448 0
load 6 0 -279310.3448 0
load 7 0 -279310.3448 0
load 8 0 -279310.3448 0
load 9 0 -279310.3448 0
load 10 0 -279310.3448 0
load 11 0 -279310.3448 0
load 12 0 -279310.3448 0
load 13 0 -279310.3448 0
load 14 0 -279310.3448 0
load 15 0 -279310.3448 0
load 16 0 -279310.3448 0
load 17 0 -279310.3448 0
load 18 0 -279310.3448 0
load 19 0 -279310.3448 0
load 20 0 -279310.3448 0
load 21 0 -279310.3448 0
load 22 0 -279310.3448 0
load 23 0 -279310.3448 0
load 24 0 -279310.3448 0
load 25 0 -279310.3448 0
load 26 0 -279310.3448 0
load 27 0 -279310.3448 0
load 28 0 -279310.3448 0
load 29 0 -279310.3448 0
load 30 0 -279310.3448 0



}
puts "Generated - LOADS"
#NOTE: unit system;
#force = N;
#length = mm;
#mass = Ton;
#ground motion = G;
#ground motion scale = 9810;

constraints Transformation;
numberer RCM;
system UmfPack;
test NormUnbalance 1.0e-1 200 5
algorithm NewtonLineSearch 0.5
integrator LoadControl 0.1
puts "START : Gravity Load Analysis"
analysis Static
for {set i 1} {$i <= 9} {incr i} {
puts "Step = $i/10"

analyze 1
}




recorder Node -file Data/DFree.out -time -node 30 -dof 1 2 3 disp;

recorder Node -file Data/RBase.out -time -node 1 -dof 1 2 3 reaction;

recorder Element -file Data/ForceColumn.txt -time -ele 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 localForce;

puts "Step = 10/10"
analyze 1
puts "COMPLETED : Gravity Load Analysis"

loadConst -time 0.0

pattern Plain 2 Linear {
load 1 0 0 0 0 0 ;
load 2 0.032627923 0 0 0 0 ;
load 3 0.266232882 0 0 0 0 ;
load 4 0.886711781 0 0 0 0 ;
load 5 2.070090893 0 0 0 0 ;
load 6 3.976356713 0 0 0 0 ;
load 7 6.754802549 0 0 0 0 ;
load 8 10.54169796 0 0 0 0 ;
load 9 15.45740983 0 0 0 0 ;
load 10 21.61421658 0 0 0 0 ;
load 11 29.10876817 0 0 0 0 ;
load 12 38.0260617 0 0 0 0 ;
load 13 48.4401269 0 0 0 0 ;
load 14 60.41114723 0 0 0 0 ;
load 15 73.9924515 0 0 0 0 ;
load 16 89.2243448 0 0 0 0 ;
load 17 106.133423 0 0 0 0 ;
load 18 124.7458707 0 0 0 0 ;
load 19 145.0686796 0 0 0 0 ;
load 20 167.1103494 0 0 0 0 ;
load 21 190.867864 0 0 0 0 ;
load 22 216.3317642 0 0 0 0 ;
load 23 243.4898487 0 0 0 0 ;
load 24 272.3253923 0 0 0 0 ;
load 25 302.8178312 0 0 0 0 ;
load 26 334.950303 0 0 0 0 ;
load 27 368.6974457 0 0 0 0 ;
load 28 404.046921 0 0 0 0 ;
load 29 440.9759716 0 0 0 0 ;
load 30 479.47788 0 0 0 0 ;



}

set BuildingHeight 101500;
set TargetRoofDispInPercent 1;
set dU [expr 0.01/100*$BuildingHeight];
set nStep [expr int($TargetRoofDispInPercent*$BuildingHeight/100/$dU)];
set controlNode 30;
set story1node 2;
set story2node 6;
set story1Height 3200;
set ddirection 1;
set iterno 4000;
constraints Transformation;
numberer RCM;
system UmfPack;
integrator DisplacementControl $controlNode $ddirection $dU;
puts "START : Push Over Analysis";
analysis Static;

proc callAlgo {x nstep step drift} {
if {$x == 1} {
puts "";
puts "Step = $step/$nstep, Target drift (%) = $drift -- Trying KrylovNewton ..";
puts "";
algorithm KrylovNewton;
set ok [analyze 1];
}
if {$x == 2} {
puts "";
puts "Step = $step/$nstep, Target drift (%) = $drift -- Trying NewtonLineSearch ..";
puts "";
algorithm NewtonLineSearch 0.8;
set ok [analyze 1];
}
if {$x == 3} {
puts "";
puts "Step = $step/$nstep, Target drift (%) = $drift -- Trying Newton with Initial Tangent..";
puts "";
algorithm Newton -initial;
set ok [analyze 1]
}
return $ok;
}

for {set i 1} {$i <= $nStep} {incr i} {
set drift [expr $dU*$i*100/$BuildingHeight]
test NormDispIncr 1.0e-5 $iterno 5;
#set ok -7;
#set j 0;
#while {$ok == -7} {
# set j [expr $j+1];
# set ok [callAlgo $j $nStep $i $drift];
# if {$j == 3 && $ok < 0} {
# set ok -8;
# };
#}
#if {$ok == -8} {
# test NormDispIncr 1.0e-5 [expr 2*$iterno] 5;
# puts "";
# puts "Divided into 2 small steps";
# puts "";
# callAlgo 1 $nStep "$i.1" [expr (($i-1)*$dU + $dU/2)*100/$BuildingHeight];
# callAlgo 1 $nStep "$i.2" [expr $drift];
#}
#if {$ok < 0} {
# test NormDispIncr 1.0e-5 [expr 2*$iterno] 5;
# puts "Number of iterations = [expr 2*$iterno]";
# callAlgo 1 $nStep $i $drift;
#}
callAlgo 1 $nStep $i $drift;
set val2 [clock seconds]
set elapsedTime [expr $val2-$val1]
set days [expr int($elapsedTime/86400)]
set hours [expr int(($elapsedTime-$days*86400)/3600)]
set minutes [expr int(($elapsedTime- $days*86400-$hours*3600)/60)]
set seconds [expr int($elapsedTime- $days*86400-$hours*3600-$minutes*60)]
set curDrift [expr $dU*$i*100/$BuildingHeight]
puts "";
puts "Step = $i/$nStep, To = [clock format $val1 -format "%I:%M:%S %P"] ,Tc = [clock format $val2 -format "%I:%M:%S %P"]"
puts "Current Roof Drift (%) = $curDrift, Target Rooft Drift(%) = $TargetRoofDispInPercent"
set Node1Disp [nodeDisp $story1node $ddirection]
set Node2Disp [nodeDisp $story2node $ddirection]
set Story1Drift [expr ($Node2Disp-$Node1Disp)*100/$story1Height]
puts "1st-Drift (%) = $Story1Drift";
puts "";
puts "==================================================";
if {$Story1Drift > 100} {
puts "";
return "Either the building fails or the program fails";
}
}

puts "COMPLETED :"
puts "Total Time Required --> $days days $hours hours $minutes minutes $seconds seconds"
by civilengr_tahir
Sat Jan 07, 2012 12:39 am
Forum: OpenSees.exe Users
Topic: cyclic load analysis
Replies: 2
Views: 2970

Re: cyclic load analysis

Hi aslam... r u from Pakistan? from NED Karachi? Im Tahir from Pakistan,right now studying in AIT,Bangkok..If you need any help feel free to contact,my e-mail address is civilengr_tahir@hotmail.com
by civilengr_tahir
Fri Jan 06, 2012 11:44 am
Forum: OpenSees.exe Users
Topic: Eigenvalue analysis problems
Replies: 6
Views: 5933

Re: Eigenvalue analysis problems

Hi vesna and everybody else...
I have a done a eigenvalue analysis,after getting the values of shape factors, results shows that for 3rd mode,shape factor is higher in the mid height of my structure than the shap factor value at top node,It seems unusual to me,Is it right or wrong?can any body help me
by civilengr_tahir
Fri Jan 06, 2012 11:40 am
Forum: OpenSees.exe Users
Topic: Bending Moment in 2DQuad element
Replies: 2
Views: 2837

Re: Bending Moment in 2DQuad element

hmmmmmmm Nobody is there to reply?
by civilengr_tahir
Fri Dec 30, 2011 11:52 am
Forum: OpenSees.exe Users
Topic: Bending Moment in 2DQuad element
Replies: 2
Views: 2837

Re: Bending Moment in 2DQuad element

Can anyone help plzzzz