Sample cue card for a complex project
This cue card will serve as a template for designing a complex project. It is based on a three-storey building where the sub floor is a carpark, the ground floor an open showroom, and the first floor comprises four home units. The building is located on a steep site so that 5.5 m of its width must be cantilevered.
To use the template, simply enter your values at lines marked ****, then process all lines that are in courier font.
The word "process" means to select (highlight) the relevant text and
click the spinning globe
in the Engineers' Compendium window.
To work with the cue card, you need MATHSERV, which you may download here.
1. DESIGN FROM TOP DOWN
The logical progression of a design is to start at the top. This ensures that loads to be carried by lower members are properly accrued.
The first floor supports a metal roof on timber trusses spanning between front and rear brick walls. The trusses are designed and certified by the manufacturer in accordance with the engineer's instructions.
The units are separated by 230 thick brick walls extending above the roof. Partitions internal to the units are non-load bearing timber or steel stud walls. Except in some cases, the walls have no direct walls underneath and are supported on the first floor slab.
1.1 Wind loads - run the WINDLOAD module. On the given project, the conclusion was that trusses and their tiedown shall be designed for wind uplift of 2.00 kPa.
1.2 Snow loads
**** ground snow load in kPa, SG = 1.2
**** two roof slopes, half span in m, X = {3.5, 5}
**** rise in m, Y = {1.5, 4}
roof slope in degrees for interpolation, ALPHA = atan2(X,Y)*180/_pi
rowprint using "####"; ALPHA
23 39
**** roof snow load 1 in kPa, SR[1] = (.56 + .3*(.42-.56))*SG := 0.6216
**** roof snow load 2 in kPa, SR[2] = (.42 + .9*(.28-.42))*SG := 0.3528
1.3 Lintels over sliding doors and windows:
**** weight of roofing, trusses and ceiling in kPa, DL = .4
**** uplift load in kPa, UL = -2.0
**** roof load width in m, RLW = 11/2+.6 := 6.1
net uplift on lintel in kN/m, NUL = (UL + DL*.8)*RLW := -10.248
ult. download in kN/m, DNL = (1.5*(SR[1]+.25)+1.25*DL)*RLW := 11.0251
**** lintel spans in m, L = {2.7, 1.2}
required moment capacity in kNm, REQM = DNL*L^2/8
required tiedown capacity in kN, REQT = NUL*L/2
rowprint using "####.#"; REQT
-13.8 -6.1
required area of steel tiedown in mm2, A = abs(REQT)/(.25*.9)
30x0.8 hoopiron, number of straps N = A/(30*.8)
bolt DIA = sqrt(4*A/_pi) := 8.8481
rowprint using "###.#"; N
2.6 1.1
deflection limit in m, DEFLIM = min(L/300, .01)
serviceability download in kN/m, SDL = (SR[1]+DL)*RLW := 6.2318
required E*IX in kNm2, RIX = 5*SDL*L^4/(384*DEFLIM)
Properties for strength group F17 seasoned hardwood (NOTE: if other grades are required, click File | Open cue card and select Design | Timber | Bearers | bearer1_doc.ecd where you will find the properties of thirteen grades at STEP 3):
**** bending strength in MPa, FB = 50
**** shear strength in MPa, FS = 4.3
**** modulus of elasticity in MPa, E = 14000
**** load duration factor for deflection, J2 = 2.0
**** load duration factor for strength, K1 = .57
**** capacity factor PHI = .8
required modulus in m3, REQZ = REQM/(K1*FB*1000*PHI)
required moment of inertia in m4, REQI = RIX*J2/(E*1000)
70 mm width in m, B = .07
required depth in m, D = max(sqrt(6*REQZ/B), (12*REQI/B)^(1/3))
rowprint using "#####"; 1000*D
227 101
Results:
lintel 1: 240x70 F17 seasoned hardwood, 13.8 kN uplift
lintel 2: 100x70 F17 seasoned hardwood, 6.1 kN uplift
2. PRELIMINARY DESIGN OF FIRST FLOOR SLAB
The slab is approx. 27 m long x 15.5 m wide. Supports are: (a) external brick walls, which partly sit on the ground floor slab and partly continue from below; and (b) internal columns, the spacing of which is governed by the car parking layout of the sub floor.
The slab is loaded with brick walls forming units 1 to 4, plus internal stud partitions. The brick walls support timber trusses and metal roofs at 23 and 39 degree pitch, leading to snow loads of .62 and .35 kPa respectively. Live loads are 1.5 kPa within the units, 3.0 kPa in balcony areas, and .25 kPa on areas covered by roofing.
As a first step, the sub-floor parking (column) layout must be carried out with the wall layout of the top floor in mind, to provide support points as close as possible to the heavy line loads. The next step is to carry out preliminary designs of different floor systems and compare their cost indeces.
2.1 Flat slab - minimum slab thickness:
Refer to clause 9.3.4.1 of AS 3600:
**** deflection limit (clause 2.4.2) DONL = {1/500, 1/1000}
**** effective span in m, LEF = 8.0
**** short-term load factor (clause 2.4 of AS 1170.1), PSIS = .7
**** long-term load factor, PSIL = .4
**** provide compression reo to assist rigidity, say RATIO = .25
creep multiplier (clause 8.5.3.3) KCS = 2-1.2*RATIO := 1.7
**** assume 400 slab, design dead load G = 3.0+.4*25 := 13.
**** design live load in kPa, Q = 2.0
clear FDEF
effective load in kPa, FDEF[1] = (1+KCS)*G+(PSIS+KCS*PSIL)*Q := 37.86
FDEF[2] = KCS*G+(PSIS+KCS*PSIL)*Q := 24.86
**** multiplier K3 = .95
**** K4 between 1.6 and 2.0, say K4 = 1.8
**** concrete modulus in MPa, EC = 2400^1.5*.043*sqrt(32) := 28599.
**** ditto in kPa, EC = 28.6*10^6 := 28600000.
then LOND = K3*K4*(DONL*EC/FDEF)^(1/3)
rowprint using "####"; LOND
20 18
req. slab depth D = 1000*LEF/18+40 := 484.4444
This indicates a 500 thick slab for 8 m span!
**** Cost index in $/m2 approx. CI = 100+.5*(300+150*2) := 400.
2.2 Steel beams across with precast planks lengthwise:
Run the PCP4 module to design the planks and obtain cost index from manufacturer (in the given case $220/m2).
**** design dead load G = 3.0+6.0 := 9.
**** design live load Q = 2.0
**** ultimate load in kN/m, W = (1.25*G+1.5*Q)*(8.1+8.635)/2 := 119.2369
**** spans in m, L = {5.5,10}
negative moments in kNm, M = W*L^2/8
ultimate negative moment, NEGM = sum(M)/2 := 970.6627
reaction in kN, R = W*L[2]/2 - NEGM/L[2] := 499.1181
position of positive moment, X = R/W := 4.1859
ultimate positive moment, POSM = R*X-W*X^2/2 := 1044.6386
ratio of equivalent load for deflection, RATIO = POSM/(W*L[2]^2/8) := 0.7009
serviceability load in kN/m, WS = (G+Q)*(8.1+8.635)/2 := 92.0425
rigity in m^4, RIX = RATIO*5/384*WS*L[2]^4/(2*10^8*L[2]/500) := 0.0021
ditto in 10^6 mm4, RIX = RIX*10^6 := 2099.9679
800WB146 has IX of 2040 10^6 mm4.
Cost index in $/m2 approx. CI = 220+146*5/8.1 := 310.1235
2.3 Wide beam lengthwise with precast slabs across:
**** K4 = 1.6
then LOND = K3*K4*(DONL*EC/(2*FDEF))^(1/3)
rowprint using "####"; LOND
15 14
beam thickness 8.635/14+.05 = 0.6668
Cost index in $/m2 approx. CI = 220+.67*(300+150*2)/2 := 421.
Case 2.2 is cost-effective but headroom restrictions preclude it. A grillage of steel beams under all walls with in-situ slabs between the beams is the optimum solution.
3. DETAIL DESIGN OF 1ST FLOOR
Run the SLAB2WAY module to design the in-situ slabs. In the given case (largest 6.8 m x 7.0 m), the slab thickness is 150. To design the grillage of steel beams, we need a data base and a selection procedure. Process the lines that set up the data base and the code lines that set up the procedure.
3.1 Set up data base for steel beams:
From AISC's design capacity table 3.1-3(A), column 1
DESCR = {"150UB 14.0", "150UB 18.0", "180UB 16.1", "180UB 18.1"}
DESCR = {DESCR,"200UB 18.2","200UB 22.3","200UB 25.4","200UB 29.8"}
DESCR = {DESCR, "250UB 25.7", "250UB 31.4", "310UB 32.0"}
DESCR = {DESCR, "310UB 40.4", "310UB 46.2", "360UB 44.7"}
DESCR = {DESCR, "360UB 50.7", "360UB 56.7", "410UB 53.7"}
DESCR = {DESCR, "410UB 59.7", "460UB 67.1", "460UB 74.6"}
DESCR = {DESCR, "460UB 82.1", "530UB 82.0", "530UB 92.4"}
DESCR = {DESCR, "610UB 101", "610UB 113", "610UB 125"}
The mass in kg/m can be generated from DESCR.
SW = StrToNum(mid$(DESCR, 6))
From AISC's design capacity table 3.1-3(A), column 'Ix'
IX = {6.66,9.05,10.6,12.1,15.8,21.0,23.6,29.1,35.4,44.5,63.2,86.4}
IX = {IX,100,121,142,161,188,216,296,335,372,477,554,761,875,986}
From AISC's design capacity table 5.2-5, column 'ØMsx'
PHIM = {29.3,38.9,39.8,45.2,51.8,65.3,74.6,90.0,92.0,114,134,182,197}
PHIM = {PHIM,222,242,273,304,324,399,449,496,558,640,782,829,927}
sorting on SW, DESCR = statsort(SW, DESCR)
PHIM = statsort(SW, PHIM)
IX = statsort(SW, IX)
SW = statsort(SW)
convert SW to kN/m, SW = SW*9.81/1000
3.2 Procedure for beam selection:
This is being called for each beam, when L, DL, LL, M and RIX are given. Process the whole block from PROC SelBeam to END PROC. The procedure stays active for the duration of the project. It must be reprocessed if you wish to use it when you reload the project.
PROC SelBeam
For I = 1 to endvalid(SW) + 1
If I > endvalid(SW) then
print
Print sprint("No suitable section found for &.", LABEL)
Exit for
Elseif M + 1.25*SW[I]*L^2/8 < PHIM[I] and RIX < IX[I] then
Print
TL1= DL[1]+LL[1]+1.25*SW[I]
TL2= DL[2]+LL[2]+SW[I]
Print sprint("&: span P(-3) m, loads P(-1) ult/P(-1) srv",LABEL,L,TL1,TL2)
Print sprint("Section & satisfies:", DESCR[I])
TMP = M + 1.25*SW[I]*L^2/8
Print sprint(" M P(-2) < PHIM P(-2) kNm",TMP,PHIM[I])
Print sprint(" RIX P(-1) < IX P(-1) 10^6 mm4", RIX, IX[I])
TMP = 5000*(DL[2]+LL[2]+SW[I])*L^4/(385*E*IX[I])
Print sprint(" Deflection is P(-1) mm = L/P(0)",TMP,1000*L/TMP)
TMP = 101.9368*SW[I]*(L+.3)
Print sprint(" Approximate mass is P(0) kg", TMP)
Exit for
End if
Next I
END PROC
3.3 Set DL, LL, M and RIX for each beam for use in SelBeam:
Two examples only are presented from the given project to illustrate how loads are entered and end reactions generated for use as loads on other members. You will note that the moment M and required stiffness RIX are generated by two simple approximations:
- M from point loads is calculated at mid-span by PL*PX/2 and is summed with other mid-span moments. The error is negligible in the given project, but you may wish to set up an algorithm that calculates the moments precisely.
- The mid-span moment from the serviceability point load is translated into an equivalent destributed load WEQ, which is summed with the other serviceability loads.
Loads are factored for strength limit state (index 1) and serviceability (index 2). The factors are called DLF and LLF for dead load and live load respectively. End reactions from distributed loads are called DLR and LLR and are indexed [NUM,1:2] for [beam number, ultimate : serviceability]. End reactions from point loads are called PLRL and PLRR for left and right end respectively, indexed as for distributed loads. You have to know which end to apply to which beam.
Each beam is designed for two deflection criteria: L/500 and L/250. This is accomplished by resetting the line **** deflection... and processing the last three lines again.
Base values that apply to all beams:
**** modulus of elasiticity E = 200
**** dead load factors for strength, serviceability, DLF = {1.25,1.0}
**** live load factors, ditto, LLF = {1.5,.7}
**** beam number NUM = 1
LABEL = sprint("BP(0)", NUM)
**** span in m, L = 6.8
**** balcony dead load in kN/m, DL = DLF*.15*25*4/2
**** roof dead load in kN/m, DL = DL + DLF*.4*2.5/2
**** balcony live load in kn/m, LL = LLF*3*2
**** roof live and snow load, LL = LL + LLF*(.62+.25)*2.5/2
ultimate moment in kNm, M = (DL[1]+LL[1])*L^2/8 := 119.2486
dead load reaction in kN, DLR[NUM,1:2] = DL*L/2
live load reaction in kN, LLR[NUM,1:2] = LL*L/2
**** deflection in m, DEFL = L/250 := 0.0272
required RIX = 5*(DL[2]+LL[2])*L^4/(DEFL*384*E) := 66.3319
SelBeam
The following is output by SelBeam after the second run with L/250:
B1: span 6.800 m, loads 21.1 ult/13.4 srv
Section 310UB 40.4 satisfies:
M 122.11 < PHIM 182.00 kNm
RIX 66.3 < IX 86.4 10^6 mm4
Deflection is 21.5 mm = L/317
Approximate mass is 287 kg
The following is output by SelBeam after the first run with L/500:
B1: span 6.800 m, loads 21.3 ult/13.5 srv
Section 360UB 50.7 satisfies:
M 122.84 < PHIM 242.00 kNm
RIX 132.7 < IX 142.0 10^6 mm4
Deflection is 13.2 mm = L/517
Approximate mass is 360 kg
YOUR BEAMS HERE
.
.
.
The following illustrates how to enter point loads from other beams. Note that PX is measured from the nearest support. You have to know whether this is the left or right end and apply the formulas for point load reactions accordingly (compare the first two point loads with the third):
**** beam number NUM = 15
LABEL = sprint("BP(0)", NUM)
**** span in m, L = 7.2
**** slab dead load in kN/m, DL = DLF*.15*25*2*L/3
**** wall dead load in kN/m, DL = DL + DLF*.23*2.4*18
**** slab live load in kn/m, LL = LLF*1.5*2*L/3
INITIALIZE MSM, WEQ, PLRL and PLRR:
**** point load B5R in kN, PL[1] = DLR[5,1]+LLR[5,1] := 218.8671
**** ditto, serviceability, PL[2] = DLR[5,2]+LLR[5,2] := 150.0647
**** position from nearest support (left) in m, PX = 2.5
midspan moment from PL, MSM = PL[1]*PX/2 := 273.5838
equiv. for defl. in kN/m, WEQ = 4*PL[2]*PX/L^2 := 28.9477
**** point load reaction at left in kN, PLRL[NUM,1:2] = PL*(L-PX)/L
**** point load reaction at right in kN, PLRR[NUM,1:2] = PL*PX/L
ACCUMULATE MSM, WEQ, PLRL and PLRR:
**** point load B6L in kN, PL[1] = DLR[6,1]+LLR[6,1] := 136.3885
**** ditto, serviceability, PL[2] = DLR[6,2]+LLR[6,2] := 93.4044
**** position from nearest support (left) in m, PX = 2.5
midspan moment from PL, MSM = MSM + PL[1]*PX/2 := 444.0694
equiv. for defl. in kN/m, WEQ = WEQ + 4*PL[2]*PX/L^2 := 46.9655
**** PLR at left in kN, PLRL[NUM,1:2] = PLRL[NUM,1:2]+PL*(L-PX)/L
**** PLR at right in kN, PLRR[NUM,1:2] = PLRR[NUM,1:2]+PL*PX/L
If more, keep accumulating, for example, if the right-hand end of B9 were to be supported on this beam B15, you would enter the following.
Note how the output end reactions PLRL and PLRR are calculated by reference to the nearest support.
**** point load B9R in kN, PL[1] = DLR[9,1]+LLR[9,1]+PLRR[9,1]
**** ditto, serviceability, PL[2] = DLR[9,2]+LLR[9,2]+PLRR[9,2]
**** position from nearest support (right) in m, PX = 1.3
midspan moment from PL, MSM = MSM + PL[1]*PX/2
equiv. for defl. in kN/m, WEQ = WEQ + 4*PL[2]*PX/L^2
**** PLR at left in kN, PLRL[NUM,1:2] = PLRL[NUM,1:2]+PL*PX/L
**** PLR at right in kN, PLRR[NUM,1:2] = PLRR[NUM,1:2]+PL*(L-PX)/L
ultimate moment in kNm, M = MSM + (DL[1]+LL[1])*L^2/8 := 740.335
dead load reaction in kN, DLR[NUM,1:2] = DL*L/2
live load reaction in kN, LLR[NUM,1:2] = LL*L/2
**** deflection in m, DEFL = L/250 := 0.0288
required RIX = 5*(DL[2]+LL[2]+WEQ)*L^4/(DEFL*384*E) := 485.6444
SelBeam
The following is output by SelBeam after the second run with L/250:
B15: span 7.200 m, loads 47.0 ult/34.0 srv
Section 610UB 101 satisfies:
M 748.36 < PHIM 782.00 kNm
RIX 485.6 < IX 761.0 10^6 mm4
Deflection is 7.8 mm = L/924
Approximate mass is 758 kg
4. GROUND FLOOR SLAB
This is to be designed for minimum thickness because it governs the level of sub floor, which should be as high as possible due to difficult access. Live load is 5.0 kPa for retail area. Superimposed dead load comprises brick walls at left and rear. For half the length, a roof is attached to the rear wall. Other walls are supported by walls below, which also support the slab. Internal supports are eight columns.
Spans are governed by carparking layout. From left to right, they are 6.8 / 6.8 / 5.8 / 8.1 / 5.8 m; from the front wall they are 5.3 / 7.2 + overhang of 2.3 m.
4.1 Investigate reinforced concrete flat slab:
The conditions of Clause 7.4.1 are satisfied.
Check Clause 9.3.4.1:
**** Deflection limit DONL = 1/250 := 0.004
**** Max effective span in m, LEF = 8.1
**** concrete modulus in MPa, EC = 2400^1.5*.043*sqrt(32) := 28599.
**** ditto in kPa, EC = 28.6*10^6 := 28600000.
**** short-term load factor (clause 2.4 of AS 1170.1), PSIS = .7
**** long-term load factor, PSIL = .4
**** creep multiplier (clause 8.5.3.3) KCS = 2
**** assume 250 slab, design dead load G = .25*25 := 6.25
**** design live load in kPa, Q = 5.0
effective load in kPa, FDEF = (1+KCS)*G+(PSIS+KCS*PSIL)*Q := 26.25
**** multiplier K3 = 1.05
**** multiplier K4 = 2.4
then LOND = K3*K4*(DONL*EC/FDEF)^(1/3) := 41.1623
allow 40 to centroid, D = 1000*LEF/LOND+40 := 236.7821
250 slab as assumed is OK
4.2 Check shear
**** ult. shear in kN, V = 1.15*(1.25*G+1.5*Q)*13.9*12.5/4 := 764.9072
**** shear capacity factor PHI = .7
req. shear area in mm2, UDM = 1000*V/(PHI*.5*sqrt(32)) := 386336.4906
**** assume no drop panels, DM = 215
req. perimeter in mm, U = UDM/DM := 1796.9139
corr. column DIA = U/_pi - DM := 356.9755
No drop panels required.
4.3 Longitudinal strip - internal
**** design strip width in m, LF = (7.2+5.3)/2 := 6.25
**** span offset in m, ASO = .7*2*.3 := 0.42
**** design spans in m, L0 = {6.8,6.8,5.8,8.1,5.8}-ASO
**** ult. design load in kPa, FD = 1.25*6.25+1.5*5 := 15.3125
static moments in kNm, M0 = FD*LF*L0^2/8
**** positive m-factors, POSF = {.6,.35,.35,.35,.6}
**** negative m-factors, NEGF = {.8,.65,.65,.65,.8}
positive moments in kNm, POSM = M0*POSF
temporary moments in kNm, TMP = M0*NEGF
clear NEGM
negative moments in kNm, NEGM[1] = max(TMP[1],TMP[2]) := 389.5538
NEGM[2] = max(TMP[2],TMP[3]) := 316.5125
NEGM[3] = max(TMP[3],TMP[4]) := 458.64
NEGM[4] = max(TMP[4],TMP[5]) := 458.64
**** effective depth to reo in mm, D = 210
**** steel stress in MPa, FSY = 400
minimum reo in mm2/m, ASTMIN = 1000*D/FSY := 525.
one Y12 in mm2, A12 = 12^2*_pi/4 := 113.0973
spacing of Y12, S12 = 1000*A12/ASTMIN := 215.4235
Y12 @ 200, midstrip MMID = .8*5*A12*FSY*D*.9*LF/(2*10^6) := 106.877
balance colstrip, MCOL = POSM-MMID
req. reo in mm2 ACOL = MCOL*10^6/(.72*FSY*D)
one Y16 in mm2, A16 = 16^2*_pi/4 := 201.0619
number of Y16, N16 = ceil(ACOL/A16)
number of Y12, N12 = ceil(ACOL/A12)
for I = 1 to 5
if LF/(2*N12[I]) > .2 then
print sprint("span P(0): min Y12 _@ 200", I)
else
print sprint("span P(0): P(0)Y16 or P(0)Y12,",I,N16[I],N12[I])
end if
next I
The following is output by the for-loop for column strip (middle strip is Y12 @ 200):
span 1: 16Y16 or 28Y12,
span 2: min Y12 @ 200
span 3: min Y12 @ 200
span 4: 12Y16 or 21Y12,
span 5: min Y12 @ 200
Clause 9.1.2 - topreo in 2*250+350 = 850 wide band:
moment in kNm, MBAND = .25*NEGM
reo in mm2, ABAND = MBAND*10^6/(.72*FSY*D)
number of Y16, NBAND = ceil(ABAND/A16)
rowprint using "####"; NBAND
9 7 10 10
balance of moment MBAL = NEGM-NBAND*A16*.72*FSY*D/10^6
corresponding reo ABAL = MBAL*10^6/(.72*FSY*D)
number of Y16, N16 = ABAL/A16
number of Y12, N12 = ABAL/A12
for I = 1 to 4
if (LF-.85)/N12[I] > .2 then
print sprint("supp P(0): min Y12 _@ 200", I)
else
print sprint("supp P(0): P(0)Y16 or P(0)Y12,",I,N16[I],N12[I])
end if
next I
The following is output by the for-loop. Add band reinforcement and distribute between column and middle strips. Alternatively, change the algorithm to automate the distribution with factors taken from Table 7.5.5:
supp 1: 23Y16 or 41Y12,
supp 2: 19Y16 or 34Y12,
supp 3: 28Y16 or 49Y12,
supp 4: 28Y16 or 49Y12,
Extra moment from brick walls in spans 1 and 2:
total weight in kN on span 2, WW = .23*2.9*18*10 := 120.06
static moment M0W = WW*L0[2]/8 := 95.7479
ratio to M0, RATIO = (M0[2]+M0w)/M0[2] := 1.1966
increase slab thickness by ratio, D2 = RATIO*D+40 := 291.2925
YOUR OTHER STRIPS HERE. COPY LINES FROM ABOVE AND EDIT AS APPROPRIATE.
.
.
.
5. COLUMNS
To design the columns, we need a data base and a selection procedure. Process the lines that set up the data base and the code lines that set up the procedure.
5.1 Set up data base
from AISC design Table 3.1-4(A)
STRUT = {"310UC 158", "310UC 137", "310UC 118", "310UC 96.8"}
STRUT = {STRUT, "250UC 89.5", "250UC 72.9", "200UC 59.5"}
STRUT = {STRUT, "200UC 52.2", "200UC 46.2", "150UC 37.2"}
STRUT = {STRUT, "150UC 30.0", "150UC 23.4", "100UC 14.8"}
W_KGPM = {158, 137, 118, 96.8, 89.5, 72.9, 59.5, 52.2}
W_KGPM = {W_KGPM, 46.2, 37.2, 30, 23.4, 14.8}
A_MM2 = {20100, 17500, 15000, 12400, 11400, 9320, 7620}
A_MM2 = {A_MM2, 6660, 5900, 4730, 3860, 2980, 1890}
RX_MM = {139, 137, 136, 134, 112, 111, 89.7, 89.1, 88.2}
RX_MM = {RX_MM, 68.4, 67.5, 65.1, 41.1}
RY_MM = {78.9, 78.2, 77.5, 76.7, 65.2, 64.5, 51.7, 51.5}
RY_MM = {RY_MM, 51, 38.5, 38.1, 36.6, 24.5}
TANA[1:13] = 0.0 := 0.
from AISC design Table 3.1-4(B)
FY_MPA[1:5] = 280 := 280
FY_MPA[6:10] = 300 := 300
FY_MPA[11:13] = 320 := 320
KF[1:13] = 1.0 := 1.
from AISC design Table 8.1-6
PHIMX_KNM = {676, 580, 494, 422, 309, 266, 177, 154}
PHIMX_KNM = {PHIMX_KNM, 133, 83.6, 71.9, 50.7, 21.4}
PHIMY_KNM = {305, 261, 222, 187, 143, 123, 80.6, 70.3}
PHIMY_KNM = {PHIMY_KNM, 60.3, 36.9, 31.7, 21.2, 9.91}
from AISC design Table 6.1
ALPHA_B[1:13] = 0.0 := 0.
Sort data in ascending order of W_KGPM
STRUT = statsort(W_KGPM, STRUT)
PHIMX_KNM = statsort(W_KGPM, PHIMX_KNM)
PHIMY_KNM = statsort(W_KGPM, PHIMY_KNM)
A_MM2 = statsort(W_KGPM, A_MM2)
RX_MM = statsort(W_KGPM, RX_MM)
RY_MM = statsort(W_KGPM, RY_MM)
TANA = statsort(W_KGPM, TANA)
FY_MPA = statsort(W_KGPM, FY_MPA)
KF = statsort(W_KGPM, KF)
ALPHA_B = statsort(W_KGPM, ALPHA_B)
W_KGPM = statsort(W_KGPM)
5.2 Procedure for column design
This is called when P and LE are given. Process the whole block from PROC SelCol to END PROC. The procedure stays active for the duration of the project. It must be reprocessed if you wish to use it when you reload the project.
PROC SelCol
LAMBDA_N = (LE/RY_MM)*sqrt(KF)*sqrt(FY_MPA/250)
ALPHA_A = 2100*(LAMBDA_N-13.5)/(LAMBDA_N^2 - 15.3*LAMBDA_N + 2050)
LAMBDA = LAMBDA_N + ALPHA_A*ALPHA_B
ETA = max(0, 0.00326*(LAMBDA-13.5))
XI = ((LAMBDA/90)^2 + 1 + ETA)/(2*(LAMBDA/90)^2)
ALPHA_C = XI*(1 - sqrt(1 - (90/(XI*LAMBDA))^2))
NS = KF*A_MM2*FY_MPA
PHINC = min(PHI*ALPHA_C*NS, PHI*NS)/1000
for J = 1 to Endvalid(PHINc)+1
if J > Endvalid(PHINc) then
print
print sprint("No suitable column for P(-1) at P(0)", P, LE)
elseif PHINc[J] >= P then
print sprint("for P(-1) kN use &: P(-1) at P(0)", P, STRUT[J], PHINc[J], LE)
exit for
end if
next J
END PROC
5.3 Loads and sizes
**** PHI = .9
**** from B8, P = DLR[8,1]+LLR[8,1]+PLRR[8,1] := 115.1491
**** plus B9, P = P + DLR[9,1]+LLR[9,1]+PLRL[9,1] := 273.7722
**** plus B14, P = P + DLR[14,1]+LLR[14,1]+PLRL[14,1] := 694.5051
**** plus B18, P = P + DLR[18,1]+LLR[18,1] := 792.3763
**** Effective length in mm, LE = 2900
SelCol
Output by SelCol:
for 792.4 kN use 150UC 37.2: 846.8 at 2900
**** load in kN, P = P + V := 1557.2835
**** effective length in mm, LE = 2100
SelCol
Output by SelCol:
for 1557.3 kN use 200UC 52.2: 1591.4 at 2100
**** during erection, P = 2.5*13.9*12.5/4 := 108.5938
**** effective length in mm, LE = 10000
SelCol
Output by SelCol:
for 108.6 kN use 200UC 46.2: 191.4 at 10000
6. SUB FLOOR
This supports the carpark, live load 3.0 kPa. The rear of the slab is inaccessible for formwork and footings, therefore, it is cantilevered approx. 2.5 m at left and 5.5 m at right. The cantilevered part of the slab is precast (Ultrafloor) or composite construction (Bondek II or Condeck HP) supported on cantilevered steel bearers. The edge of the cantilever supports a metal roof spanning to the rear wall of the shops.
6.1 Suspended deck
Although there are actually ten spans, the design is carried out for four because internal spans don't vary:
**** spans in m, L0 = {3.3,3.3,2.6,2.6}
Clause 9.3.4.1 - assume 120 slab, G = .12*25 := 3.
**** live load in kPa, Q = 3.0
**** defl. limit DONL = 1/250 := 0.004
eff. design load in kPa, FDEF = (1+KCS)*G+(PSIS+KCS*PSIL)*Q := 13.5
K3 = 1.0
K4 = 2.0
LOND = K3*K4*(DONL*EC/FDEF)^(1/3) := 40.775
min. eff. depth in mm, MIND = 1000*L0[1]/LOND := 80.9319
Make 120 slab, 35 cover to reinforcement
The conditions of Clause 7.2.1 are satisfied.
**** design depth in mm, D = 120-40 := 80
Condeck HP 1.0 mm BMT will span unpropped 2.85 m if used as double-span with 120 mm wet concrete, 1.0 kPa live load, 3 kN point load and deflection limit of L/240. Our effective span is (3.3-flange width), approximately 3.0 m, but we can tolerate a deflection > L/240.
**** use fabric in top, FSY = 450
**** ult. design load in kPa, FD = 1.25*G+1.5*Q := 8.25
**** negative moments in kNm/m, M = FD*L0^2/{10,11,11,10}
reo in mm2/m, AST = M*10^6/(.72*FSY*D)
rowprint using "#####"; AST
347 315 196 215
FDIA = {6,7,8,9,10}
FAST = 5*FDIA^2*_pi/4
rowprint using "#####"; FAST
141 192 251 318 393
6.2 Selection procedure for cantilever beams
This uses the data base for beams and is called when DL, LL, L, M and RIX are given. Process the whole block from PROC CantBeam to END PROC. The procedure stays active for the duration of the project. It must be reprocessed if you wish to use it when you reload the project.
PROC CantBeam
For I = 1 to endvalid(SW) + 1
If I > endvalid(SW) then
print
Print sprint("No suitable section found for &.", LABEL)
Exit for
Elseif M + 1.25*SW[I]*L^2/2 < PHIM[I] and RIX < IX[I] then
Print
TL1= DL[1]+LL[1]+1.25*SW[I]
TL2= DL[2]+LL[2]+SW[I]
Print sprint("&: cant. P(-3) m, loads P(-1) ult/P(-1) srv",LABEL,L,TL1,TL2)
Print sprint("Section & satisfies:", DESCR[I])
TMP = M + 1.25*SW[I]*L^2/8
Print sprint(" M P(-2) < PHIM P(-2) kNm",TMP,PHIM[I])
Print sprint(" RIX P(-1) < IX P(-1) 10^6 mm4", RIX, IX[I])
TMP = 1000*(DL[2]+LL[2]+SW[I])*L^4/(8*E*IX[I])
Print sprint(" Deflection is P(-1) mm = L/P(0)",TMP,1000*L/TMP)
TMP = 101.9368*SW[I]*(L+.3)*2
Print sprint(" Approximate mass is P(0) kg", TMP)
Exit for
End if
Next I
END PROC
6.3 Cantilever beams
beam number NUM = 20
LABEL = sprint("BP(0)", NUM)
span in m, L = 2.5
dead load from slab in kN/m, DL = DLF*G*3.3/2
dead load from wall in kn/m, DL = DL+DLf*.23*2.1*18
roof dead load in kN/m, DL = DL + DLF*.4*3.3/2
live load in kn/m, LL = LLF*Q*3.3/2
roof live and snow load, LL = LL + LLF*(.62+.25)*3.3/2
dead load reaction in kN, DLR[NUM,1:2] = 2*DL*L
live load reaction in kN, LLR[NUM,1:2] = 2*LL*L
ultimate moment in kNm, M = (DL[1]+LL[1])*L^2/2 := 85.807
deflection in m, DEFL = L/250 := 0.01
required RIX = (DL[2]+LL[2])*L^4/(DEFL*8*E) := 45.8346
CantBeam
B20: cant. 2.500 m, loads 27.9 ult/19.1 srv
Section 310UB 32.0 satisfies:
M 86.11 < PHIM 134.00 kNm
RIX 45.8 < IX 63.2 10^6 mm4
Deflection is 7.4 mm = L/339
Approximate mass is 179 kg
YOUR CANTILEVER BEAMS HERE
.
.
.
ALSO CHECK THE BACKSPAN USING SelBeam
|