Close
About
FAQ
Home
Collections
Login
USC Login
Register
0
Selected
Invert selection
Deselect all
Deselect all
Click here to refresh results
Click here to refresh results
USC
/
Digital Library
/
University of Southern California Dissertations and Theses
/
Reinforced concrete structure design assistant tool for beginners
(USC Thesis Other)
Reinforced concrete structure design assistant tool for beginners
PDF
Download
Share
Open document
Flip pages
Contact Us
Contact Us
Copy asset link
Request this asset
Transcript (if available)
Content
INFORMATION TO USERS This manuscript has been reproduced from the microfilm master. U M i films the text directly from the original or copy submitted. Thus, some thesis and dissertation copies are in typewriter face, while others may be from any type of computer printer. The quality of this reproduction is dependent upon the quality of the copy submitted. Broken or indistinct print, colored or poor quality illustrations and photographs, print bleedthrough, substandard margins, and improper alignment can adversely affect reproduction. In the unlikely event that the author did not send UM I a complete manuscript and there are missing pages, these will be noted. Also, if unauthorized copyright material had to be removed, a note will indicate the deletion. Oversize materials (e.g., maps, drawings, charts) are reproduced by sectioning the original, beginning at the upper left-hand comer and continuing from left to right in equal sections with small overlaps. ProQuest Information and Learning 300 North Zeeb Road, Ann Arbor, M l 48106-1346 USA 800-521-0600 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. REINFORCED CONCRETE STRUCTURE DESIGN ASSISTANT TOOL FOR BEGINNERS by Kang-Kyu Choi A Thesis Presented to the FACULTY OF THE SCHOOL OF ARCHITECTURE UNIVERSITY OF SOUTHERN CALIFORNIA In Partial Fulfillment of the Requirements of the Degree MASTERS OF BUILDING SCIENCE May 2002 Copyright 2002 Kang-Kyu Choi Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. UMI Number: 1411778 Copyright 2002 by Choi, Kang-Kyu All rights reserved. ___ ® UMI UMI Microform 1411778 Copyright 2003 by ProQuest Information and Learning Company. All rights reserved. This microform edition is protected against unauthorized copying under Title 17, United States Code. ProQuest Information and Learning Company 300 North Zeeb Road P.O. Box 1346 Ann Arbor, Ml 48106-1346 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. UNIVERSITY OF SOUTHERN CALIFORNIA The Graduate School University Park LOS ANGELES, CALIFORNIA 90089T695 This thesis, w ritten by Under the direction o f h . L S . .. Thesis Committee, and approved b y all its members, has been presented to and accepted b y The Graduate School, in partial fulfillment o f requirements for the degree o f K A N f r - K Y U C H O T H a s - f g r o f B u i l d i n g S r i< ? )lC F Dean o f Graduate Studies THESIS COMMITTEE Reproduced with permission of the copyright owner. Further reproduction prohibited without permission DEDICATION To my parents Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ACKNOWLEDGEMENTS I would like to thank Professor Goetz Schierle, head of my Thesis Committee, for all his effort, time and patience in helping me to complete this thesis. This thesis would not be possible without his guidance and encouragement. I would also like to thank the other members of my committee, Professors Dimitry Vergun and Douglas Noble for their time, criticism and suggestion. Thanks and appreciation are also extended to Professor Marc Shiler. He patiently guided me through the process of making the abstract idea and program and thanks to my classmate and MBS fiiend whom contributed with value ideas and supporting for my study. Also, I thank to my friends in KOREA, they always encouraged and trust that I can do what I want to, and I did not feel loneliness because of their cheering via an Internet. Finally, I would like to take the opportunity to thank my parents and family for having supported me through the all project and studies and Jung-Ran deserves the special appreciation for her support and understanding. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. TABLE OF CONTENTS Dedication............................................................................................................ ii Acknowledgements............................................................................................. iii List of Tables........................................................................................................ vi List of Figures...................................................................................................... vii Abstract................................................................................................................. viii Hypothesis............................................................................................................. ix 1. Introduction...................................................................................................... 1 Part I: Background............................................................................................. 3 2. Need for the R.C. Structure Design Program.................................................... 3 2.1 Introduction.............................................................................................. 3 2.2 Review of Existing Programs................................................................... 5 2.2.1 MULTIFRAME 4 D ........................................................................ 5 2.2.2 PROKON Calcpad......................................................................... 9 3. Reinforced Concrete Structure........................................................................... 12 3.1 Introduction............................................................................................... 12 3.2 Building Code Requirement for Structural Concrete (ACI318-95)......... 14 3.3 Design Methods of Reinforced Concrete Structure................................... 15 3.3.1 Change of Design Methods according to ACI318 Code................ 15 3.3.2 The Working Stress Design (WSD) ............................................... 16 3.3.3 The Ultimate Strength Design (USD)............................................. 16 4. Review of Structural Calculation on the ACI Code............................................. 18 4.1 Slab............................................................................................................ 18 4.1.1 Introduction..................................................................................... 18 4.1.2 Types of Slab.................................................................................. 20 4.1.3 Design Procedures ......................................................................... 22 4.2 Beam ......................................................................................................... 24 4.2.1 Introduction.................................................................................... 24 4.2.2 Types of Beam................................................................................ 25 4.2.3 Design Procedures.......................................................................... 26 iv Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4.3 Column..................................................................................................... 28 4.3.1 Introduction.................................................................................... 28 4.3.2 Types of Column............................................................................ 28 4.3.3 Design Procedures.......................................................................... 30 4.4 Footing..................................................................................................... 33 4.4.1 Introduction.................................................................................... 33 4.4.2 Types of Footing............................................................................ 33 4.4.3 Design Procedures......................................................................... 35 Part II: Reinforced Concrete Structure Design T ool....................................... 37 5. Introduction to Reinforced Concrete Structure Designer (RCSD).................... 37 6. Slab Design Module............................................................................................ 38 6.1 Introduction to Slab Design Module........................................................ 38 6.2 One-way Solid Slab Design Module........................................................ 38 6.3 Two-way Slab Design Module................................................................. 43 6.4 Flow Chart................................................................................................ 45 7. Beam Design Module.......................................................................................... 46 7.1 Introduction to Beam Design Module........................................................ 46 7.2 Beam Design Module................................................................................. 46 7.3 Flow Chart of Beam Design..................................................................... 49 7.4 Flow Chart of Shear Check....................................................................... 50 7.5 Flow Chart of Deflection Check............................................................... 51 8. Column Design Module..................................................................................... 52 8.1 Introduction to Column Design Module.....................................................52 8.2 Column Analysis Program........................................................................ 53 8.3 Simplified P-M Interaction Diagram........................................................ 54 8.4 General Equation for Simplified P-M Interaction Diagram..................... 56 8.5 Column Design Module........................................................................... 60 8.6 Flow Chart................................................................................................ 62 9. Footing Design Module...................................................................................... 63 9.1 Introduction to Footing Design Module..................................................... 63 9.2 Flow Chart of Individual Column Footing................................................. 65 9.3 Flow Chart of Individual Column Footing................................................. 66 10. Conclusions........................................................................................................67 III Bibliography.................................................................................................... 69 IV Appendix.......................................................................................................... 71 v Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. List of Tables Table 2-1: The Percentage of Structure Classes........................................................ 3 Table 3-1: Factored load combinations for determining required strength U 17 Table 3-2: Strength reduction factors in the ACI C ode............................................ 17 Table 8-1: Simplified P-M interaction equation...................................................... 56 vi Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. List of Figures Fig. 2-1: Multiframe 4D Main window................................................................... 6 Fig. 2-2: Multiframe 4D Input window................................................................... 6 Fig. 2-3: Multiframe 4D Section Maker window.................................................... 7 Fig. 2-4: Multiframe 4D Moment analysis window............................................... 7 Fig. 2-5: Multiframe 4D Deflection analysis window............................................. 8 Fig. 2-6: Multiframe 4D Detail member analysis window..................................... 8 Fig. 2-7: PROKON Calcpad Main page................................................................. 9 Fig. 2-8: PROKON Calcpad Rectangular column input page............................... 10 Fig. 2-9: PROKON Calcpad Rectangular column design page............................... 10 Fig. 2-10: PROKON Calcpad Rectangular column calculation sheet page 1 1 Fig. 2-11: PROKON Calcpad Rectangular column reinforcement data page 1 1 Fig. 4-1: One-way slab design concept................................................................... 18 Fig. 4-2: Typical type of slabs................................................................................ 21 Fig. 4-3: Reinforced rectangular beam................................................................... 24 Fig. 4-4: Common shapes for concrete beam ......................................................... 25 Fig. 4-5: Column types........................................................................................... 29 Fig. 4-6: The column types depending on applied load......................................... 30 Fig. 4-7: Eccentrically loaded columns................................................................. 30 Fig. 4-8: Footing types........................................................................................... 35 Fig. 6-1: Superimposed Dead Load Calculator..................................................... 39 Fig. 6-2: MOMENT tab of One-way slab module................................................. 40 Fig. 6-3: REINFORCEMENT tab of One-way slab module................................. 41 Fig. 6-4: Shear and deflection checks of One-way slab module............................ 42 Fig. 6-5: Two-way slab minimum thickness output............................................... 43 Fig. 6-6: Two-way slab deflection check tab ......................................................... 44 Fig. 7-1: Beam tributary area and support type input............................................ 46 Fig. 7-2: Design the reinforcement of beam module............................................. 47 Fig. 7-3: The shear check and stirrup design......................................................... 48 Fig. 8-1: Column interaction diagram.................................................................... 52 Fig. 8-2: Simplified Column Analysis Program.................................................... 53 Fig. 8-3: SCAP simplified P-M Interaction diagram............................................. 54 Fig. 8-4: P-M Interaction diagram with 15% cover thickness............................... 55 Fig. 8-5: Simplified P-M Interaction diagram....................................................... 57 Fig. 8-6: Axial stress and steel strength................................................................. 58 Fig. 8-7: Axial stress and concrete strength........................................................... 58 Fig. 8-8: Strength reduction in % due to moment in column................................ 59 Fig. 8-9: CHECK tab of column design module.................................................... 61 Fig. 9-1: The possible footing size calculation table and drawing......................... 63 Fig. 9-2: REINFORCEMENT tab of individual column footing........................... 64 Fig. 9-3: The result of footing design and 3D rendered images............................. 64 vii Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Abstract: The objective of this study was a reinforced concrete design tool for architecture students. The tool, a computer program with graphic interface, provides basic concepts for concrete structure calculations and procedures. The graphic interface is expected to help architecture students to understand the design process. The program has four modules: slab, beam, column and footing per American Concrete Institute Code (A CI318-95). Key Words: Concrete design, Concrete structures, ACI Code, Concrete design teaching tool, RC Concrete software. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Hypothesis This simplified reinforced concrete structure design program for architecture students, based on the American Concrete Institute Code (ACI 318-95), is expected to help architecture students to design sound concrete structures. ix Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 1. Introduction Reinforced concrete structures are one of the most popular structure systems. Many architecture students are using reinforced concrete structure systems for their designs. But there are many cases where they design structurally questionable buildings because they are trying to express their design ideas with limited knowledge about R.C. Design. Frequently the structural member design would not be their primary focus. Although there is the possibility that excessive structural considerations may disturbing their search for unique designs, basic structural calculation is important for design. Structurally sound solutions can make their design concepts closer to reality. Unfortunately most architecture schools concentrate their curriculum on visual design education rather than a balanced education of design and structure. The balanced education does not mean equal class time for structural and design classes. But it is essential that students can at least discriminate that their design has a reasonable structure. Many students use the commonly available books on architectural graphic standards as a reference. But they are not applicable to many different conditions. Furthermore, reinforced concrete structures need a lot of calculations and different condition inputs because it is a composite material of concrete and steel. The Reinforced Concrete Structure Design program (RCSD), which has been developed for this thesis, can help architecture students and users to analyze 1 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. their designs and understand structural fundamentals. Although there are many reinforced concrete structure programs, most programs are targeting advanced level users who have a background in structural engineering. The RCSD program is for beginner level users such as architecture undergraduate and graduate students with limited knowledge about structures. For this, it provides a graphical input method and a step-by-step calculation procedure to help users. With this program, it is possible for the user to design basic structural parts such as slab, beam, column and footing. Also the program is based on the American Concrete Institute Code. The ultimate goal of this program is that users can analyse their own designs using this program and determine structural proportions of their design idea. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Part I: BACKGROUND STUDY 2. Need for the Reinforced Concrete (RC) Structure Design Program 2.1 Structural Education of Architecture Students Many architecture schools do not teach architectural engineering but only architecture and the schools that have architectural engineering usually are part of an engineering school rather than an architecture department. Most architecture schools provide only a few structure classes for students, not enough to fully understand structural design use in their project. Even the schools that are ranked as The Best Architecture Graduate Schools (U.S.News & World Report Inc, 2001) offer less than 15% of structure related classes in their curriculums (Table 2-1). Total Classes Structure Classes % M.I.T. 151 15 9.9 Princeton University 32 3 9.3 Columbia University 67 8 11.9 Yale University 31 3 9.6 University of California Berkeley 105 10 9.5 University of Virginia 12 2 16.6 University of Pennsylvania 1 3 1 7.6 Georgia Institute of Technology 47 7 14.9 Total 458 • ^ 4 9 . 10.9 Table 2-1: The Percentage of Structure Classes 3 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Therefore architecture students do not have enough opportunities to study structural education even though they may want to study structure systems in relation to architecture. Also it is hard to say that the best solution would be that architecture schools increase structure classes because it is almost impossible to teach detailed structural calculation methods to architecture students like is done in engineering schools. Architecture students do not need to know the complete details of structural systems but rather the intuitive information about structural safety of their own designs. Reinforced concrete calculations are particularly repetitive calculations. This is one reason why a reinforced concrete structures design program is valuable for architecture students. Since architecture students use scale models or use computer graphic modeling to understand and present their design, by using a computer analysis program users can save time and complement their lack of structural knowledge with the presented program. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 2.2 Review o f Existing Structural Programs The two existing software programs are inapprorpriate for use by architecture students as described earlier. 2.2.1 MULTIFRAME 4D(Daystar Software, Inc.) Multi frame is a 2D and 3D self-executable static and dynamic analysis program from Daystar Software Inc. This software provides a good graphical interface and comprehensive analysis capabilities. Multiframe can analyze not only reinforced concrete structures but also all types of framed structures. It has its own library of common structural material and the user can analyze steel, concrete or timber frames using this material library. However, reinforced concrete structures have different material section properties depending on concrete, steel bar strength and ratio of reinforcement. Usually the user has to make a new material library to analyze a reinforced concrete structure (Fig. 2-3). Multiframe is developed for experienced users. The user can input their building manually or import AutoCAD files. Multiframe provides a lot of output data, such as stresses of each member, moments and even animated deflections (Fig. 2-4). The program is a bit complex for beginners. It will not analyze a structure without flawless data input including section properties, condition of joint type and load. The user has to input all data, which is hard for beginners. For architecture students, a design program is more useful than an analysis program. 5 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. « fb M Mi H m m lari O W h r Ca Ka «M m N* -Ml »l |DcgBm>M|atl|jc;{X»BiflEl5;&!|HuKCW .i j »~«|________ I) 4- -3 I .* > * < ! >> > tf I Fig. 2-1: Multiframe 4D Main window j - t n tiayg "3 i V H w ia • ■ • - A ' • ‘ J ' i ' ' 1 ' '" i d WaTl n ite rs oobd• i s a _ « « o _ " at2t q o c ^ a y ‘ » ooo W ■ I weoi O D O D 1 3 J 2 3 1 0 0 0 0 v mi o i_ __ o m _ _ 13t a _ « o a o ttlteM ~ 0 0 0 0 a 4 8 3 * 1 1 w i wt&rc oodo 32a aoao Fig. 2-2: Multiframe 4D Input window 6 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. !~Bgf— a Fig. 2-3: Multi frame 4D Section Maker window [|a^AA|»AA S i a l i c C a a a : T o t d c m * I * M z * ( U p > m a U W U i ' '—'—'—' 2 '—'— — 1 —. —1 — ■ —' j ■ — ■ — 1 — ■ — — j 3 Fig. 2-4: Multiframe 4D Moment analysis window Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Qi» M « h » f t — n* Q m t m u m ■» w » _____________________________-IJIJ d > ■ ■awjaa 4 i 1 f 1 I I t 1 f I ^ i i u d J j Q P B I I b B l b t d « ■ * p T * A 4 - 1 4 4 4 Fig. 2-5: Multiframe 4D Deflection analysis window W •3S.447kip.fi 19.S6Sklp -0 33910 10 404ft H 5 - Static C«m : lo ad Coao 1 * Mam bar No 107 U V 12 m 72 Fig. 2-6: Multiframe 4D Detail member analysis window 8 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 2.2.2 PROKON Calcpad (Prokon Software Consultant Ltd.) The PROKON Calcpad is a structural analysis and design software for concrete, steel and timber design. This program has been developed for average level users. It provides a graphical user interface, continuous error checking during the input phase and table editor. This is really helpful to find and fix input problems. The PROKON Calcpad cannot analyze a whole structure like Multiframe because it has discrete calculation modules, such as concrete slab, rectangular column, retaining wall and footing. This modular program is easy to understand but the users has to calculate factored load for each part because the program cannot calculate the load and tributary area without overall building conditions. Irwun c— <1 '"'1 T n ' T T ^ O l ^ l o i r *4? a cw». n» a* j h * u a u im S v s » ■ » | o * catm . D b » BarB-3» l ■ / a v | | ^ -■ / I - I - I ■ . . - . M y . . A Fig. 2-7: PROKON Calcpad Main page 9 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. » m « | a * * I M »ang t| d o m o — » » I c m h m | ihn hthm i | a* I • . m |t « n BJnGil I t w 4 0 k H 3 0 •! * N 2 * H 2 l a M I S k a M 3 0 0 0 k ____ H 6 0 0 0 0 T , ' r| J M M X X P t v M Y M |2 P n ^ fc « l J p P aM th ) j M |l* * H d 3fi75fa5 3 k|aS 3 *P* 3 f l M w n o n o n ■ a n Lin r_ i lt - j y:i m l’ j. i n r t i x - x a e t Y - Y * 0 z i M M M M n m - h * Fig. 2-8: PROKON Calcpad Rectangular column input page nOatgKl MMCMt t Vl C * M » |la iM « Ti lntX | H » I B T T M i d End coruMons PartaBptatd End condaons Part a * find Fudrflnd Bractd hbrtOktrft OOk^ft . w i y . y w w m aa oo*ao >««>o i i i k I M » M W M - I M T M o a t : I * . r- • H I M i l 3 0 0 0 J) 3000.0 M l M M M 0 .0 0 0 M M H N 0 4 0 .0 0 0 H i H N • 4 0 .0 0 0 » M M 1 I M 1 9 6 .9 196.9 N k H M 196.9 1 9 6 .9 196.9 M M a * r - r r - r r - r M M l 38 .631 36.631 M M tn 3.24 3.24 M i w h m » J N 3 2 .5 0 0 32.500 S M M a a C o m 1 j i r U ^ a "1 a m J - 0 * 4 Fig. 2-9: PROKON Calcpad Rectangular column design page 10 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 9 > | N H 1 frm | O m m Q m i S i * \ O r n m Q m i * |jw^,T r > » i< i| H» | IT estl Rtcf angular column dwign by PflOKOAf (RkCM var wi 0 os • i ? Dae 2001) Oasign cod*: QS81 to • 1997 G tf M c a l dttf Q n pinm ctiri: Gurnn h » 400 in b = 300 in <f* * 2 0 m d* y s 2.0 in Lo = 15 000 It feu = 3000 psi fy = 60Q0Dpsi Thtrtfor* Ac = b d = 1200 000 in* h = h - d * i* 3B 0 m b’ = h - d> = 20 0 m Assumptions: «ET^ . .r a ; . . “i p r r BMIO-1W7 J Fig. 2-10: PROKON Calcpad Rectangular column calculation sheet page » j txl IW p lB rtn O lia x lB lp O iH C V l I M b k M i Reolbf S B d a B B l s #10 h d r i l b t a M m 11 Ska - #10 14 #10 I L m INMNB •» 0 L m M 0 » • ■ m 15.000 1 1 1 # 4# 12 U t t a a M a H I M a 1 1 I M 1 l a M M M a M I 45 F M k a a ^ A j t M M o K M k / N E m m 1 m m ■ R a w I M P 181 | l i ) l t 132.500 W J40.S37 138.031 4.000 4.000 i n n P W l l H l I l r S a k t l a o a * P D a tM ta tflM i rtM fcss — 1 r .m 0 tm S m a | a - * 1 »|n»l OLMj H •an is- a s a ^ n a tts H 0a#feMlOf Ms< 2 6 # 1 0 U • 2 0 # 1 O 0 * isooo 5 A BBBBBB'BB -A 7 A B 0 0 0 0 0 0 0 A o . j SECTION - q aa0C N *r m If*** • ’ 00 n & UNK TYPES □ O ffl r fc x n d»a_cr»faon i ^ norUK ft A edoaw w gyeas O rfrcaps v a r t iw r Fig. 2-11: PROKON Calcpad Rectangular column reinforcement data page 1 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 3. Reinforced Concrete Structure 3.1 Introduction Concrete is one of the most popular materials for buildings because it has high compressive strength, flexibility in its form and it is widely available. The history of concrete usage dates back for over a thousand years. Contemporary cement concrete has been used since the early nineteenth century with the development of Portland cement. Despite the high compressive strength, concrete has limited tensile strength, only about ten percent of its compressive strength and zero strength after cracks develop. In the late nineteenth century, reinforcing materials, such as iron or steel rods, began to be used to increase the tensile strength of concrete. Today steel bars are used as common reinforcing material. Usually steel bars have over 100 times the tensile strength of concrete; but the cost is higher than concrete. Therefore, it is most economical that concrete resists compression and steel provides tensile strength. Also it is essential that concrete and steel deform together and deformed reinforcing bars are being used to increase the capacity to resist bond stresses. Advantages of reinforced concrete can be summarized as follows (Hassoun, 1998). 1. It has a relatively high compressive strength. 2. It has better resistance to fire than steel or wood 3. It has a long service life with low maintenance cost. 12 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4. In some types of structures, such as dams, piers, and footing, it is the most economical structural material. 5. It can be cast to take any shape required, making it widely used in precast structural components. Also, disadvantages of reinforced concrete can be summarized as follows: 1. It has a low tensile strength (zero strength after cracks develop). 2. It needs mixing, casting, and curing, all of which affect the final strength of concrete. 3. The cost of the forms used to cast concrete is relatively high. The cost of form material and artisanry may equal the cost of concrete placed in the forms. 4. It has a lower compressive strength than steel (about 1/10, depending on material), which requires large sections in columns of multistory buildings. 5. Cracks develop in concrete due to shrinkage and the application of live loads. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 3.2 Building Code Requirement for Structural Concrete (ACI318-95) Many countries have building codes to define material properties, quality controls, minimum size, etc for safety constructions. However, the United States does not have an official government code. However, the Uniform Building Code (UBC) and other model codes are adapted by jurisdictions, such as Cities, or States as governing codes. Material and methods are tested by private or public organizations. They develop, share, and disseminate their result and knowledge for adoption by jurisdictions. The American Concrete Institute (ACI) is leading the development of concrete technology. The ACI has published many references and journals. Building Code Requirement fo r Structural Concrete (ACI318 Code) is a widely recognized reinforced concrete design and construction guide. Although the ACI Code dose not have official power of enforcement, it is generally adapted as authorized code by jurisdictions not only in United States but also many countries. The ACI318 Code provides the design and construction guide of reinforced concrete. ACI has been providing new codes depending on the change of design methods and strength requirement. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 3.3 Design Methods of Reinforced Concrete Structure Two major calculating methods of reinforced concrete have been used from early 1900’s to current. The first method is called Working Stress Design (WSD) and the second is called Ultimate Strength Design (USD). Working Stress Design was used as the principal method from early 1900’s until the early 1960’s. Since Ultimate Strength Design method was officially recognized and permitted from ACI 318-56, the main design method of ACI 318 Code has gradually changed from WSD to USD method. The program of this thesis is based on ACI 318-95 Code USD Method, published in 1995. 3.3.1 Change of Design Methods according to ACI 318 Code (PCA, 1999). ACI 318-56: USD was first introduced (1956) ACI 318-63: WSD and USD were treated on equal basis. ACI 318-71: Based entirely on strength Method (USD) WSD was called Alternate Design Method (ADM). ACI 318-77: ADM relegated to Appendix B ACI 318-89: ADM back to Appendix A ACI 318-95: ADM still in Appendix A Unified Design Provision was introduced in Appendix B ACI 318-02: ADM was deleted from Appendix A (ACI,2002) 15 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 3.3.2 The Working Stress Design (WSD) Traditionally, elastic behavior was used as basis for the design method of reinforced concrete structures. This method is known as Working Stress Design (WSD) and also called the Alternate Design Method or the Elastic Design Method. This design concept is based on the elastic theory that assumes a straight-line stress distribution along the depth of the concrete section. To analyze and design reinforced concrete members, the actual load under working conditions, also called service load condition, is used and allowable stresses are decided depending on the safety factor. For example allowable compressive bending stress is calculated as 0.45/V If the actual stresses do not exceed the allowable stresses, the structures are considered to be adequate for strength. The WSD method is easier to explain and use than other method but this method is being replaced by the Ultimate Strength Design method. ACI 318 Code treats the WSD method just in a small part. 3.3.3 The Ultimate Strength Design (USD) The Ultimate Strength Design method, also called Strength Design Method (SDM), is based on the ultimate strength, when the design member would fail. The USD method provides safety not by allowable stresses as for the ASD method but by factored loads, nominal strength and strength reduction factors 0, both defined by the ACI code. 16 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. The load factors are 1.7 for live load and 1.4 for dead load. Other factors are given in Table 3-1. Condition Factored load or load effect U Basic U= 1.4D + 1.7L Winds U = 0.75(1.4D+ 1.7L+ 1.7W) U = 0.9D + 1.3W U= 1.4D+ 1.7L Earthquake U = 0.75(1.4D + 1.7L+ 1.87E) U = 0.9D + 1.43E U= 1.4D+ 1.7L Earth pressure U= 1.4D+ 1.7L+ 1.7H U = 0.9D + 1.7H U = 1.4D + 1.7L Settlement, creep, shrinkage, or temperature change effects U = 0.75(1.4D + 1.4T + 1.7L) U= 1.4(D + T) Table 3-1: Factored load combinations for determining required strength U However, deflections are based on service load rather than factored load. The strength reduction factors are given in Table 3-2. Different factors are used for beams, tied column, or spiral column. Kind of strength: Strength redaction factori Flexure, without axial load 0.90 Axial tension Axial compression with flexure 0.90 Axial compression Axial compression with flexure member 0.70 Axial compression Axial compression with flexure member with spiral reinforcement 0.75 Shear and torsion 0.85 Bearing on concrete 0.70 Table 3-2: Strength reduction factors in the ACI Code (Nilson, 1997) 17 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4. Review of Structural Calculation on the ACI Code 4.1 Slab 4.1.1 Introduction The slab provides a horizontal surface and is usually supported by columns, beams or walls. Slabs can be categorized into two main types: one-way slabs and two-way slabs. One-way slab is the most basic and common type of slab. One-way slabs are supported by two opposite sides and bending occurs in one direction only. Two-way slabs are supported on four sides and bending occurs in two directions. One-way slabs are designed as rectangular beams placed side by side (Fig. 4-1). Temperature Steel Main Steel Fig. 4-1: One-way slab design concept 18 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. However, slabs supported by four sides may be assumed as one-way slab when the ratio of lengths to width of two perpendicular sides exceeds 2. Although while such slabs transfer their loading in four directions, nearly all load is transferred in the short direction. Two-way slabs carry the load to two directions, and the bending moment in each direction is less than the bending moment of one-way slabs. Also two-way slabs have less deflection than one-way slabs. Compared to one-way slabs, Calculation of two-way slabs is more complex. Methods for two-way slab design include Direct Design Method (DDM), Equivalent frame method (EFM), Finite element approach, and Yield line theory. However, the ACI Code specifies two simplified methods, DDM and EFM. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4.1.2 Types of Slabs • One-way slabs 1. One-way Beam and slab / One-way flat slab: These slabs are supported on two opposite sides and all bending moment and deflections are resisted in the short direction. A slab supported on four sides with length to width ratio greater than two, should be designed as one-way slab. 2. One-way joist floor system: This type of slab, also called ribbed slab, is supported by reinforced concrete ribs or joists. The ribs are usually tapered and uniformly spaced and supported on girders that rest on columns. • Two-way slab 1. Two-way beam and slab: If the slab is supported by beams on all four sides, the loads are transferred to all four beams, assuming rebar in both directions. 2. Two-way flat slab: A flat slab usually does not have beams or girders but is supported by drop panels or column capitals directly. All loads are transferred to the supporting column, with punching shear resisted by drop panels. 3. Two-way waffle slab: This type of slab consists of a floor slab with a length-to-width ratio less than 2, supported by waffles in two directions. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. One-way Beam and Slab One-way Joist Slab One-way Flat Slab Skip Joist/Wide Module Two-way Flat Plate Two-way Flat Slab with Drops Two-way Waffle Slab Two-way Beam and Slab Fig. 4-2: Typical type of slabs (ACI, 1994) Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4.1.3 Design Procedure • One-way slab design 1. Decide the type of slab according to aspect ratio of long and short side lengths. 2. Compute the minimum thickness based on ACI Code. 3. Compute the slab self-weight and total design load. 4. Compute factored loads (1.4 DL +1.7 LL). 5. Compute the design moment. 6. Assume the effective slab depth. 7. Check the shear. 8. Find or compute the required steel ratio. 9. Compute the required steel area. 10. Design the reinforcement (main and temperature steel). 11. Check the deflection. • Two-way slab design procedure by the Direct Design Method 1. Decide the type of slab according to aspect ratio of long and short side lengths. 2. Check the limitation to use the DDM in ACI Code. If limitations are not met, the DDM can not be used. 3. Determine and assume the thickness of slab to control deflection. 4. Compute the slab self-weight and total design load. 22 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 5. Compute factored loads (1.4 DL + 1.7 LL). 6. Check the slab thickness against one-way shear and two-way shear. 7. Compute the design moment. 8. Determine the distribution factor for the positive and negative moments using ACI Code. 9. Determine the steel reinforcement of the column and middle strips. 10. Compute the unbalanced moment and check if it is adequate. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4.2 Beam 4.2.1 Introduction Beams can be described as members that are mainly subjected to flexure and it is essential to focus on the analysis of bending moment, shear, and deflection. When the bending moment acts on the beam, bending strain is produced. The resisting moment is developed by internal stresses. Under positive moment, compressive strains are produced in the top of beam and tensile strains in the bottom. Concrete is a poor material for tensile strength and it is not suitable for flexure member by itself. The tension side of the beam would fail before compression side failure when beam is subjected a bending moment without the reinforcement. For this reason, steel reinforcement is placed on the tension side. The steel reinforcement resists all tensile bending stress because tensile strength of concrete is zero when cracks develop. In the Ultimate Strength Design (USD), a rectangular stress block is assumed (Fig. 4-3). C b d c •t V ' ' W , h 7/< jd T • A>« Fig 4-3: Reinforced rectangular beam (Ambrose, 1997) Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. As shown Fig. 4-3, the dimensions of the compression force is the product of beam width, depth and length of compressive stress block. The design of beam is initiated by the calculation of moment strengths controlled by concrete and steel. 4.2.2 Types of Beam Fig. 4-4 shows the most common shapes of concrete beams: single reinforced rectangular beams, doubly reinforced rectangular beams, T-shape beams, spandrel beams, and joists. • • • • • • • (a) Single Reinforced Bern (b) Doubly Reinforced Beam (c) Spandrel Beam — \ r \ / \ j ■ * n r \ / u (e) loin Construction Fig. 4-4: Common shapes of concrete beam (Spiegel, 1998) In cast-in-place construction, the single reinforced rectangular beam is uncommon. The T-shape and L-shape beams are typical types of beam because the beams are built monolithically with the slab. When slab and beams are poured together, the slab on the beam serves as the flange of a T-beam and the supporting 25 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. beam below slab is the stem or web. For positive applied bending moment, the bottom of section produces the tension and the slab acts as compression flange. But negative bending on a rectangular beam puts the stem in compression and the flange is ineffective in tension. Joists consist of spaced ribs and a top flange. 4.2.3 Design Procedure • Rectangular Beam 1 . Assume the depth of beam using the ACI Code reference, minimum thickness unless consideration the deflection. 2. Assume beam width (ratio of with and depth is about 1:2). 3. Compute self-weight of beam and design load. 4. Compute factored load (1.4 DL + 1.7 LL). 5. Compute design moment (Mu ). 6. Compute maximum possible nominal moment for singly reinforced beam (♦M„). 7. Decide reinforcement type by Comparing the design moment (Mu ) and the maximum possible moment for singly reinforced beam (< t> M „). If < j> M n is less than Mu , the beam is designed as a doubly reinforced beam else the beam can be designed with tension steel only. 8. Determine the moment capacity of the singly reinforced section, (concrete-steel couple) 9. Compute the required steel area for the singly reinforced section. 26 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 10. Find necessary residual moment, subtracting the total design moment and the moment capacity of singly reinforced section. 11. Compute the additional steel area from necessary residual moment. 12. Compute total tension and compressive steel area. 13. Design the reinforcement by selecting the steel. 14. Check the actual beam depth and assumed beam depth. • T-shape Beam 1. Compute the design moment (Mu ). 2. Assume the effective depth. 3. Decide the effective flange width (b) based on ACI criteria. 4. Compute the practical moment strength (< J » M n) assuming the total effective flange is supporting the compression. 5. If the practical moment strength is bigger than the design moment (Mu ), the beam will be calculated as a rectangular T-beam with the effective flange width b. If the practical moment strength (< j> M n ) is smaller than the design moment (Mu ), the beam will behave as a true T-shape beam. 6. Find the approximate lever arm distance for the internal couple. 7. Compute the approximate required steel area. 8. Design the reinforcement. 9. Check the beam width. 10. Compute the actual effective depth and analyze the beam. 27 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4.3 Column 4.3.1 Introduction Columns support primarily axial load but usually also some bending moments. The combination of axial load and bending moment defines the characteristic of column and calculation method. A column subjected to large axial force and minor moment is design mainly for axial load and the moment has little effect. A column subjected to significant bending moment is designed for the combined effect. The ACI Code assumes a minimal bending moment in its design procedure, although the column is subjected to compression force only. Compression force may cause lateral bursting because of the low-tension stress resistance. To resist shear, ties or spirals are used as column reinforcement to confine vertical bars. The complexity and many variables make hand calculations tedious which makes the computer-aided design very useful. 4.3.2 Types of Columns Reinforced concrete columns are categorized into five main types; rectangular tied column, rectangular spiral column, round tied column, round spiral column, and columns of other geometry (Hexagonal, L-shaped, T-Shaped, etc). Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a) Rectangular tied Column (b) Round spiral Column Fig. 4-5: Column types Fig. 4-5 shows the rectangular tied and round spiral concrete column. Tied columns have horizontal ties to enclose and hold in place longitudinal bars. Ties are commonly No. 3 or No.4 steel bars. Tie spacing should be calculated with ACI Code. Spiral columns have reinforced longitudinal bars that are enclosed by continuous steel spiral. The spiral is made up of either large diameter steel wire or steel rod and formed in the shape of helix. The spiral columns are slightly stronger than tied columns. The columns are also categorized into three types by the applied load types; The column with small eccentricity, the column with large eccentricity (also called eccentric column) and biaxial bending column. Fig 4-6 shows the different column types depending on applied load. 29 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Mux Small Ecccwctiy Load Column Large Eeccmicity Load Columa Biaxial Benda* Column Fig. 4-6: The column types depending on applied load. Eccentricity is usually defined by location: • Interior columns usually have • Exterior columns usually have large eccentricity • Comer column usually has biaxial eccentricity. But eccentricity is not always decided by location of columns. Even interior columns can be subjected by biaxial bending moment under some load conditions Fig. 4-7 shows some examples of eccentric load conditions. i i i i DLonly Deflected column Vertical (a) (b) Beam Column Bracket (c) Fig. 4-7: Eccentric loaded conditions (Spiegel, 1998) 30 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4.3.3 Design Procedures • Short Columns with small eccentricities 1. Establish the material strength and steel area. 2. Compute the factored axial load. 3. Compute the required gross column area. 4. Establish the column dimensions. 5. Compute the load on the concrete area. 6. Compute the load to be carried by the steel. 7. Compute the required steel area. 8. Design the lateral reinforcing (ties or spiral). 9. Sketch the design. • Short Columns with large eccentricities 1. Establish the material strength and steel area. 2. Compute the factored axial load (Pu ) and moment (A/u ). 3. Determine the eccentricity (e). 4. Estimate the required column size based on the axial load and 10% eccentricity. 5. Compute the required gross column area. 6. Establish the column dimensions. 7. Compute the ratio of eccentricity to column dimension perpendicular to the bending axis. 31 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8. Compute the ratio of a factored axial load to gross column area. 9. Compute the ratio of distance between centroid of outer rows of bars to thickness of the cross section, in the direction of bending. 10. Find the required steel area using the ACI chart. 11. Design the lateral reinforcing (ties or spiral). 12. Sketch the design. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4.4 Footing 4.4.1 Introduction The foundation of a building is the part of a structure that transmits the load to ground to support the superstructure and it is usually the last element of a building to pass the load into soil, rock or piles. The primary purpose of the footing is to spread the loads into supporting materials so the footing has to be designed not to be exceeded the load capacity of the soil or foundation bed. The footing compresses the soil and causes settlement. The amount of settlement depends on many factors. Excessive and differential settlement can damage structural and nonstructural elements. Therefore, it is important to avoid or reduce differential settlement. To reduce differential settlement, it is necessary to transmit load of the structure uniformly. Usually footings support vertical loads that should be applied concentrically for avoid unequal settlement. Also the depth of footings is an important factor to decide the capacity of footings. Footings must be deep enough to reach the required soil capacity. 4.4.2 Types of Footings The most common types of footing are strip footings under walls and single footings under columns. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Common footings can be categorized as follow: 1. Individual column footing (Fig4-8a) This footing is also called isolated or single footing. It can be square, rectangular or circular of uniform thickness, stepped, or sloped top. This is one of the most economical types of footing. The most common type of individual column footing is square of rectangular with uniform thickness. 2. Wall footing (Fig4-8b) Wall footings support structural or nonstructural walls. This footing has limited width and a continuous length under the wall. 3. Combined footing (Fig4-8e) They usually support two or three columns not in a row and may be either rectangular or trapezoidal in shape depending on column. If a strap joins two isolated footings, the footing is called a cantilever footing. 4. Mat foundation (Fig4-8f) Mats are large continuous footings, usually placed under the entire building area to support all columns and walls. Mats are used when the soil-bearing capacity is low, column loads are heavy, single footings cannot be used, piles are not used, or differential settlement must be reduced through the entire footing system. 5. Pile footing (Fig4-8g) Pile footings are thick pads used to tie a group of piles together and to support and transmit column loads to the piles. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Individual Column Footing (a) Wall Footing (b) Combined Footing (Rectangular) (c ) Combined Footing (Itapezoidal) (d) Combined Footing (Strap or Cantilever) (e) Mat Footing (f) Pile Footing (g) Fig 4-8: Footing types (Spiegel, 1998) 4.4.3 Design Procedure • Wall footing 1. Compute the factored loads. 2. Assume the total footing thickness. 3. Compute the footing self-weight, the weight of earth on top of the footing. 4. Compute the effective allowable soil pressure for superimposed service Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. loads. 35 5. Determine the soil pressure for strength design. 6. Compute the required footing width. 7. Assume the effective depth for the footing and shear check. 8. Compute the maximum factored moment. 9. Compute the required area of tension steel. 10. Check the ACI Code minimum reinforcement requirement. 11. Check the development length. • Individual column footing 1 . Compute the factored loads. 2. Assume the total footing thickness. 3. Compute the footing self-weight, the weight of earth on top of the footing. 4. Compute the effective allowable soil pressure for superimposed service loads. 5. Compute required footing area. 6. Compute the factored soil pressure from superimposed loads. 7. Assume the effective depth for the footing. 8. Check the punching shear and beam shear. 9. Compute the design moment at the critical section. 10. Compute the required steel area. 11. Check the ACI Code minimum reinforcement requirement. 12. Check the development length. 13. Check the concrete bearing strength at the base of the column. 36 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Part II: Reinforced Concrete Structure Designer (RCSD) 5. Introduction RCSD is a computer program for reinforced concrete structure design according to the ACI Code. It includes slab, beam, column, and footing design. Its main purpose is to help architecture students who do not have enough structural background but need a structural calculation to design their building. So this program is developed with easy to use interface based on ACI Code procedures. RCSD provides step by step calculations and is composed of separate modules for beam, slab, column and footing design. The step by step design method is considered one of the best methods to help beginning users, like architecture students. For example, users do not need to input the all required data at once. The program asks the minimum required data and provides default-input data. The user can use the default data or select other data. The modular RCSD program structure also has the advantage that each module is executable separately and the user can add other modules. RCSD is programmed using Microsoft Visual Basic version 6.0. Visual Basic is much easier to learn than other languages and provides good graphic user interface (GUI). Each module is composed of multiple pages that have been organized using Microsoft Tabbed Control Dialog Component. Each module is executed step by step along the tabs. Tabs are divided into frames for better organization of different category of input and output data. 37 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 6. Slab Module 6.1 Introduction RCSD supports two different types of slab: One-way solid slabs and two-way slabs. One-way slabs are assumed as rectangular beams of 12inch width. One-way slabs are assumed to span the short direction analized as beam-like strips of unit width. Design of two-way slabs is more complex than one-way slabs. The two-way slab design module assumes the minimum slab thickness according to the ACI Code and calculates the deflection based on applied service loads. The two-way slab design module defines the approximate slab thickness rather than detail calculations. 6.2 One-way solid slab design module RCSD designs the one-way slab in the sequence of INPUT, MOMENT, REINFORCEMENT, CHECK, and DRAWING tabs. The INPUT tab requests: Load Condition, Material Strength, and Dimensions. The Load Condition frame requests two items: dead load and live load. RCSD includes small assistant programs to help user input and is executed by clicking the “ASSIST” button located on the frames. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. The Load Condition frame also has an assistant program for dead load input called Dead Load Calculator (Fig. 6-1). This assistant program calculates the dead load by just checking the material. It will return the total dead load to main program. IW N h /P H i— l Roofs I Cdfcigr Fkxss r 2 x 4 studsat16in..average 2.0 psf r 2 x 4 wood studs. 2 gypsum boards 6.0 psf r Steelstudsat 1 6 in..average 4.0 psf r Diywall. gypsum board. % 5.5 psf r Stucco, on paper and wire backup 10.0 psf r 4 in. metal studs, lath, stucco 18.0 psf WINDOWS. AVERAGE. FRAME* GLAZING------ r Small pane, wood or metal frame 5.0 psf r Large pane, wood or metal frame 8.0 psf r Increase for double glazing 2.5 psf r Curtain wad manufactured units 12.5 psf -MUCK VENEER----------- r 4 in. mortar joints r % in.. mastic-adhered r 4 in. brick 1.0 psf 1.4 psf 35.0 psf -CONCRETE MJNX- I ” 4 in. V 6 in. rO in . 20.0 psf 25.0 psf 30.0 psf - tfeer^^OsmfofcsSL GretAed- I" 4 in. 45.0 psf r 6 in. r Oin. Total Selected weight | 0 psf cioso | Fig. 6-1: Superimposed Dead Load Calculator Live load input assistant button activates the building usage list box, which automatically assigns required uniformly distributed live load when the user selects the building usage from the list box. 39 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. In MOMENT tab, RCSD calculates the minimum slab thickness, factored load, and moments using the previous input data. The minimum thickness of one way slabs is calculated using the minimum thickness of non-prestressed one-way slabs from ACI Code. Slab design module will design the slab based on this thickness including immediate and long-term deflection calculations. After calculating the minimum thickness, RCSD computes the slab self weight and add into superimposed dead load and calculate factored total load. The five different moments of slab can be obtained from MOMENT tab with graph and slab shape (Fig. 6-2). iQfiUsJl •» I I'M- w.iy Suliil Sl.jli wput | g a a i T J ow * y Pwwig F acto red L oad (W m) ----- W U - 1.4 D L * 1.7 LL | 0 .4 1 7 5 k i p s / * (W h ) | 15 «. .(M lG dim ) M oareato ( ia-k ip s ) M a |1 6 7 . 5 7 M e 1 402.19 365.62 M b 1 2 8 7 .2 7 N w tS * p >3 Fig. 6-2: MOMENT tab of One-way slab module 40 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. The required steel area is calculated according to the moments. RCSD asks the user to select the bar size from the steel bar list box in each frame. The steel bar list box shows steel bars and cross section area of each bar. When the user selects the steel bars, RCSD draws the steel bars into slab section and calculates the necessary spacing (Fig. 6-3). Steel bar spacing is based on maximum possible spacing defined by the ACI Code, section 7.6.5. MPUT C h K f c D iwing Ma Me Mo m M b Me - Reinforcement 0 A ------- - Reinforcement 9 C ------ SMAme * 1 0 .2 2 4 tq .« V ft S M A n a > 1 0 .5 4 7 sq.«V K SMBarNo.(aqjn) SMBarNo. (sqjn) m um -* ] | # 8 - 0 . 7 9 Sparing j is in. Spacing | 1 7 in. - n i i o t n c r a i a a n t 9 B ------- - R|M OfOM IM l0 E ------ S M A na - fo 5 7 < q.aV R S M A n a > |0 .3 3 8 « q . » V SMBarNo.(«qJn) SMBarNo. («qjn) j# 3 - 0 .1 1 *J | # 3 - 0 . 1 1 Spacing | 0 in. Spacing | o in. S M A n a >| 0.324 «q.irtft S M BarNo.(aqjn) j # 3 - 0 .1 1 3 Spacing | o Spacing* | ia in. Hansap>*| Fig. 6-3: REINFORCEMENT tab of One-way slab module 41 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. After the bending design process, RCSD compares shear strength of critical sections with the shear strength of the concrete. Also it checks whether Current design thickness is greater than the Min. Thickness by ACI Code and gives a warning massage if it is less and provide return routine to change the slab thickness. Elastic and long-term creep deflections are computed, using the effective moment of inertia and steel area. RCSD also checks the two deflections versus maximum permissible deflection (Fig. 6-4). m W.1V S. illll s i . »1 1 p an aieea» lo d elo clioa| 1 .5 ia. TteimiTtedwlB dead load detection | 028 i r The jmmedtee te a load dete ction j 005 it T otal iaaaad tate deflecNaa P® -33 * 1 8 .0 6 GOOD Shear Skengtit on the criticel section i« Lets titan tite shear stengti of 0 .6 2 Additional longterm delection m . M L Fig. 6-4: Shear and deflection checks of One-way slab module Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 6.3 Two-way slab design module The two-way slab design module is composed of four tabs: INPUT, SHAPE and SIZE, THICKNESS, and DEFLECTION. The two-way slab design module has similar procedures as the one-way slab but it designs the minimum slab thickness using preliminary design thickness of the ACI Code. The program requests the slab type input and then outputs the minimum thickness and draws the chart to compare different conditions. Fig. 6-5 shows the THICKNESS tab of the two-way slab module. % Iw ii W.ty iL i I mrit 1H K K N ESS Hicfc— f C m. ) ----- MW mum slab ftidaMM for Iwoiwey slab syifom byAQ Coda M ) LoagM d m S p a - b ( f t) Fig. 6-5: Two-way slab minimum thickness output 43 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. To check the deflection of two-way slabs, RCSD uses the simplified analysis method. Deflection is checked based on service load. The applied loads are reduced to reduction factor and the half of the maximum possible steel area is used to compute deflection. Also, the user can check change of deflection by inputting new compression and tension steel ratio (Fig. 6-6). Stab TMcfcaeae ( to .) - I T a m ____________ IM R8R9I0R8 (Hj L x - I 2 0 L y - I 2 0 ( » ) - M odM Dead Load ModfedUvaLood 0 .0 6 2 0 .0 2 5 0 .0 0 7 r 1 1 Lx -Steel R atio----- M A X I 0 .0 2 1 0 .0 0 3 Tension reinforcement ratio i~ ~. (A s/bd) | 001 Compression reinforcement ratio i (As'/bd) | 0 (ia .) ------ ---------------------- ft---- 11 ---- » - « - ■ — — UwBO KMO OOTVCKHI 0.59 in. LiweloaddeOeO'on 0.23 in. Total daO adioa 0.02 ia. __________ . _ ___ AddW onal detection 1.43 in. Total daOacHoa 2.25 ia. C*a.) N O T 6000 !: ( | T Fig. 6-6: Two-way slab deflection check tab 44 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 6.4 Flow Chart ( Start ) v . Load Condition Material Condition Span Length Assume Thickness (h,min) Applied Moments Required Steel Area No As ,min As = As,min No As < As,max No No Shear Check ,mo End Increse Thickness Compression Force Design Reinforcement Bars Temperature Steel Area (As.temp) Stress Intensity Depth Required Thickness by Moment (d,mo) V______________ ^ 45 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 7. Beam Module 7.1 Introduction RCSD provides single and double reinforced beam design method in one module. The beam design module has nine tabs: INPUT, SIZE, TYPE, STEEL AREA, BAR DESIGN, SHEAR, DEFLECTION, and DATA SHEET tab. 7.2 Beam design module RCSD calculates the minimum thickness of the beam using the minimum thickness of non-prestressed beams according to ACI Code 9.5.2. The INPUT tab requests to input the tributary area data and connection type (Fig. 7-1). SEE I TY PE I K M B»g-Taia | m D € 5 Q |} S H O W jc P U C T O w f H C I U K I D A T A S H E E T rT l SIM PLE AREA S i U M lM ri H I - | S i *■* Fig. 7-1: Beam tributary area and support type input 46 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. RCSD asks for applied load and material used in slab design module. According to the input data, it calculates the beam size, reinforcement type and required steel area. In the BAR DESIGN tab, users can select the steel bar size, similar to the reinforcement design of the one-way slab design module. RCSD calculates the required number of steel rebars and spacing, and shows a scaled drawing of beam size and reinforcement (Fig. 7-2). W R I T J 5Bt | TVff j HOW f— DCM oj S H O W j D C R iC T IO w | PCTUHe| D A T A S H E E T -CoMpraMNM S M (A m * )--------------- fte— i»sd Si—I A w | 0.7 sqJ* D- l y d [Bar No 7 X | 2 8 1 — I A w | 1 2 aqja -T ension S teel (A s)----------------------- n sq —s d S l—l A w | 2.61 sq jn Bar Si— |B or No. 8 j X | 3 81— (A i m - | 2 37 sq ja H — S tep>61 Fig.7-2: Beam reinforcement design module Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. The SHEAR tab compares the shear force at the critical section and unreinforced concrete shear capacity. If the beam requires shear reinforcing, RCSD provides the stirrup design routine to help the user select stirrup size and maximum spacing (Fig. 7-3). D E f lE C T K M I n C T U n E I D A T A S H E E T MMIIUWSIl— flDICiCW pf) V b | a M 0 - | 3 1 .2 5 Shaartoicaaltha cnfcal Mdfon (Up*) | 2 7 .9 9 U n rew to aad C o n o r s ihaai ta ca (tap*) ♦V fc - | 1*75 S to iap D asifa R n a tta Sim p Om gn -- ----- a --- ■W ROTW P o n l^ ls SpgciiQ M b l S pscI bq ( S ' # 3 bar 1 * * ■ | 6 25 to r # 4 bar 1 7 * | 6.25 to ((S im p )-, SnctAOtteariMfaicainaiitispiiMdMltM AaCBdaiaqu aMlwlmaamumVbbiggar PonltoVc. V h W - | 27.99 te i %*Ve- | 5.375 M V« > *»Vc SPiraps m raquirad. Tha Iwgti ai (pan ovarwhidt I 127 P w « « a»>7| Fig. 7-3: The shear check and stirrup design 48 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 7.3 Flow Chart of Beam Design S N ( Start Load Condition Material Condition Tributary Area Minimum Height (H) Applied Moment (Mu) Max. Tension Steel Ratio Max. Possible Moment (Mn) No Yes Doubly Reinforced Beam Single Reinforced Beam Nominal Moment Strength (concrete-steel couple) Mm Steel Area (As) Nominal Moment Strength (steel-steel couple) Mn: Min. Steel Area (As, min) Compressive Force of Compression Steel (Nc) As > As.min No Yes As = As.min fs‘ = fy fs’ = Es' Es ♦ Compression Steel (As') Tension Steel (As) ♦ Design Longitudinal Bars Stirrup Design No Shear Check Check Thickness No Deflection Check C End ) v______________ y 49 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 7.4 Flow Chart o f Shear Check s' X ( Shear Start ) No Vu.cr > <JVc End Stirrup Design No Yes Shear Force at Critical Section (Vu,cr) Concrete Shear Force (< t> V c) Requred Stirrup Size & Spacing S < p fy d Av Vu - <pVc Max. Spacing (Smallest one) d/2 Avfy / 50 bw Max. Spacing (Smallest one) d/4 Avfy / 50 bw Stirrup Design ' End "N Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 7.5 Flow Chart of Deflection Check ( Deflection Start 1 r-Yes Neutr nAs il i Axis Location bd 1 + 2 --------- 1 nAs ' b Concrete Modular Ratio (n) Single Reinforced y = Neutral Axis Location (nAs + nAs ') b (d + d ‘) 1 + 2 ---- 1 ---------- I (nAs + nAs ') Moment Inertia of Cracked Trans formmed Section Moment Inertia of Cracked Transformmed Section ler = + n A s(d - y ) 2 + n A s'(y - d ) 1 Gross Section Moment Inertia (le) Initial Cracking Moment (Mcr) Effective Moment Inertia (Ie) Immediate Deflection by Dead Load Immediate Deflection by Live Load Total Immediate Deflection Longterm Deflection Multiplier Long-term Deflection End 51 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8. Column Module 8.1 Introduction Column design can be categorized into three different types according to applied load: column with small eccentricity, column with large eccentricity and column with biaxial bending. RCSD provides first two types of column design. The design of column carrying small eccentricity is calculated by simple method, computed by the ACI method for axial load with small eccentricity. If the axial load is applied with eccentricity, the column is subjected to moment and needs more bending strengths. When the bending moment increases, its axial load strength decreases. The relation between axial strength and bending strength varies according to eccentricity, steel ratio, concrete cover, and material strength. The P-M interaction diagram shows the relationship of axial load strength and bending moment (Fig. 8-1). 900 no Compression failure fiO O ♦ 400 Balanced condition 200 Tensile failure 1 0 0 200 300 Bending strength of member Moment + /> „r (ft-kips) Fig. 8-1: Column interaction diagram (Spiegel, 1998) 52 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. The P-M interaction diagram has three different condition zones: balanced condition, compression failure, and tensile failure condition. The American Concrete Institute (ACI) provides of P-M interaction diagram for various conditions to help design the column. However it would be difficult to use all P-M interaction diagrams in RCSD. A simplified method is needed for the column design module. 8.2 Column analysis program The ACI Code does not allow tensile failure of columns. This means only the compression failure zone of the P-M interaction diagram is used to design columns. Based on this a small column analysis program was developed (Fig. 8-2). The Simplified Column Analysis Program (SCAP) has some limitation. The column should be rectangular in shape and reinforcement steel bars are arranged along the small side of column section. SCAP computes the axial load, moment strengths and stresses. 2 4 5 7 6 8 7 * 2 t 7 1 9 Q G B 7 Fig. 8-2: Simplified Column Analysis Program 53 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8.3 Simplified P-M interaction diagram SCAP simplifies the original ACI P-M interaction diagram. Various column conditions except the concrete and steel condition and concrete cover, are randomly generated, using 4 ksi and 6 ksi concrete, 2.5inch rebar cover and steel ratios from 2% to 5% (most common in the design of column). Fig. 8-3 shows the resulting P-M interaction diagram. W e * OMn/Agh Fig.8-3: SCAP simplified P-M interaction diagram 54 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. All P-M data was scattered and it was difficult to find a general equation for the simplified P-M interaction diagram, due to different values for various cover thickness. Random column size and cover thickness resulted in different P-M conditions. To find a general equation, SCAP was modified with fixed concrete cover, which is 15% of the wider column size (Fig. 8-4). Mr* < t » R n / A g < t> M n /A g h Fig. 8-4: P-M interaction diagram with 15% cover thickness 55 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. The P-M interaction diagram with 15% cover showed more consistent data for a general equation for the simplified P-M interaction diagram based on 10,000 random P-M data samples. 8.4 General equation lo r simplified P-M interaction diagram The general equation for SPSS is based on statistical analysis for steel ratios from 2% to 5%. Table 8-1 shows the equations for each steel ratio from 2-5%. Steel Ratio (%) Simplified P-M interaction equation 5 % '4P" = -« .8 x Ag (<fMn\ I Agh) 2 - 1 .5 4 x < fM n Agh) + 4.3 4 % < f> P n T — = -1 .0 x Ag f (jMn' ^Agh) {Agh) + 3.9 3 % ^ = - U ) x Ag (jMn I Agh 2 — 1.46 x ' < f> M n \ + 3.5 / 2 % —— = -2 .0 x Ag r(fMrC <AghJ 2 - 1 .4 2 x UMn\ v Agh J + 3.1 Table 8-1: Simplified P-M interaction equations Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Fig 8-5 shows the simplified P-M interaction diagram generated by simplified equations of Table 8-1. Fig. 8-5: Simplified P-M interaction diagram The simplified equations are based on concrete o f/c =4000 psi and steel of fy = 60000 psi. The relationship between material strength and axial stress checked with SCAP showed that axial stress is directly proportional to material strength. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Fig. 8-6 and Fig. 8-7 correlate axial stress with steel and concrete strength. Pu/Afl 014 0.06 00 4 0 0 2 Fig. 8-6: Axial stress and steel strength Pu/Afl 005 1 5 4.5 5.5 6.5 7.5 Fig. 8-7: Axial stress and concrete strength. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8 , Considering various concrete and steel strength, the simplified general equation was used to calculate various eccentrically loaded rectangular columns to find approximate steel ratios of the column for column module. The simplified equation for P-M interaction diagram is < p P n _ 0.04 A g ~ R < f> M n Agh, -(l.34 + 4/?)x +(2.3+ 40/?)+a {AghJ Where a = (fy - 60) x 0.0062 + (fc'~4) x 0.104 SCAP generated another graph for the axial strength reduction factor depending on the ratio of column size and eccentricity, defined as e/h, where e = eccentricity and h = column thickness (Fig.8-8). RATIO a f ECCENTRICITY anri COLUMN H (%| Fig. 8-8: Strength reduction in % due to column moment 59 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8.5 Column design module The column design module has six tabs: INPUT, LOAD, SIZE, CHECK, REINFORCEMENT, and PICTURE tab. The INPUT and LOAD tab provide graphical input column type, applied axial load and moments. Based on the axial load and moment, RCSD assumes the column size and calculates the steel area. When no moment is applied to the column, RCSD calculates the required gross column area with 3% steel area and designs a square column. In case of eccentrically loaded column, it assumes a rectangular column with 1:1.5 section ratio and calculates the ratio of eccentricity to the larger column side and the reduction factor according to the strength reduction graph (Fig 8-7). RCSD increases the required column size considering the reduction factor. To calculate the steel area, the simplified P-M interaction equation is used. The steel ratio equation is P + ^Jp2 +I44y Where: a = (fy - 60) x 0.0062 + (fc'~4) x 0.104 60 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. In the CHECK tab, RCSD analyzes the designed column and shows the calculation result, compares applied design load and moment, and draws the simplified P-M interaction diagram. (Fig. 8-9) WRIT t m o p T SEE ~~T loss t REWFOBCEMENtT PICTURE A R O Q fM S L O S O 3W llgM ' COlWIM S tM Q ll NMWBObM dMQIMi 6.5 6 5.5 |R i | - [ 324 kip* (Mw|-| 1 8 9 G ood!! 4.5 3.5 25 r S h w li n w H Ctw ck H o (3 4 -1 2 M i /M i ) 0.5 .5 1.75 2 «Mn/ 1Ag s h | 0.25 1.25 it R eqU B Sd. P C - | 2191 ksi Fig. 8-9: CHECK tab of column design module From the REINFORCEMENT tab, the user can select the main bar and tie bar sizes. RCSD calculates the required quantities and spacing. It also shows the typical tie arrangements on a 3d image. 61 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8.6 Flow Chart / ----------------------N f Start i Load Condition Material Condition Building Condition Applied Moments Yes No Ratio of e / h Axial Load on Steel Modify Column Size Check Stress ( Pu / Ag, Mu/Agh ) Select Tie Size Tie Spcaing Bar Design Axial Load on Column Required Steel Area Required Steel Area Axial Strength Reduction Factor Required Column Size Compute the Factored Load End ) V ______________ ./ Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 9. Footing Module 9.1 Introduction RCSD provides two footing design modules for wall footings and individual column footings. Both modules have five tabs: INPUT, SIZE, REINFORCEMENT, DEVELOPMENT and DRAWING. The INPUT tab requests required conditions, such as service load, material strength, and soil conditions. Based on the input data RCSD calculates possible footing size and thickness to resist shear in the SIZE tab (Fig. 9-1). O n T x l M R J T } |5gE| t Rwlnc— I T P* *|nw t f O h w s i q - Factored Load (Wa) VMi-1.4DL*1.7LL r r»re»i w f - R u i i b l a F o o t i o g S i r e | 612.5 tip* Thickness A w h t | 3 . 5 3 2 . 5 2 It. ------------------------ 9 . 5 r S e a t e d D r a w i a g ( P t a a ) 9 . 5 9 . 5 Fig. 9-1: The possible footing size calculation table and drawing 63 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. The REINFORCEMENT tab outputs the required steel area to support the moment and allows the user to select the size of steel bar. RCSD computes bar quantities and spacing to draw the scaled footing and its rebars (Fig. 9-2). l O i SIB SIS 7 1 Fig. 9-2: REINFORCMENT tab of individual column footing It also shows the footing design with plan, elevation and reinforcing in the DRAWING tab (Fig. 9-3). w w I « a r rnrnmmt I a — — « 1 S B Fig. 9-3: Drawings of footing with 3D image 64 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 9.2 Flow Chart of Individual Column Footing ( Start ) V_________________ Load Condition Material Condition Soil Condition Required Footing Area (Ag) Factored Soil Pressure (pu) No Shear Sheck for Two-way Action No Shear Sheck for One-way Action Yes No As > As.min No Developement Length Check End As = As.min Inciese Thickness Required Steel Area (As) Minimum Steel Area (As.min) Design Moment (Mu) Assume Thickness (H) Effective Allowable Soil Pressure V _______________ ' Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 9.3 Flow Chart of Wall Footing S --------------------------------- X I Start Load Condition Material Condition Soil Condition Effective Allowable Soil Pressure Factored Soil Pressure (pu) N oJ Shear Sheck Maximum Factored Moment No Minimum Steel Area (As.min) No As > As.min Developement Length Check As = As.min Increse Thickness Required Steel Area (As) Temperature Steel Area (As,temp) Coeflicitent of Resistance Assume Thickness (H) Required Footing Width (W) ( End ) X _____________________________ . / Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 10. Conclusion RCSD program targets the architecture students. The ultimate goal of this program is to assist students in the reinforced concrete structures design and guide them to design structurally safe buildings. ACI Code is the most common code of R.C structure design, but it is difficult to use for beginner users. The main purpose of this program is to provide as much basic information to users. RCSD does not restrict user to use just one answer but provides many possibility of structural member design for a set of building condition. Thus each calculation was divided into several steps and the ASSIST button was provided to guide users to give warning in case of incorrect input, provide definitions of new terms, provide typical values used in calculation. Also, Graphic User Interface (GUI) was used to procide visual output instead of numercal one and follow same color coding pattern in RCSD. All modules use blue to depict good design, red for bad design, green for compression value, and purple for tension value. Several improvements can be made to RCSD, most important of which could be the inclusion of 3D graphical output. Most architecture students are familiar with 3D-computer graphics such as Autodesk AutoCAD. If RCSD uses the 3d graphic output, it will be really helpful to students to understand the structure and connection between structural members. Another improvement could be adding more design modules. RCSD provides six modules: One-way solid slab, Two-way slab, Column, Individual column footing, Wall footing and beam. Adding other modules, such as biaxial column and shear wall design module, would be useful. 67 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. There has not been enough time to actually test this program with student’s actual design and to get feed back and add more ASSIST buttons. Microsoft Visual Basic has a user-friendly interface so modules can be added easily. I am hoping that another student will improve RCSD and develop it to make it an easier and more useful program. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Bibliography ACI, ACI/PCA Seminar - Learn Significant Changes to the AC I 318-02 Building Code [online], Available from: http://www.aci-int.org/Seminars/SeinuiarDetails.asp [Accessed 3/10/2002] ACI Committee 340. Design o f two-way slabs: in accordance with the strength design method o f ACI 318-83, American Concrete Institute, 1985. ACI Committee 340. Design handbook: in accordance with the strength design method o f ACI 318-83, American Concrete Institute, 1984. Ambrose, James E. Simplified Design o f Concrete Structures, 7th ed., John Wiley & Sons, Inc., 1997. French, Samuel E. Reinforced concrete technology, Delmar Publishers, 1994. Gamble, William L., and Park, Robert. Reinforced concrete slabs, John Wiley & Sons, Inc., 2000. Hassoun, M. Nadim. Structural Concrete: theory and design, Addison-Wesley Publishing Company, Inc., 1998. Multiframe 4D Demo. Vers. 7.50. 10,978K. February 23, 2001. Daystar Software, Inc. [online], Available from: http://www.davstarsoftware.com/denio.html [Accessed 3/10/2002] Nawy, Edward G. Reinforced concrete: a fundamental approach, Prentice Hall, 1996. Nilson, Arthur H. Design o f Concrete Structures, McGraw-Hill, Inc., 2000. Parker, Harry, and Ambrose, James. Simplified Design o f Reinforced Concrete, 5th ed., John Wiley & Sons, Inc., 1984. PC A. Notes on ACI 318-95 Building Code Requirements fo r Reinforced Concrete with Design Applications, Portland Cement Association, 2000. Prokon Calcpad Demo. Vers. 1.8. 4,120K. August 3, 2001. Prokon Software Consultants Ltd. [online], Available from: http://www.prokon.coni/denio/dlstarted.htin [Accessed 2/14/2002] Ray, S. S. Reinforced Concrete: analysis and design, Blackwell Science Ltd., 1994. 69 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Rice, Paul F., and Hoffman, Edward S. Structural Design Guide to the ACI Building Code, 3rd ed., Van Nostrand Reinhold Company, Inc., 1985. Spiegel, Leonard. Reinforced Concrete Design, 4th ed., Prentice-Hall, Inc., 1998. Stephens, Lod. Visual Basic Code Library, John Wiley & Sons, Inc., 1999. U.S. News, Best Graduate School - Architecture Ranked in 1997 [online], Available from: http://www.usnews.com/usnews/edu/bevond/igradrank/gbarch.htm [Accessed 3 /1 3 /2 0 0 2 ] Williams, Alan. Design o f Reinforced Concrete Structures, 2nd ed., Engineering press, 2000. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Appendixes 1. Beam Module ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' Reinforced Concrete Structure Designer (RCSD) ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ’ BEAM MODULE ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' University of Southern California, School of Architecture, Master of Building Science ' Copyright 2002 by the University of Southern California and Kang-Kyu Choi ' All right reserved ' Contact Author: Kang-Kyu Choi < hvdrofall@hotmail.com > ' RCSD is a reinforced concrete structure design assistant tool for learner. ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < Option Explicit Dim BetaOne, requiredmo, maxsteelratio, depthstress, nominalmomentstrength As Double Dim beamhv, beambv, TensionSteelArea, C_V, NC2, ESP, EY, Fsp, Asp, As2 As Double Dim tarea, ylength, xlength, CaseBar, loadselectval As Double Dim beamlocation, beamsupporttype, Reinforcementtype As Byte Dim steelareaCaption, steeldiacaption, longbarspacing, drawcount, Centerx As Double Dim steelareaCaption2, steeldiacaption2, longbarspacing2, drawcount2, Centerx2 As Double Dim SAv, StirrupL, Comp_SPl, Comp_SP2, N3_SP» N4 SP, N5 SP As Double Dim N Value, N Axis, I CR, I_G, I E, M CR, ShortD_DL, ShortD LL, Long D, Long_Multi, LongR, Long Ratio, MaxSteel, EThickness As Double Dim M ODL, MO_LL, D AspR, Smaxl, Smax2, Smax3, SMax4, STR SIZE As Double ' « « « « « « « Beam scaled drawing » » » » » » » » > Private Sub beamb_Change() If Val(beamh.Text) > Val(beamb.Text) Then ScaleSize.ScaleHeight = 1.5 * Val(beamh.Text) Scale Size.ScaleWidth = 1.5 * VaI(beamh.Text) Scale Size.ScaleTop = -0.75 * Val(beamh.Text) Scale Size.ScaleLeft = -0.75 * VaI(beamh.Text) beamshape.Lefl = -0.5 * Val(beamb.Text) beamshape.Top = -0.5 * Val(beamh.Text) beams hape. Width = Val(beamb.Text) beamshape.Height = Val(beamh.Text) Else Scale Size.ScaleHeight = 1.5 * Val(beamb.Text) Scale_Size.ScaleWidth = 1.5 * Val(beamb.Text) Scale Size.ScaleTop = -0.75 * Val(beamb.Text) Scale Size.ScaleLeft = -0.75 * Val(beamb.Text) beams hape.Left = -0.5 * VaI(beamb.Text) beamshape.Top = -0.5 * Val(beamh-Text) beamshape.Width = Val(beamb.Text) beamshape.Height = Val(beamh.Text) End If SlabShape.Top = Val(beamshape.Top) - Val(SlabShape.Height) End Sub Private Sub beamh_Change() 7 j Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. If Val(beamh.Text) > Val(beamb.Text) Then Scale Size.ScaleHeight = 1.5 * Val(beamh.Text) ScaleSize.Scale Width = 1.5 * Val(beamh-Text) Scale Size.ScaleTop = -0.75 * Val(beamh.Text) Scale Size.ScaleLeft = -0.75 * Val(beamh.Text) beamshape.Left = -0.5 * Val(beamb.Text) beamshape.Top = -0.5 * Val(beamh.Text) beamshape.Width = Val(beamb.Text) beamshape.Height = Val(beamh.Text) Else Scale Size.ScaleHeight = 1.5 * Val(beamb.Text) Scale Size.ScaleWidth = 1.5 * Val(beamb.Text) Scale Size.ScaleTop = -0.75 * Val(beamb.Text) Scale Size.ScaleLeft = -0.75 * Val(beamb.Text) beamshape.Left = -0.5 * Val(beamb.Text) beamshape.Top = -0.5 * Val(beamh.Text) beamshape.Width = Val(beamb.Text) beamshape.Height = Val(beamh.Text) End If SlabShape.Top = Val(beamshape.Top) - Val(SlabShape.Height) End Sub ' « « « « « « « select Beam support type » » » » » » » » > Private Sub beamtypecombo_click() Select Case beamtypecombo.Listlndex Case 0: beamsupporttype = 1 Case 1: beamsupporttype = 2 Case 2: beamsupporttype = 3 End Select End Sub 1« « « « « « « select Beam support type » » » » » » » » > Private Sub Cant_select_Click() beamtypecombo.Text = "CANTILEVER BEAM" beamsupporttype = 3 End Sub Private Sub CornstNum_Change() If ComstNum.Text = 0 Then longbarpic.Cls ' Tension steel draw longbarspacing = (Val(beamb.Text) - (TenStNum.Text * steeldiacaption + 2)) / (Val(TenStNum.Text) - 0.9999) drawcount = 1 Centerx = 0 Do longbarpic.Circle (Centerx, 0), steeldiacaption / 2, &H800080 drawcount = 1 + drawcount Centerx = Centerx + longbarspacing + steeldiacaption Loop Until drawcount > Val(TenStNum-Text) Else longbarpic.Cls ' Tension steel draw longbarspacing = (Val(beamb.Text) - (TenStNum.Text * steeldiacaption + 2)) /(Val(TenStNum.Text)-0.9999) 72 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. drawcount = 1 Centerx = 0 Do longbarpic.Circle (Centerx, 0), steeldiacaption / 2, &H800080 drawcount = 1 + drawcount Centerx = Centerx + longbarspacing + steeldiacaption Loop Until drawcount > Val(TenStNum-Text) 'Compession steel draw CaseBar = ComSTSize.Listlndex Select Case CaseBar CaseO: steelareaCaption2 = 0.11 steeldiacaption2 = 0.375 Case 1: steelareaCaption2 = 0.2 steeldiacaption2 = 0.5 Case 2: steelareaCaption2 = 0.31 steeldiacapdon2 = 0.625 Case 3: steelareaCaption2 = 0.44 steeldiacaption2 = 0.75 Case 4: steelareaCaption2 = 0.6 steeldiacaption2 = 0.875 Case 5: steelareaCaption2 = 0.79 steeldiacaption2 = 1 Case 6: steelareaCaption2 = 1 steeldiacaption2 = 1.128 Case 7: steelareaCaption2 = 1.27 steeldiacaption2 = 1.27 Case 8: steeiareaCaption2 = 1.56 steeldiacaption2 = 1.41 Case 9: steelareaCaption2 = 2.25 steeldiacaption2 = 1.693 Case 10: steelareaCaption2 = 4 steeldiacaption2 = 2.257 End Select COMstTotal.Text = Val(steelareaCaption2) * Val(ComstNum.Text) longbarspacing2 = (Val(beamb.Text) - (ComstNum.Text * steeldiacaption2 + (Val(ComstNum.Text) - 0.9999) drawcount2 = 1 Centerx2 = 0 Do longbarpic.Circle (Centerx2 - (Val(beamb.Text) / 100), -(Val(beamli.Text) * f steeldiacapdon2 / 2, &H4000& drawcount2 = 1 + drawcount2 Centerx2 = Centerx2 + longbarspacing2 + steeldiacapdon2 2)) / / 10)), 73 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Loop Until drawcount2 > Val(ComstNuntText) End If box.Left = -(steeldiacaption2 / 2 + 1) box.Top = -beamh.Text + (steeldiacaption2 / 2 + 1) box. Width = Val(beamb.Text) box.Height = Val(beamh.Text) End Sub Private Sub ComSTSize_Click() longbarpic.Cls CaseBar = ComSTSize.Listlndex Select Case CaseBar CaseO: steelareaCaption2 = 0.11 steeldiacaption2 = 0.37S Case I: steelareaCaption2 = 0.2 steeldiacaption2 = 0.S Case 2: steelareaCaption2 = 0.31 steeldiacaption2 = 0.62S Case 3: steelareaCaption2 = 0.44 steeldiacaption2 = 0.7S Case 4: steelareaCaption2 = 0.6 steeldiacaption2 = 0.87S Case 5: steelareaCaption2 = 0.79 steeldiacaption2 = 1 Case 6: steelareaCaption2 = 1 steeldiacaption2 = 1.128 Case 7: steelareaCaption2 = 1.27 steeldiacaption2 = 1.27 Case 8: steelareaCaption2 = 1.S6 steeldiacaption2 = 1.41 Case 9: steelareaCaption2 = 2.25 steeldiacaption2 = 1.693 Case 10: steelareaCaption2 = 4 steeldiacaption2 = 2.257 End Select COMstTotaLText = Val(steelareaCaption2) * Val(ComstNum.Text) longbarspacing2 = (Val(beamb.Text) - (Corns tNum.Text * (Val(ComstNum.Text) - 0.9999) drawcount2 = 1 Centerx2 = 0 steeldiacaption2 + 2)) / 74 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Do longbarpic.Circle (Centerx2 - (Val(beamb.Text) / 100), -(Val(beamh.Text) * 8 / 10)), steeldiacaption2 / 2, &H4000& drawcount2 = 1 + drawcount2 Centerx2 = Centerx2 + longbarspacing2 + steeldiacaption2 Loop Until drawcount2 > Val(ComstNum.Text) longbarspacing = (Val(beamb.Text) - (TenStNum.Text * steeldiacaption + 2)) / (Val(TenStNum.Text) -0.9999) drawcount = 1 Centerx = 0 Do longbarpic.Circle (Centerx, 0), steeldiacaption / 2, &H800080 drawcount = 1 + drawcount Centerx = Centerx + longbarspacing + steeldiacaption Loop Until drawcount > Val(TenStNum.Text) box.Left = -(steeldiacaption2 / 2 + 1) box.Top = -beamh.Text + (steeldiacaption2 / 2 + 1) box.Width = Val(beamb.Text) box.Height = Val(beamh.Text) End Sub Private Sub D_BeamB_Change() PicB.Text = D_BeamB.Text End Sub Private Sub D_BeamH_Change() PicH.Text = DBeamH.Text End Sub Private Sub D_MDL_Change() DMTL.Text = Val(D_MDL.Text) + Val(D_MLL.Text) End Sub Private Sub D MLL Change() D_MTL.Text = Val(D_MDL.Text) + VaI(D_MLL.Text) End Sub Private Sub Design_SPacing_Change() PIC_SPACING.Text = Design_SPacing.Text End Sub Private Sub Dload_assist_Click() SuperimposedDL.Show End Sub Private Sub Dmoment_assist_Click() MsgBox "Calculation of Design Moment is based on Factored Load," + vbCrLf + "NOT Service Load",, "Information" End Sub ' « « « « « « « select Beam position » » » » » » » » > Private Sub ex_select_Click() intbox.Visible = False ex_box.Visible = True beamlocation = 2 75 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End Sub • « « « « « « « select Beam support type » » » » » » » » > Private Sub Fix_select_Click() beamtypecombo.Text = "FIXED BEAM" beamsupporttype = 2 End Sub ' « « « « « « « select Beam position » » » » » » » » > Private Sub int_select_Click() intbox.Visible = True ex_box.Visible = False beamlocation = 1 End Sub Private Sub Lload_assist_Click() loadselect.Visible = True occuassist. Visible = True End Sub Private Sub load_select_Click() loadselectval = Ioad_select.ListIndex Select Case loadselectval Case 0: Beam_U.Text = 150 Case 1: Beamll.Text = 100 Case 2: Beam_ll.Text = 100 Case 3: Beam_ll.Text = 50 Case 4: Beam ll.Text = 40 Case 5: Beam_U.Text = 150 Case 6: Beam ll.Text = 150 Case 7: Beam_U.Text = 50 Case 8: Beam_ll.Text = 40 Case 9: Beam_U.Text = 40 Case 10: Beam ll.Text = 250 Case 11: Beam ll.Text = 100 Case 12: BeamJl.Text = 125 Case 13: Beam_ll.Text = 125 End Select End Sub Private Sub LONG_ALD_Change() LONG_TLD.Text = Val(SHORTTLD.Text) + Val(LONGALD.Text) End Sub Private Sub Material_assist_Click() MsgBox " Typical Steel strength = 60000 psi " + vbCrLf + " Typical Cone. Strength = 4000 or 3000 psi ", vblnformation, "Typical Material Strength" End Sub Private Sub REBAR_ICON_Click() Beam_PICl. Visible = False Beam_Pic2.Visible = True End Sub 76 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Private Sub ReturnSteel_Click() beamtab.Tab = 4 End Sub Private Sub RetumThick3_Click() beamtab.Tab = 1 End Sub 1« « « « « « « select Beam support type » » » » » » » » > Private Sub SimpIe_select_Click() beamtypecombo.Text = "SIMPLE BEAM" beamsupporttype = 1 End Sub Private Sub Size_ICon_Click() BeamPICl. Visible = True Beam_Pic2.Visib!e = False End Sub Private Sub step_01_Click() If beamlocation ="" Then beamlocation = 1 End If If beamsupporttype ="" Then beamsupporttype = 1 End If 1 « « « « « « « < select dimentions according to the position » » » » » » > If beamlocation = 1 Then xlength = Val(xlengthl.Text) ylength = Val(ylengthl.Text) tarea = Val(tareal.Text) End If If beamlocation = 2 Then xlength = Val(xlength2.Text) ylength = Val(ylength2.Text) tarea = Val(tarea2.Text) End If ' < « « « « « « « compute the beam thickness » » » » » » » » » » » » » If beamsupporttype = 1 Then beamhv = 12 * (ylength /16) End If If beamsupporttype = 2 Then beamhv = 12 * (ylength / 21) End If If beamsupporttype = 3 Then beamhv = 12 * (ylength / 8) End If beamh.Text = Round(beamhv) beamb.Text = Round(0.5 * beamhv) Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ’« « « « « « « « « < < Scaled drawing procedure » » » » » » » » » » » » Scale Size.ScaleHeight = 1.5 * beamhv ScaleSize.ScaleWidth = 1.5 * beamhv Scale_Size.ScaleTop = -0.75 * Val(beamh.Text) Scale Size.ScaleLeft = -0.75 * Val(beamh.Text) beamshape.Width = Val(beamb.Text) beamshape.Height = Val(beamh.Text) beamshape.Left = -0.5 * Val(beamb.Text) beamshape.Top = -0.5 * Val(beamh.Text) Slab Shape.Top = Val(beamshape.Top) - Val(Slab Shape.Height) beamtab.Tab = 1 End Sub Private Sub step_02_Click() Dim totaldl, totalll As Double If beamh.Text < Round(beamhv) Then MsgBox "Beam thickness is lower than ACI recommendation !! ” + vbCrLf + "This beam needs to be checked for DEFLECTION!",, "Information” End If ' Compute the load condition uniformDL.Text = (Val(Beam dLText) * tarea / ylength) /1000 UniformDLSW.Text = Round((beamb.Text * Val(beamh.Text) * ylength * 150 / 144) / ylength) / 1000 UniformTDL.Text = Val(uniformDL.Text) + Val(UniformDLSW.Text) UniformLL.Text = (Val(Beam_ll.Text) * tarea / ylength) /1000 UniformFactorL.Text = 1.4 * UniformTDL.Text + 1.7 * UniformLL.Text ' Compute the required moment If beamsupporttype = 1 Then requiredmo = VaI(UniformFactorL.Text) * ylength * ylength / 8 End If If beamsupporttype = 2 Then requiredmo = Val(UniformFactorL.Text) * ylength * ylength /12 End If If beamsupporttype = 3 Then 'requiredMo = Val(UniformFactorL.Text) * ylength / 8 End If designMO.Text = Fix(requiredmo * 100) / 100 ' « « « « « Compute the maximum possible moment» » » » » » » » ' « « maximum tension steel ratio » » BetaOne = 0.85 - 0.05 * ((Val(Conc type.Text) - 4000) / 1000) If BetaOne > 0.85 Then BetaOne = 0.85 End If If BetaOne < 0.65 Then BetaOne = 0.65 End If maxsteelratio = (0.75 * 0.85 * BetaOne * (Conc_type.Text / Steel_type.Text) * (87000 / (87000 + Steel_type.Text))) MaxSTR.Text = Fix(maxsteelratio * 1000) / 1000 ' « « maximum tension steel area calculation » » TensionSteelArea = maxsteelratio * beamb.Text * (Val(beamh.Text) - 2.5) 78 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. TensSTArea.Text = Fix(TensionSteelArea * 100) /100 ' « « depth of the stress block » » depthstress = TensionSteelArea * Val(Steel_type.Text) / (0.85 * Conc_type.Text * Val(beamb.Text)) ’ « « nominal moment strength » » nominalmomentstrength = TensionSteelArea * Steel_type.Text * ((Val(beamh.Text) - 2.5) - (depthstress / 2)) / 12000 Nomina 1MO.Text = Fix(nominalmomentstrength * 100) /100 ' « « Maximum possible Moment» » MaxMO.Text = Fix((0.9 * NominalMO.Text) * 100) /100 ' Decide Beam reinforcement type according to the comparsion design and possible max moment If Val(designMO.Text) < Val(MaxMO.Text) Then SingleDouble.Caption = "Design Moment < Max. Moment, SINGLE REINFORCEMENT NEEDED" Single_Shape.Visible = True Double Shape.Visible = False COMST01. Visible = False ComST_TXT.Visible = False Reinforcementtype = 1 Else SingleDouble.Caption = "Design Moment > Max. Moment, DOUBLE REINFORCEMENT NEEDED" Single_Shape.Visible = False Double Shape.Visible = True COMST01 .Visible = True ComST_TXT.Visible = True Reinforcementtype = 2 End If beamtab.Tab = 2 End Sub Private Sub step_03_Click() ' 90% design tension steel P_TenSTR.Text = 0.9 * (Val(MaxSTR.Text)) P_TenSTA.Text = Fix(0.9 * (Val(TensSTArea.Text)) * 100) / 100 ' The moment capacity concrete - steel couple ' « « 90% depth of the stress block » » depthstress = Val(P_TenSTA.Text) * Val(Steel_type.Text) / (0.85 * Conc type.Text * Val(beamb.Text)) ’ « « 90% nominal moment strength » » nominalmomentstrength = Val(P TenSTA.Text) * Steel_type.Text * ((Val(beamh-Text) - 2.5) - (depthstress / 2)) /12000 ' « « 90% design Moment» » P_TenMO.Text = Fix((0.9 * nominalmomentstrength) * 100) / 100 ' Total required moment R_TMO.Text = Val(designMO.Text) ' required compression moment If Val(R_TMO.Text) > Val(P_TenMO.Text) Then 79 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. R_COMMO.Text = Val(R_TMO.Text) - Val(P_TenMO.Text) Else RCOMMO.Text = 0 End If ' Compute the required compressive force in the steel ( assume d'=2.5in.) NC2 = (Val(RCOMMO.Text) * 12) / (0.9 * (Val(beamh.Text) - 2.5 - 2.5)) ' Check the strain '90%] depth of the stress block depthstress = (Val(P_TenSTA.Text) * Val(Steel type.Text)) / (0.85 Val(beamb.Text)) C V = depthstress / BetaOne ' the unit strain at the centroid of the compression steel ESP = 0.003 * (C_V - 2.5) / C_V ' strain Ey by table If Val(Steeltype.Text) = 60000 Then EY = 0.00207 Else EY = 0.00138 End If ' Compressive steel yield If ESP >= EY Then Fsp = Val(Steel_type.Text) Else Fsp = ESP * 29000000 End If ' Compute As' Asp = NC2/(Fsp / 1000) As2 = Fsp * Asp / (Val(Steel_type.Text)) R_ComSTA.Text = Fix(As2 * 100) / 100 ' Total steel area As and As' ToT_TSA.Text = Fix((Val(P_TenSTA.Text) + As2) * 100) /100 ToT CSA.Text = Fix(As2 * 100) / 100 beamtab.Tab = 3 End Sub Private Sub Step_04_Click() If Val(beamh.Text) > Val(beamb.Text) Then longbarpic.ScaleHeight = 1.5 * Val(beamh-Text) longbarpic. Scale Width = 1.5 * Val(beamh.Text) Else longbarpic.ScaleHeight = 1.5 * Val(beamb.Text) longbarpic.ScaleWidth = 1.5 * Val(beamb.Text) End If If Val(beamh.Text) > VaI(beamb.Text) Then longbarpic.ScaleTop = -0.75 * Val(longbarpic.ScaleHeight) Conc_type.Text * 80 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. longbarpic.ScaleLeft = -0.5 * (1.5 * Val(beamh.Text) - (Val(beamb.Text) - 4)) Else longbarpic.ScaleTop = -0.75 * Val(longbarpic.ScaleHeight) longbarpic.ScaleLeft = -0.2 * (1.5 * Val(beamb.Text)) End If box.Left = -(steeldiacaption / 2 + 1) box.Top = -beamh.Text + (steeldiacaption / 2+1) box. Width = Val(beamb.Text) box.Height = Val(beamh.Text) longbarpic.Cls beamtab.Tab = 4 End Sub Private Sub Step_05_Click() If VaI(TenStTotal.Text) <= 0 Then MsgBox "Steel Area should be greater than ZERO , "Information" End If ' Compute shear force Vu_Max.Text = Val(UniformFactorL.Text) * ylength / 2 VuCR = Fix((Vu_Max - (Val(UniformFactorL.Text) * ((Val(beamh.Text) - 2.5) /12))) * 100) / 100 V C = Fix((0.85 * 2 * Sqr(Val(Conc_type.Text)) * Val(beamb.Text) * (Val(beamh.Text) - 2.5) / 1000) * 100) /100 halfVC.Text = (0.5 * V_C) If Val(Vu_CR.Text) > Val(half_VC.Text) Then StirrupTXT.Caption = "Vu(max)<0.5aVc Stirrups are required." StimipTXT.ForeColor = &HFF& Else Stirrup_TXT.Caption = "Vu(max)>O.50Vc Stirrups are not required." StimipTXT.ForeColor = &HFF0000 End If ' stirrup required length StirrupL = (Val(Vu_Max.Text) - (0.5 * V C)) / Val(UniformFactorL.Text) STirrup_Length.Text = Fix(StirrupL * 100) /100 ' stirrup spacing and area of stirrup ratio SAv = 0.85 * (Val(Steeltype.Text) / 1000) * (Val(beamh.Text) - 2.5) / (VuCR - V_C) ' the case of Vu on the critical section is smaller than Vc but bigger than Vc/2 N3SP = 0.11 * SAv N3_PSP.Text = Fix(N3_SP) N4 SP = 0.2 * SAv N4_PSP.Text = Fix(N4_SP) ' decide the minimum stirrup spacing CompSPl = 4 * Sqr(Conc_type.Text) /1000 * beamb.Text * (Val(beamh.Text) - 2.5) Comp_SP2 = (VuCR - V_C) / 0.85 Smaxl = (Val(beamh.Text) - 2.5) / 2 If CompSPl >= CompSP2 Then Smax2 = 24 81 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Else Smax2 = 12 End If Smax3 = 0.11 * Val(Steeltype.Text) / (50 * Val(beamb.Text)) SMax4 = 0.2 * Val(Steel_type.Text) / (50 * Val(beamb.Text)) If Smaxl < Smax2 Then If Smaxl < Smax3 Then N3_MSP.Text = Smaxl Else N3_MSP.Text = Smax3 End If Else If Smax2 < Smax3 Then N3_MSP.Text = Smax2 Else N3_MSP.Text = Smax3 End If End If If Smaxl < Smax2 Then If Smaxl < SMax4 Then N4_MSP.Text = Smaxl Else N4_MSP.Text = SMax4 End If Else If Smax2 < SMax4 Then N4_MSP.Text = Smax2 Else N4_MSP.Text = SMax4 End If End If DesignStirrup.Text = "# 3" If Val(N3_PSP.Text) < Val(N3_MSP.Text) Then Design_SPacing.Text = N3_PSP.Text Else DesignSPacing.Text = N3_MSP.Text End If beamtab.Tab = 5 End Sub Private Sub Step_06_Click() ' < « « « « « « « « « data transfer for deflection » » » > » » » » » » D_BeamB.Text = Val(beamb.Text) D_BeamH.Text = Val(beamh.Text) DYLength = ylength ' Compute the Moment by Dead load and Live load If beamsupporttype = 1 Then Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. MO_DL = Val(UniformTDL-Text) * ylength * ylength / 8 MO LL = Val(UniformLL.Text) * ylength * ylength / 8 End If If beamsupporttype = 2 Then MO_DL = Val(UniformTDL.Text) * ylength * ylength / 12 MO_LL = Val(UniformLL.Text) * ylength * ylength /12 End If If beamsupporttype = 3 Then mo_dl = Val(UniformTDL.Text) * ylength / 8 mo ll = Val(UniformLL.Text) * ylength / 8 End If D_MDL.Text = MODL D_MLL.Text = MOLL D_MTL.Text = MODL + MOLL DAs.Text = Val(TenStTotal.Text) DASP.Text = Val(COMstTotaLText) E Thickness = Val(D_BeamH.Text) - 2.5 ' < « « « « « « « Deflection check » » » » » » » » » » » ' modular ratio n If Val(Conc_type.Text) > 4000 Then If Val(Conc_type.Text) = 4000 Then NValue = 8 Else NValue = 7 End If Else N_Value = 9 End If ' Neutral-axis location If Val(D_ASP.Text) > 0 Then NAxis = N Value * (Val(D_As.Text) + Val(D_ASP.Text)) * ((Sqr(l + (2 • (Val(D_BeamB.Text)) * (E_Thickness + 3) / (N Value * (Val(D_As.Text) + Val(DASP.Text)))))) - 1) / (Val(D_BeamB.Text)) Else N_Axis = N_Value * Val(D_As.Text) * ((Sqr(l + (2 * (Val(D_BeamB.Text)) * E_Thickness / (N Value * Val(D As.Text))))) - 1) / (Val(DBeamB.Text)) End If ' The moment inertia of the cracked section I CR = ((Val(D BeamB.Text)) * (N_Axis A 3) / 3) + ((N Value * Val(D As.Text)) * (E Thickness - N Axis) A 2) + ((N Value * Val(D_ASP.Text)) * (N_Axis - 3 )A 2) The moment inertia of the gross section I_G = (D_BeamH.TextA 3) * (Val(D_BeamB.Text)) / 12 ' the moment would initially crack the cross section M_CR = 7.5 * Sqr(Conc_type.Text / 1000000) * I_G / (D_BeamH.Text *12/2) ' The effective moment of inertia I E = ((M_CR / Val(D_MTL)) A 3 * I_G) + (1 - ((M_CR / Val(D_MTL.Text)) A 3)) * I_CR 83 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ' THE Immediate dead load deflection ShortDDL = (5 • Val(D_MDL.Text) * (VaI(D_YLength.Text) A 2) * (1728)) / (48 * 57 * Sqr(Val(Conc_type.Text)) * I_E) ShortD_LL = (D_MLL.Text / D_MDL.Text) * ShortD_DL ' The Longterm deflection multiplier (DL+ sustained LL) DAspR = Val(D_ASP.Text) / (Val(D_BeamB.Text) * (Val(D_BeamH.Text) - 2.5)) Long_Multi = 2/(1 + 50 * D_AspR) ' The longterm deflection Long_D = ((Val(D_MDL.Text) + (0.5 • Val(D_MLL.Text))) / Val(D_MDL.Text)) * ShortD_DL * LongMulti SHORT_DLD.Text = Fix(ShortD_DL * 100) / 100 SHORT_LLD.Text = Fix(ShortD_LL * 100) /100 SHORTTLD.Text = Val(SHORTDLD.Text) + Val(SHORTLLD.Text) LONG_ALD.Text = Fix(Long_D * 100) /100 ' maximum allowable deflection Max_Deflection.Text = Fix((Val(D_YLength.Text) • 12 / 240) * 100) /100 If Val(Max_Deflection.Text) >= Val(SHORT_TLD.Text) Then If Val(Max_Deflection.Text) >= Val(LONG_TLD.Text) Then Deflection_Label.ForeColor = &HFF0000 Deflection_Label.Caption = " Good !!! Design beam thickness is adequate for the deflection!." RetumThick3.Visible = False RetumSteel. Visible = False Else Deflection_Labe!.ForeColor = &HFF& DeflectionLabel.Caption = " NOT Good!!!!! Design beam thickness is NOT adequate for the deflection. Check beam thickness!!." ReturnThick3.Visible = True RetumSteel. Visible = True End If Else Deflection_Label.ForeColor = &HFF& Deflection Label.Caption = " NOT Good!!!!! Design beam thickness is NOT adequate for the deflection. Check beam thickness!!." RetumThick3.Visible = True RetumSteel. Visible = True End If beamtab.Tab = 6 End Sub Private Sub Step_07_Click() beamtab.Tab = 7 End Sub Private Sub Step_08_Click() beamtab.Tab = 8 End Sub Private Sub STR_l_Click() If STR l .Value = True Then 84 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. If N3_PSP > N3MSP Then DesignStimip.Text = "# 3" DesignSPacing.Text = N3_PSP.Text Else DesignStimip.Text = "# 3" DesignSPacing.Text = N3_MSP.Text End If Else If N4_PSP > N4MSP Then DesignStimip.Text = "# 4" DesignSPacing.Text = N4_PSP.Text Else DesignStimip.Text = "# 4" DesignSPacing.Text = N4_MSP.Text End If End If End Sub Private Sub STR_2_Click() If STR_ 1 .Value = True Then If N3_PSP > N3MSP Then DesignStimip.Text = "# 3" DesignSPacing.Text = N3_PSP.Text Else DesignStimip.Text = "# 3" DesignSPacing.Text = N3_MSP.Text End If Else If N4_PSP > N4MSP Then DesignStimip.Text = "# 4" Design_SPacing.Text = N4_PSP.Text Else DesignStimip.Text = ”# 4" DesignSPacing.Text = N4_MSP.Text End If End If End Sub Private Sub TenStNum_Change() longbarpic.Cls CaseBar = TenStSize.Listlndex Select Case CaseBar Case 0: steelareaCaption = 0.11 steeldiacaption = 0.375 Case 1: steelareaCaption = 0.2 steeldiacaption = 0.5 Case 2: steelareaCaption = 0.31 steeldiacaption = 0.625 Case 3: steelareaCaption = 0.44 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. steeldiacaption = 0.75 Case 4: steelareaCaption = 0.6 steeldiacaption = 0.875 Case 5: steelareaCaption = 0.79 steeldiacaption = 1 Case 6: steelareaCaption = 1 steeldiacaption =1.128 Case 7: steelareaCaption = 1.27 steeldiacaption = 1.27 Case 8: steelareaCaption = 1.56 steeldiacaption = 1.41 Case 9: steelareaCaption = 2.25 steeldiacaption = 1.693 Case 10: steelareaCaption = 4 steeldiacaption = 2.257 End Select TenStTotal.Text = Val(steelareaCaption) * Val(TenStNum.Text) longbarspacing = (Val(beamb.Text) - (TenStNuntText * steeldiacaption + 2)) / (Val(TenStNum.Text) -0.9999) drawcount = 1 Centerx = 0 Do longbarpic.Circle (Centerx, 0), steeldiacaption / 2, &H800080 drawcount = 1 + drawcount Centerx = Centerx + longbarspacing + steeldiacaption Loop Until drawcount > Val(TenStNum.Text) If Val(ComstNum-Text) o 0 Then ' compression steel draw COMstTotaLText = Val(steelareaCaption2) * Val(ComstNum.Text) longbarspacing2 = (Val(beamb.Text) - (ComstNum.Text * steeldiacaption2 + 2)) / (Val(ComstNum.Text) - 0.9999) drawcount2 = 1 Centerx2 = 0 Do longbarpic.Circle (Centerx2 - (Val(beamb.Text) / 100), -(Val(beainh.Text) * 8 / 10)), steeldiacaption2 / 2, &H4000& drawcount2 = 1 + drawcount2 Centerx2 = Centerx2 + longbarspacing2 + steeldiacaption2 Loop Until drawcount2 > Val(ComstNum.Text) End If box.Left = -(steeldiacaption / 2 + 1) box.Top = -beamh.Text + (steeldiacaption / 2 + 1) box.Width = Val(beamb.Text) box.Height = Val(beamh.Text) 86 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End Sub Private Sub TenStSize_cIick() longbarpic.Cls ' Tension steel draw CaseBar = TenStSize.Listlndex Select Case CaseBar CaseO: steelareaCaption = 0.11 steeldiacaption = 0.375 Case 1: steelareaCaption = 0.2 steeldiacaption = 0.5 Case 2: steelareaCaption = 0.31 steeldiacaption = 0.625 Case 3: steelareaCaption = 0.44 steeldiacaption = 0.75 Case 4: steelareaCaption = 0.6 steeldiacaption = 0.875 Case 5: steelareaCaption = 0.79 steeldiacaption = 1 Case 6: steelareaCaption = 1 steeldiacaption = 1.128 Case 7: steelareaCaption = 1.27 steeldiacaption = 1.27 Case 8: steelareaCaption = 1.56 steeldiacaption = 1.41 Case 9: steelareaCaption = 2.25 steeldiacaption = 1.693 Case 10: steelareaCaption = 4 steeldiacaption = 2.257 End Select TenStTotal.Text = Val(steelareaCaption) * Val(TenStNum-Text) longbarspacing = (VaI(beamb.Text) - (TenStNum.Text * steeldiacaption + 2)) / (Val(TenStNum.Text) -0.9999) drawcount = 1 Centerx = 0 Do longbarpic.Circle (Centerx, 0), steeldiacaption / 2, &H800080 drawcount = 1 + drawcount Centerx = Centerx + longbarspacing + steeldiacaption Loop Until drawcount > Val(TenStNum.Text) If Val(ComstNum.Text) o 0 Then ’ Compression steel draw 87 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. COMstTotal.Text = Val(steelareaCaption2) * Val(ComstNum.Text) longbarspacing2 = (Val(b€amb.Text) - (ComstNum.Text * steeldiacaption2 + 2» / (Val(ComstNum.Text) - 0.9999) drawcount2 = 1 Centerx2 = 0 Do longbarpic.CircIe (Centerx2 - (Val(beamb.Text) / 100), -(Val(beanih.Text) * 8 / 10)), steeldiacaption2 / 2, &H4000& drawcount2 = 1 + drawcount2 Centerx2 = Centerx2 + longbarspacing2 + steeldiacaption2 Loop Until drawcount2 > Val(ComstNum.Text) End If box.Left = -(steeldiacaption / 2 + 1) box.Top = -beamh.Text + (steeldiacaption / 2 + 1) box.Width = Val(beamb.Text) box.Height = Val(beamh.Text) End Sub Private Sub ToT_CSA_Change() ComST_TXT.Caption = ToT_CSA.Text Req_Com_ST.Text = ToT_CSA.Text End Sub Private Sub ToT_TSA_Change() TenSTTXT.Caption = ToTTSA.Text Req_Ten_ST.Text = ToT_TSA.Text End Sub Private Sub V_C Change() half_VC.Text = (0.5 * V_C) End Sub Private Sub Vu_CR_Change() VuCRl.Text = Vu_CR.Text End Sub Private Sub Vu_CRl_Change() If Val(Vu_CRl.Text) > VaI(half_VC.Text) Then Stinup_TXT.Caption = "Vu > ‘ /i+Vc, Stirrups are required." Stirrup_TXT.ForeColor = &HFF& Else Stimip_TXT.Caption = "Vu < Vi+Vc, Stirrups are NOT required." StirrupTXT.ForeColor = & H FFO O O O End If End Sub Private Sub xlengthI_Change() tareal.Text = Val(xlengthl.Text) * Val(ylengthl.Text) End Sub Private Sub xlength2_Change() tarea2.Text = Val(xlength2.Text) * Val(ylength2.Text) 88 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End Sub Private Sub ylengthl_Change() tareal.Text = Val(xlengthl.Text) * Val(ylengthl.Text) End Sub Private Sub ylength2_Change() tarea2.Text = Val(xlength2.Text) * VaI(ylength2.Text) End Sub Private Sub zzz_Click() EThickness = Val(DBeamH.Text) - 2.5 ' « « « « « « « < Deflection check » » » » » » » » » » » ' modular ratio n If Val(Conc_type.Text) > 4000 Then If Val(Conc_type.Text) = 4000 Then NValue = 8 Else NValue = 7 End If Else N_Value = 9 End If ’ Neutral-axis location If VaI(D_ASP.Text) > 0 Then N_Axis = N Value * (Val(D_As.Text) + VaI(D_ASP.Text)) * ((Sqr( I + (2 * (Val(DBeamB.Text)) * (E_Thickness + 2.5) / (N_Value * (Val(D_As.Text) + Val(D_ASP.Text)))))) -1) / (Val(D_BeamB.Text)) Else NAxis = N Value * Val(D As.Text) * ((Sqrf 1 + (2 * (Val(DBeamB.Text)) * E Thickness / (NValue * Val(D_As.Text))))) -1) / (Val(D_BeamB.Text)) End If ' The moment inertia of the cracked section I CR = ((Val(D_BeamB.Text)) * (N Axis A 3) / 3) + ((N Value * Val(D_As.Text)) * (E Thickness - N Axis) A 2) + ((N Value * Val(D_ASP.Text)) * (N_Axis - 2.5)A 2) The moment inertia of the gross section I_G = (D_BeamH.TextA 3) * (Val(D_BeamB.Text)) /12 ' the moment would initially crack the cross section M_CR = 7.5 * Sqr(Conc_type.Text /1000000) * I_G / (D_BeamH.Text *12/2) ' The effective moment of inertia I_E = ((M_CR / Val(DMTL)) A 3 * I_G) + (1 - ((M_CR / VaI(D_MTL.Text)) A 3)) * I_CR ' THE Immediate dead load deflection ShortDDL = (5 * Val(DMDL.Text) * (Val(D_YLength.Text) A 2) * (1728)) / (48 * 57 * Sqr(Val(Conc_type.Text)) * I_E) ShortD LL = (D_MLL.Text / D MDL.Text) * ShortD DL ' The Longterm deflection multiplier (DL+ sustained LL) D AspR = Val(D_ASP.Text) / (Val(D_BeatnB.Text) * (VaI(D_BeamH.Text) - 2.5)) 89 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. LongMulti = 2/(1 + - 50 * D AspR) ' The longterm deflection LongD = ((Val(DMDL.Text) + (0.5 * Val(D_MLL.Text))) / Val(D MDL.Text)) * ShortD_DL * LongMulti SHORTDLD.Text = Fix(ShortD_DL * 100) /100 SHORT LLD.Text = Fix(ShortD_LL • 100) /100 SHORTTLD.Text = Val(SHORT_DLD.Text) + Val(SHORTLLD.Text) LONGALD.Text = Fix(Long_D * 100) /100 ' maximum allowable deflection Max_Deflection.Text = Fix((Val(D_YLength.Text) * 12 / 240) * 100) / 100 If Val(Max_Deflection.Text) >= Val(SHORTTLD.Text) Then If Val(Max_Deflection.Text) >= Val(LONG_TLD.Text) Then DeflectionLabel.ForeColor = &HFF0000 DeflectionLabel.Caption = " Good !!! Design beam thickness is adequate for the deflection!. ” RenimThick3.Visible = False RetumSteeLVisible = False Else Deflection_Label.ForeColor = &HFF& Deflection Label.Caption = " NOT Good!!!!! Design beam thickness is NOT adequate for the deflection. Check beam thickness!!." RetumThick3.Visible = True RetumSteeLVisible = True End If Else Deflection_Label.ForeColor = &HFF& Deflection Label.Caption = " NOT Good!!!!! Design slab thickness is NOT adequate for the deflection. Check beam thickness!!.” RetumThick3.Visible = True RetumSteeLVisible = True End If End Sub Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 2. Column Module 1 < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' Reinforced Concrete Structure Designer (RCSD) 1 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ' COLUMN MODULE ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' University of Southern California, School of Architecture, Master of Building Science ' Copyright 2002 by the University of Southern California and Kang-Kyu Choi ' All right reserved ' Contact Author: Kang-K.yu Choi < hvdrofall@hotmail.com > ' RCSD is a reinforced concrete structure design assistant tool for learner. ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < Option Explicit Dim Slab ALoad, BeamALoad, ColumnALoad, Total_ALoad, Applied_DL, Applied_LL, Applied TL, Tri Area, LL_R As Double Dim Slab MLoad, Beam MLoad, Total MLoad, Applied_MDL, Applied_MLL, Applied_MO, ReductionF, E Ratio, STR Ratio As Double Dim Loadselectval, ColLocation, Connect Type, Col AreaOLD, Col Area, Col LengthX, Col LengthY, Load_Concrete, LoadSteel, Steel Area, SteelRatio As Double Dim Column WidthOLD, ColumnHeightOLD, ColLengthXOLD, Col WidthOLD As Double Dim Casebar, Tiebar Size, Casebarl, TieSpacingl, TieSpacing2, TieSpacing3 As Double Dim PuAg, MuAgh, Alpha, Beta, Gamma, ST_Ratio As Double Dim eh_V, PMX, PMY, Mainbar size, Graph Ratio As Double Dim fy, fcp, b, h, dp, tas, cas, eccentricity, zl, z2, z3, c2, sc, nwval As Double Dim fz, gz, hz, rz, sz, tz, uz, tabs, unew, vz, xlz As Double Dim cubica, cubicb, cubicc, cubicd, Cvalue, pn, mn As Double Dim El, EIG, BetaD, Cm, Delta, P_Slender, NEW Pu As Double Private Sub Applied_Mu_Change() If Val(Applied_Pu.Text) <= Val(Designed_Pu.Text) And Val(Applied_Mu.Text) <= Val(Designed_Mu.Text) Then CHeck Load.Caption = "Good!!” CHeckLoad.ForeColor = &HFF0000 RetumCOl. Visible = False Else CHeck Load.Caption = "Not Good !!" CHeckLoad.ForeColor = &HFF Return_COL Visible = True End If End Sub Private Sub Bar_ICon_Click() MainbarColumn. Visible = False Cutted_Column.Visible = True Size_Column.Visible = False End Sub Private Sub Barnum_Click() Casebar = BamumListlndex Select Case Casebar Case 0: Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. M ainbarsize = 0.11 Case 1: Mainbarsize = 0.2 Case 2: Mainbarsize = 0.31 Case 3: Mainbarsize = 0.44 Case 4: Mainbarsize = 0.6 Case 5: Mainbarsize = 0.79 Case 6: Mainbarsize = 1 Case 7: Mainbarsize = 1.27 Case 8: Mainbarsize = 1.56 Case 9: Mainbarsize = 2.25 Case 10: Mainbar_size = 4 End Select MainQuantity.Text = Round((STAREAl / Mainbar size) + 0.49) BarSizelnfo.Text = Bamum.Text DesignBar.Text = Mainbar size * Val(MainQuantity.Text) If Mainbar size < 1.27 Then Reconunened_Tie.Text = "NO. 3" Else RecommenedTie.Text = "NO. 4" End If End Sub Private Sub Column_Height_Change() ' for prevent type mismatch error by null inputing ZeroD Column_Height If Val(Column_Width.Text) >= Val(CoIumn_Height.Text) Then Col_Drawbox.ScaleHeight = 1.5 * Column_Width.Text Col_Drawbox.ScaleWidth = 1.5 * Column_Width.Text CoI_Drawbox.ScaleTop = -(0.75 * Column_Width.Text) Col_Drawbox.ScaleLeft = -(0.75 * Column_Width.Text) Columnshape.Height = Val(Column_Height.Text) Columnshape.Width = Val(Column_Width.Text) Columnshape.Top = -(Column_Height.Text / 2) Columnshape.Left = -(Column_Width.Text / 2) Else Col_Drawbox.ScaleHeight = 1.5 * Column_Height.Text Col_Drawbox.ScaleWidth = 1.5 * Column_Height.Text Col_Drawbox.ScaleTop = -(0.75 * Column_Height.Text) Col Drawbox.ScaleLeft = -(0.75 * Column_Height.Text) Columnshape.Height = Val(Column_Height.Text) Columnshape.Width = Val(Column_Width.Text) Column_shape.Top = -(Column_Height.Text / 2) Columnshape.Left = -(Column_Width.Text / 2) Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End If If Val(FactorMomentX.Text) = 0 Then 'Steel Area Calculate LoadConcrete = 0.8 * 0.7 * 0.85 * (Conctype.Text / 1000) * (Column_Width.Text * Cohimn_Height.Text) * (1 - 0.03) LoadSteel = Val(Factor_Axial.Text) - Load Concrete Steel_Area = Load Steel / (0.8 * 0.7 * (Val(Steeltype.Text) /1000)) Else PuAg = FactorAxial.Text / (Column_Width.Text * Column_Height.Text) MuAgh = (FactorMomentX.Text * 12) / ((Column_Width.Text * Column_Height.Text) * (Column_Width.Text)) Gamma = 0.04 * (MuAgh A 2) Alpha = ((Val(Steel_type.Text / 1000) - 60) * 0.0062) + ((Va!(Conc_type.Text /1000) - 4) * 0.104) Beta = PuAg - 0.96 + Alpha ST_Ratio = (Beta + Sqr(Beta A 2 + (144 * Gamma))) / 72 Steel_Area = STRatio * (Val(Column_Width.Text) * Val(Column_Height.Text)) End If ' to prevent (-) rebar size If Steel_Area < 0 Then SteeI_Area = 0 End If ' Check the steel ratio STArea.Text = Fix(Steel_Area * 100) / 100 SteelRatio = Fix((Steel_Area / (Column_Width.Text * Column_Height.Text)) * 100 * 100) /100 STRatio.Text = SteelRatio ' Give information under-reinforced column and over reinforced column If Steel_Ratio > 5 Then STRatioINfo.Caption = " CAUTION!! Over reinforced column !!! Typical Steel Ratio is Greater than 2% and Less than 5%. Increase column size!" STRatioINfo.ForeColor = &HFF& Else If Steel Ratio < 2 Then STRatioINfo.Caption = " CAUTION!! Under reinforced column !!! Typical Steel Ratio is Greater than 2% and Less than 5%. Decrease column size!" STRatioINfo.ForeColor = &HFF& Else STRatio INfo.Caption = " GOOD!! Typical Steel Ratio is Greater than 2% and Less than 5%.” STRatioINfo.ForeColor = &HFF0000 End If End If Column_Widthl.Text = Column_Width.Text ColumnHeightl.Text = Co!umn_Height.Text End Sub Private Sub Column_Height_GotFocus() selectfield ColumnHeight 93 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End Sub Private Sub Column_Height_KeyPress(KeyAscii As Integer) Select Case KeyAscii Case 48 To 57, 8 Case Else KeyAscii = 0 End Select End Sub Private Sub Column_Width_Change() ' for prevent type mismatch error by null inputing ZeroD ColumnWidth If Val(Column_Width.Text) >= Val(CoIumn_Height.Text) Then Col_Drawbox.ScaleHeight = 1.5 * CoIumnWidth.Text Col_Drawbox.ScaleWidth = 1.5 • Column_Width.Text Col_Drawbox.ScaleTop = -(0.75 * Column_Width.Text) Col_Drawbox.ScaIeLeft = -(0.75 * Column_Width.Text) Columnshape.Height = Val(Column_Height.Text) Columnshape.Width = Val(Column_Width.Text) Columnshape.Top = -(Column_Height.Text / 2) Columnshape.Left = -(Column_Width.Text / 2) Else Col_Drawbox.ScaIeHeight = 1.5 * Column_Height.Text Col_Drawbox.ScaIeWidth = 1.5 * Column_Height.Text Col_Drawbox.ScaIeTop = -(0.75 * Column_Height.Text) Col_Drawbox.ScaleLeft = -(0.75 * Column_Height.Text) Columnshape.Height = Val(Cohimn_Height.Text) Columnshape. Width = Val(Column_Width.Text) Columnshape.Top = -(Column_Height.Text / 2) Columnshape.Left = -(Column_Width.Text / 2) End If If Val(FactorMomentX.Text) = 0 Then 'Steel Area Calculate Load Concrete = 0.8 * 0.7 * 0.85 * (Conc type.Text / 1000) * (Column_Width.Text * Column_Height.Text) * (1 - 0.03) Load Steel = Val(Factor_Axial.Text) - Load Concrete Steel_Area = Load_Steel / (0.8 * 0.7 * (Val(Steel type.Text) / 1000)) Else PuAg = Factor_Axial.Text / (Column_Width.Text * Column_Height.Text) MuAgh = (Factor MomentX.Text * 12) / ((Column_Width.Text * Column_Height.Text) * (Column_Width.Text)) Gamma = 0.04 * (MuAgh A 2) Alpha = ((Val(Steel_type.Text / 1000) - 60) * 0.0062) + ((Val(Conc_type.Text / 1000) - 4) * 0.104) Beta = PuAg - 0.96 + Alpha ST_Ratio = (Beta + Sqr(Beta A 2 + (144 * Gamma))) / 72 Steel Area = ST Ratio * (Val(CoIumn_Width.Text) * Val(Column_Height.Text)) End If ' to prevent (-) rebar size If Steel Area < 0 Then 94 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. SteelA rea = 0 End If ' Check the steel ratio STArea.Text = Fix(Steel_Area * 100) / 100 SteelRatio = Fix((Steel_Area / (Column_Width.Text * Column_Height.Text)) * 100 * 100) /100 STRatio.Text = SteelRatio ' Give information under-reinforced column and over reinforced column If Steel_Ratio > 5 Then STRatio INfo.Caption = " CAUTION!! Over reinforced column !!! Typical Steel Ratio is Greater than 2% and Less than 5%. Increase column size!" STRatioINfo.ForeColor = &HFF& Else If Steel_Ratio < 2 Then STRatioINfo.Caption = " CAUTION!! Under reinforced column !!! Typical Steel Ratio is Greater than 2% and Less than 5%. Decrease column size!" STRatio_INfo.ForeColor = &HFF& Else STRatio INfo.Caption =" GOOD!! Typical Steel Ratio is Greater than 2% and Less than 5%." STRatioINfo.ForeColor = &HFFOOOO End If End If ColumnWidthl.Text = Column_Width.Text ColumnHeightl.Text = Column_Height.Text End Sub Private Sub Column_Width_GotFocus() selectfield ColumnWidth End Sub Private Sub Column_Width_KeyPress(KeyAscii As Integer) Select Case KeyAscii Case 48 To 57, 8 Case Else KeyAscii = 0 End Select End Sub Private Sub Connect_Beam_click() Select Case Connect_Beam.ListIndex Case 0: Connect_Type = 0 Pic_MO.Visible = True PicSIM.Visible = False Case 1: ConnectType = 1 PicMO. Visible = False PicSIM.Visible = True End Select End Sub Private Sub Comer_select_Click() ColLocation = 2 95 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Columnmark. Left = 600 Columnmark.Top = 2150 TriAreaO. Visible = False TriAreal. Visible = False Tri_Area2.Visible = True BeamO. Visible = False Beaml. Visible = False Beam2.Visibie = True End Sub Private Sub D_Load_gotfocus() 'selectfield D Load End Sub Private Sub Designed_eh_Change() IfVal(Designed_eh.Text) >0.1 Then eh_V = (2 / Val(Designed_eh.Text)) Else eh_V = 20 End If eh_line.X2 = 2 ehline.Y2 = -eh V End Sub Private Sub Designed_Mu_Change() If Val(AppIied_Pu.Text) <= Val(Designed_Pu.Text) And Val(Applied_Mu.Text) Val(Designed_Mu.Text) Then CHeck_Load.Caption = "Good!!” CHeckLoad.ForeColor = &HFF0000 ReturnCOl.Visible = False Else CHeck Load.Caption = "Not Good !!” CHeckLoad.ForeColor = &HFF Return_CO!. Visible = True End If End Sub Private Sub Dload_assist_Click() SuperimposedDLC.Show End Sub Private Sub Ext_select_Click() ColLocation = 1 Columnmark.Left = 600 Column_mark.Top = 1050 TriAreaO.Visible = False TriAreal. Visible = True Tri_Area2. Visible = False BeamO. Visible = False Beaml. Visible = True Beam2.Visible = False End Sub Private Sub Factor_Axial_Change() Applied_Pu.Text = FactorAxial.Text Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End Sub Private Sub Factor_MomentX_Change() NullD FactorMomentX Applied_Mu.Text = FactorMomentX EValue.Text = Fix((Factor_MomentX.Text *12 / Factor_Axial.Text) * 100) /100 End Sub Private Sub Int_select_Click() ColLocation = 0 Columnmark.Left = 2750 Columnmark.Top = 1050 TriAreaO.Visible = True TriAreal.Visible = False Tri_Area2.VisibIe = False BeamO. Visible = True Beaml. Visible = False Beam2.Visible = False End Sub Private Sub load_assist_Click() loadselect. Visible = True occuassist. Visible = True End Sub Private Sub Lload_assist_Click() loadselect. Visible = True occuassist.Visible = True End Sub Private Sub load_select_click() Loadselectval = loadselect.Listlndex Select Case Loadselectval Case 0: ColumnlLText =150 Case 1: ColumnlLText = 100 Case 2: CoIumnJl.Text = 100 Case 3: Column ll.Text = 50 Case 4: ColumnlLText = 40 Case 5: Column lLText = 150 Case 6: Column lLText =150 Case 7: Column lLText = 50 Case 8: Column lLText = 40 Case 9: Column lLText = 40 Case 10: Column lLText = 250 Case 11: Column lLText = 100 Case 12: Column ll.Text = 125 Case 13: Column lLText = 125 End Select End Sub Private Sub Main_Quantity_Change() Design Bar.Text = Mainbar size * Val(Main_Quantity.Text) ' Check the quantities of bar If Val(MainQuantity.Text) < 4 Or Val(Main_Quantity.Text) > 14 Then Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Quantity_help.Visible = True Else Quantity_help.Visible = False End If ' Check the bar is the even or odd number If InStr(l, (Val(MainQuantity.Text) / 2), o 0 Then Quantity_help.VisibIe = True Else Quandty_help.Visible = False End If End Sub Private Sub Material_assist_Click() MsgBox " Typical Steel strength = 60000 psi " + vbCrLf + " Typical Cone. Strength = 4000 or 3000 psi ", vblnformation, "Typical Material Strength" End Sub Private Sub Moment_Connect_Click() ConnectType = 0 PicM O. Visible = True Pic_SIM. Visible = False Connect_Beam.Text = "Moment Connection" Corbel.Visible = False End Sub Private Sub Reinforce_Icon_Click() Mainbar_Column.Visible = True Cutted_Column.Visible = False Size_Column.Visible = False End Sub Private Sub Retum_C01_Click() Column_Tab.Tab = 2 End Sub Private Sub Retum_slender_Click() NEW Pu = Val(FactorMomentX.Text) * Delta If Val(Factor_MoraentX.Text) > 0 Then FactorMomentX.Text = N E W Pu Else Factor MomentX.Text = Val(Factor_Axial.Text) * ((0.6 + 0.03 * Val(Column_Width.Text)) /12) * Delta End If If Val(CoIumn_Width.Text) < Val(EValue.Text) Then CoIumn_Width.Text = EValue.Text / 0.8 End If End Sub Private Sub Simple_Connect_Click() ConnectType = 1 98 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. PicMO.Visible = False PicSIM.Visible = True ConnectBeaiaText = "Simply Supported" Corbel.Visible = True End Sub Private Sub Size_Icon_Click() MainbarColumn.Visible = False Cutted_Column.Visible = False SizeColumn.Visible = True End Sub Private Sub SpacingNum_Click() Casebar 1 = SpacingN um. L istlndex Select Case Casebar 1 Case 0: Tiebar_Size = 0.11 Case 1: Tiebar_Size = 0.2 Case 2: Tiebar_Size = 0.31 End Select TieSpacingl = 48 * Sqr(4 * Tiebar_Size / 3.14) TieSpacing2 = 16 * Sqr(4 * Mainbar size / 3.14) If Val(Column_Width.Text) > Val(Column_Height.Text) Then TieSpacing3 = Val(Column_Width.Text) Else TieSpacing3 = Val(Column_Height.Text) End If If TieSpacingl <TieSpacing2 Then If TieSpacingl <TieSpacing3 Then Tie_Spacing.Text = Round(TieSpacingl) Else Tie_Spacing.Text = Round(TieSpacing3) End If Else If TieSpacing2 < TieSpacing3 Then Tie_Spacing.Text = Round(TieSpacing2) Else Tie_Spacing.Text = Round(TieSpacing3) End If End If Tie_6BIG.VisibIe = True End Sub Private Sub STArea_Change() ZeroD STArea ' Check the steel ratio Steel Ratio = Fix((STArea.Text/ (Column_Width.Text * Column_Height.Text)) * 100 * 100)/100 99 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. STRatio.Text = Steel Ratio ' Give information under-reinforced column and over reinforced column If Steel_Ratio > 5 Then STRatio INfo.Caption = " CAUTION!! Over reinforced column !!! Typical Steel Ratio is Greater than 2% and Less than 5%. Increase column size!" STRatioINfo.ForeColor = &HFF& Else If Steel Ratio < 2 Then STRatioINfo.Caption = " CAUTION!! Under reinforced column !!! Typical Steel Ratio is Greater than 2% and Less than 5%. Decrease column size!" STRatioINfo.ForeColor = &HFF& Else STRatio_INfo.Caption = " GOOD!! Typical Steel Ratio is Greater than 2% and Less than 5%." STRatioINfo.ForeColor = & H FFO O O O End If End If Column_Widthl.Text = Column_Width.Text ColumnHeightl.Text = Column_Height.Text STAREAl.Text = STArea.Text End Sub Private Sub STArea_GotFocus() selectfield STArea End Sub Private Sub STArea_KeyPress(KeyAscii As Integer) Select Case KeyAscii Case 48 To 57, 8 Case Else KeyAscii = 0 End Select End Sub Private Sub step_01_Click() ColumnTab.Tab = 1 End Sub Private Sub ZeroD(ByVal Zero_Divide As TextBox) If Zero_Divide.Text ="" Then ZeroDivide.Text = 1 ZeroDivide.SelStart = 0 ZeroDivide.SelLength = 5 End If If Zero Divide.Text = 0 Then ZeroDivide.Text = 1 ZeroDivide.SelStart = 0 ZeroDivide.SelLength = 5 End If If Zero Divide.Text > 999999 Then 100 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ZeroDivide.Text = 1 Zero_Divide.SelStart = 0 ZeroDivide.SelLength = 5 End If End Sub Private Sub selectfield(ByVal text box As TextBox) textbox.SelStart = 0 textbox.SelLength = Len(text_box.Text) End Sub Private Sub Step_02_Click() ' Tributary area calculate Tri_Area = Val(Tri_Lx.Text) * Val(Tri Ly.Text) ' Slab self weight calculate Slab_ALoad = (Tri_Area * (VaI(Slab_Thick.Text) /12) • 150 * (Val(FL_Num.Text) + 1)) /1000 ' beam self weight calculate Beam_ALoad = (((Val(BeamA_Width.Text) * Val(BeamA_height.Text) * Val(Tri_Lx.Text) * 150 / 144) + (Val(BeamB_Width.Text) * Val(BeamB Height-Text) * Val(TriLy.Text) * 150 / 144)) * (Val(FL_Num.Text) + 1)) /1000 ' Dead load calculate Applied_DL = (TriArea * Val(Column_dl.Text)) * (Val(FL Num-Text) + 1) /1000 ' Live load reduction factor LL_R = (((Tri_Area - 150) • (0.08)) /100) IfLL_R>0Then If LL_R < 0.4 Then LL_R= 1 - LL_R Else LL_R = 0.6 End If Else LL_R = 1 End If ' Modified Live Load calculate Applied_LL = LL_R * (Tri Area * Val(Column_ll.Text)) * (Val(FL_Num.Text) + 1) /1000 ' compute the total load with out column self weight Applied_TL = 1.4 * (Slab ALoad + Beam ALoad + Applied DL) + 1.7 * Applied_LL ' Assume column size depend on the total load (W/o column) If AppliedTL > 400 Then If Applied TL < 1000 Then Column ALoad = 1.5 * 1.5 * Val(FL_Height.Text) * 150 * (Val(FL_Num.Text)) / 1000 Else Column ALoad = 2*2* Val(Val(FL_Height.Text)) * 150 * (VaI(FL_NumText)) / 1000 End If Else Column_ALoad = 1*1* Val(Val(FL_Height.Text)) * 150 * (Val(FL_Num.Text)) /1000 End If 'Compute all Load 101 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. AppliedTL = Applied_TL + ColumnALoad Factor_Axial.Text = Fix(Applied_TL) If Col_Location = 1 Then Slab_MLoad = (Tri_Area • (Val(Slab_Thick.Text) /12) * 150) / 1000 Beam_MLoad = (Val(BeamA_Width.Text) * Val(BeamA_height.Text) * Val(Tri_Lx.Text) • 150/ 144)/ 1000 Applied MDL = (Tri_Area * Val(CoIumn_dl.Text)) /1000 Applied_MLL = (Tri_Area * Val(Column_ll.Text)) /1000 Total_MLoad = SlabMLoad + BeamMLoad + AppliedMDL + Applied_MLL Else TotalMLoad = 0 End If If Connect Type = 0 Then AppliedMO = Total MLoad * Val(Tri_Lx.Text) / 2 Else AppliedMO = Total_MLoad * ((Val(Corbel_Sp.Text) /12) + 1) End If FactorMomentX.Text = Fix(Applied_MO) E_Value.Text = Fix(Factor_MomentX.Text * 12 / Factor AxiaLText) ' Assume Column Area with 3% Steel Reinforcement ColAreaOLD = Val(Factor_Axial.Text) / (0.8 • 0.7 • ((0.85 * (Concjype.Text / 1000) * (1 - 0.03)) + ((Steeltype.Text /1000) * 0.03))) If Val(E_Value.Text) > 1 Then Col_LengthXOLD = Fix(1.5 * Sqr(Col_AreaOLD /1.5)) Else Col_LengthXOLD = Fix(Sqr(Col_AreaOLD)) End If ERatio = Fix(Val(E_Value.Text) * 100 / (CoI_LengthXOLD)) Select Case E Ratio Case 0 To 2: Reduction F = 1 Case 3 To 10: Reduction F = 0.85 Case 11 To 20: Reduction F = 0.75 Case 21 To 30: Reduction F = 0.65 Case 31 To 40: Reduction F = 0.55 Case 41 To 50: Reduction F = 0.5 Case 51 To 60: Reduction F = 0.425 Case 61 To 70: Reduction F = 0.375 Case 71 To 80: Reduction_F = 0.325 Case 81 To 90: Reduction F = 0.3 Case 91 To 100: Reduction F = 0.27 End Select ' Redesign according to reduction factor. ColArea = ColAreaOLD / ReductionF If Val(E_Value.Text) > 1 Then 102 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ColLengthX = Fix(Sqr(Col_Area / 1.5)) Column_Width.Text = 1.5 * Col LengthX Column_Height.Text = Col_LengthX Else ColLengthX = Fix(Sqr(Col_AreaOLD)) Column_W idth.Text = ColLengthX Column_Height.Text = ColLengthX End If ' Column Drawing ColumnTab.Tab = 2 End Sub Private Sub Step_03_Click() Designed_eh.Text = Fix(E_Value.Text * 100 / Column_Width.Text) /100 ' « « « « « « « « « « « « « Slenderness Check » » » » » » » » » » » > » » » KLR.Text = Fix(0.65 * Val(FL_Height.Text) * 12 / (0.3 * Val(Column_Width.Text))) If Val(Factor_MomentX.Text) > 0 Then MAX_KLR.Text = 34 + 12 * (Factor_MomentX.Text / Factor_MomentX.Text) Else MAX_KLR.Text = 34 End If If VaI(KLR.Text) > Val(MAX_KLR.Text) Then EIG = 57 * Sqr(Val(Conc_type.Text)) * 1000 * VaI(Column_Height.Text) * Val(Column_Width.Text)A 3 /12 BetaD = (Applied TL - 1.7 * Applied LL) / Applied TL El = 0.4 * EIG / (1 + BetaD) P_Slender = (3.1415) A 2 * El / ((0.65 * VaI(FL_Height.Text) * 12) A 2) If Val(FactorMomentX.Text) > 0 Then Cm = 0.6 + 0.4 * (Factor_MomentX.Text / Factor_MomentX.Text) Else Cm = 0.6 End If Delta = Cm / (1 - (Factor Axial.Text / (0.75 * P Slender / 1000))) If Delta < 1 Then Delta = 1 End If End If ' Output for the slenderness check or not If Val(KLR-Text) <= VaI(MAX_KLR.Text) Then Check slender.Capdon = "Slenderness check is not Required." ChecksIender.ForeColor = &HFF0000 Else Check slender.Capdon = "Slenderness check is Required." ChecksIender.ForeColor = &HFF End If 'e/h line movement If Val(Designed_eh.Text) > 0.1 Then eh_V = (2 / Val(Designed_eh.Text)) Else e h V = 20 End If eh_line.X2 = 2 103 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ' <<<<<<<<<<<<<<<<<<<<<<< Calculate Pu and Mu » » » » » » » » » » » » » fy = Val(Steel_type.Text) /1000 fcp = Val(Conc_type.Text) /1000 b = Val(Column_Height.Text) h = Val(Column_Width.Text) dp = 2.5 tas = Val(STArea.Text) / 2 cas = Val(STArea.Text) / 2 eccentricity = Val(E_Value.Text) zl =0.7225* fcp *b z2 = eccentricity + ((h - 2 * dp) / 2) z3 = h - (2 * dp) c2 = cas * (fy - 0.85 * fcp) cubica = 0.425 • zl / z2 cubicb = (zl - (zl * (h - dp) / z2)) cubicc = (c2 - (c2 * (z3 / z2)) + 87 • tas) cubicd = (-1 * (87 * tas * (h - dp))) Cvalue = cubic_cal(cubica, cubicb, cubicc, cubicd) sc = Cvalue pn = zl • sc + c2 - 87 * ((h - dp - sc) / sc) * tas Designed_Pu.Text = Fx(0.7 * pn) mn = Fx(pn * eccentricity / 12) Designed_Mu.Text = Fx(0.7 * mn) XLine.X2 = (0.7 * mn * 12 / (b * h * h)) XLine.Yl = -(0.7 * pn / (b * h)) XLine.Y2 = -(0-7 * pn / (b * h)) Yline.Xl =(0.7 *mn* 12/(b*h*h)) Yline.X2 = (0.7 * mn * 12 / (b * h * h)) Yline.Y2 = -(0.7 * pn / (b * h)) ' « « « « « « « < « « « < « P M Interaction Diagram drawing » » » » » » » » » > PMDRAW.Cls GraphRatio = 0.02 Do eccentricity = Val(Column_Width.Text) /10 Do fy = Val(Steeltype.Text) /1000 fcp = Val(Conc_type.Text) /1000 b = Val(Column_Height.Text) h = Val(Column_Width.Text) dp = Val(Column_Width.Text) /10 tas = 0.5 * Graph Ratio * (Column_Height.Text * Column_Width.Text) cas = 0.5 * Graph Ratio * (Column_Height.Text * Column_Width.Text) zl = 0.7225 * fcp * b z2 = eccentricity + ((h - 2 * dp) / 2) z3 = h - (2 * dp) c2 = cas * (fy - 0.85 * fcp) cubica = 0.425 * zl / z2 cubicb = (zl - (zl * (h - dp) / z2)) cubicc = (c2 - (c2 * (z3 / z2)) + 87 * tas) cubicd = (-1 * (87 * tas * (h - dp))) Cvalue = cubic_cal(cubica, cubicb, cubicc, cubicd) sc = Cvalue Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. pn = zl * sc + c2 - 87 * ((h - dp - sc) / sc) * tas mn = Fx(pn * eccentricity /12) PMY = (0.7 * pn / (b * h)) PMX = (0.7 * mn * 12 / (b * h * h)) PM_DRAW.Circle (PMX, -PMY), 0.003, & H FFO O O O eccentricity = eccentricity + 0.1 Loop Until eccentricity > Val(Column_Width.Text) GraphRatio = GraphRatio + 0.01 Loop Until Graph_Ratio > 0.0S ColumnTab.Tab = 3 End Sub Private Sub Step_04_Click() ColumnTab.Tab = 4 End Sub Private Sub Step_05_Click() Column_Tab.Tab = 5 End Sub Private Sub STRatio_Change() Designed_STR.Text = STRatio.Text End Sub Private Sub Tie_Spacing_Change() Banpacinglnfo.Text = TieSpacing.Text End Sub Private Sub Tri_Lx_GotFocus() selectfield Tri_Lx End Sub Private Sub Tri_Ly_gotfocus() selectfield Tri_Ly End Sub ’« « « « « « « Cubic Equation » » » » » » » » > Function cubic_cal(a, b, c, d) As Double fe = ((3 * c / a) - (b * b / (a * a))) / 3 gz = ((2 * b A 3 / (a A 3)) - (9 * b * c / (a A 2)) + (27 * d / a)) / 27 hz = (gzA2/4) + (fzA3 / 27) tz = -1 * (gz / 2) + Sqr(hz) sz = rzA(l /3) tz = -(gz / 2) - (Sqr(hz)) If tz > 0 Then uz = (tz)A(l /3) Else tabs = Abs(tz) unew = (tabs)A ( I / 3) uz = -unew End If xlz = (sz + uz) - (b / (3 * a)) cubiccal = xlz End Function Function Fx(a) As Double Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. nwval = a ’* 1000 Fx = Fix(nwval) 7 1000 End Function Private Sub NullD(ByVal ZeroDivide As TextBox) If Zero Divide.Text = "" Then ZeroDivide.Text = 0 ZeroDivide.SelStart = 0 ZeroDivide.SelLength = 5 End If End Sub Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 3. One-way Solid Slab Module ’ < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' Reinforced Concrete Structure Designer (RCSD) ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' ONE-WAY SOLID SLAB MODULE ' <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ' University of Southern California, School of Architecture, Master of Building Science ' Copyright 2002 by the University of Southern California and Kang-Kyu Choi ' All right reserved ' Contact Author: Kang-Kyu Choi < hvdrofall@hotmail.com > ' RCSD is a reinforced concrete structure design assistant tool for learner. ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < Option Explicit Dim Min Thickness, EX Span, IN_Span, E Thickness, Cal Area, Spacing, Mainbar_Size As Double Dim MA_a, MA_C, MA R, MB_a, MB_C, MB R, MC_a, MC_C, MC_R, ME_a, ME_C, ME_R As Double Dim MaxSpacing, Max Steel, V Ultimate, , loadselectval, V_CE, Max Ratio, BetaONE, Min DTK, Service_Load, Service_Moment As Double Dim N Value, N Axis, I CR, I_G, I E, M_CR, CaseBar, Cal_Space, ShortD DL, ShortD LL, Long D, Long_Multi, Long_R, Long Ratio As Double Private Sub Bamum MA Click() CaseBar = BamumMA.Listlndex Select Case CaseBar CaseO: MainbarSize = 0.11 Case 1 : MainbarSize = 0.2 Case 2: MainbarSize = 0.31 Case 3: MainbarSize = 0.44 Case 4: MainbarSize = 0.6 Case 5: MainbarSize = 0.79 Case 6: MainbarSize = 1 Case 7: MainbarSize = 1.27 Case 8: MainbarSize = 1.56 Case 9: MainbarSize = 2.25 Case 10: MainbarSize = 4 End Select CalSpace = 1 Do Cal_Area = Mainbar_Size * 12 / Cal_Space ^ Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Cal_Space = CalSpace + 1 Loop Until Cal_Area < Val(AS_MA.Text) SpaceMA.Text = Cal Space - 2 'Waraning when the spacing is over maximum possible spacing If Val(Space_MA.Text) > Max Spacing Then MsgBox ("Reduce rebar size!!! Rebar spacing is bigger than Maximum possible spacing.") End If MALine 1 .Visible = True MA_Line2.Visible = True End Sub Private Sub Bamum_MB_Click() CaseBar = BamumMB. Listlndex Select Case CaseBar CaseO: MainbarSize = 0.11 Case 1 : MainbarSize = 0.2 Case 2: MainbarSize = 0.31 Case 3: MainbarSize = 0.44 Case 4: MainbarSize = 0.6 Case 5: MainbarSize = 0.79 Case 6: MainbarSize = 1 Case 7: Mainbar_Size = 1.27 Case 8: MainbarSize = 1.56 Case 9: MainbarSize = 2.25 Case 10: MainbarSize = 4 End Select CalSpace = 1 Do Cal_Area = Mainbar Size * 12 / Cal_Space Cal_Space = CalSpace + 1 Loop Until CaI_Area < Val(AS MB.Text) Space MB.Text = Cal Space - 2 ’ Wamning when the spacing is over maximum possible spacing If Val(Space_MB.Text) > Max Spacing Then MsgBox ("Reduce rebar size!!! Rebar spacing is bigger than Maximum possible spacing.”) End If 'Steel area at Maximum moment point Max_Steel = Mainbar Size * 12 / (Cal Space) 108 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. MB_Line.Visible = True End Sub Private Sub Bamum_MC_Click() CaseBar = BamumMC.Listlndex Select Case CaseBar CaseO: MainbarSize = 0.11 Case 1 : MainbarSize = 0.2 Case 2: MainbarSize = 0.31 Case 3: MainbarSize = 0.44 Case 4: MainbarSize = 0.6 Case 5: Mainbar_Size = 0.79 Case 6: MainbarSize = 1 Case 7: MainbarSize = 1.27 Case 8: Mainbar_Size = 1.56 Case 9: Mainbar_Size = 2.25 Case 10: Mainbar Size = 4 End Select CalSpace = 1 Do Cal_Area = MainbarSize *12 / Cal_Space Cal_Space = Cal_Space + 1 Loop Until Cal_Area < Val(ASMC.Text) SpaceMC.Text = Cal_Space - 2 'Wamning when the spacing is over maximum possible spacing If Val(Space_MC.Text) > Max Spacing Then MsgBox ("Reduce rebar size!!! Rebar spacing is bigger than Maximum possible spacing.”) End If MC_Line.VisibIe = True End Sub Private Sub Bamum_ME_Click() CaseBar = BamumME.Listlndex Select Case CaseBar CaseO: MainbarSize = 0.11 Case I: MainbarSize = 0.2 Case 2: MainbarSize = 0.31 Case 3: 109 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. MainbarSize = 0.44 Case 4: MainbarSize = 0.6 Case 5: MainbarSize = 0.79 Case 6: MainbarSize = 1 Case 7: MainbarSize = 1.27 Case 8: MainbarSize = 1.56 Case 9: MainbarSize = 2.25 Case 10: MainbarSize = 4 End Select CalSpace = 1 Do Cal_Area = MainbarSize * 12 / Cal_Space CalSpace = CalSpace + 1 Loop Until Cal Area < Val(ASME.Text) Space ME.Text = Cal Space - 2 'Wamning when the spacing is over maximum possible spacing If Val(Space_ME.Text) > Max Spacing Then MsgBox ("Reduce rebar size!!! Rebar spacing is bigger than Maximum possible spacing.") End If MELine.Visible = True End Sub Private Sub Bamum TEMP Click() CaseBar = BamumTEMP.Listlndex Select Case CaseBar Case 0: MainbarSize = 0.11 Case 1 : MainbarSize = 0.2 Case 2: MainbarSize = 0.31 Case 3: MainbarSize = 0.44 Case 4: MambarSize = 0.6 Case 5: MainbarSize = 0.79 Case 6: MainbarSize = 1 Case 7: MainbarSize = 1.27 Case 8: MainbarSize = 1.56 Case 9: MainbarSize = 2.25 110 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Case 10: MainbarSize = 4 End Select Cal_Space = 1 Do Cal Area = MainbarSize *12 / Cal Space Cal_Space = CalSpace + 1 Loop Until Cal_Area < Val(ASTEMP.Text) Space_Temp.Text = Cal Space - 2 'Wamning when the spacing is over maximum possible spacing If Val(Space_Temp.Text) > Max Spacing Then MsgBox ("Reduce rebar size!!! Rebar spacing is bigger than Maximum possible spacing.") End If End Sub Private Sub Beaml_Change() Beam2.Text = Beaml.Text Beam3.Text = Beaml.Text End Sub Private Sub Beaml_GotFocus() selectfield Beaml End Sub Private Sub Beam2_GotFocus() selectfield Beam2 End Sub Private Sub Beam3_GotFocus() selectfield Beam3 End Sub Private Sub Cutted_Icon_Click() SB_Size.Visible = False SB_Bar. Visible = True SB_Front. Visible = False LineS.Visible = True Line6.Visible = True Line7. Visible = True Line8.Visible = True End Sub Private Sub Distance l_Change() Distance2.Text = Distance 1.Text End Sub Private Sub Distance l_GotFocus() selectfield Distance 1 End Sub Private Sub Distance2_GotFocus() selectfield Distance2 End Sub Private Sub selectfield(ByVal text box As TextBox) text box.SelStart = 0 111 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. text_box.SelLength = Len(text_box.Text) End Sub Private Sub Dload_assist_Click() SuperimposedDL.Show End Sub Private Sub Lload_assist_Click() loadselect. Visible = True occuassist. Visible = True End Sub Private Sub load_select_Click() loadselectval = load_select.Listlndex Select Case loadselectval Case 0: Slab_U.Text = 150 Case 1: Slab_U.Text = 100 Case 2: Slab_U.Text = 100 Case 3: Slab_ll.Text = 50 Case 4: Slab_ll.Text = 40 Case 5: Slabll.Text = 150 Case 6: Slab_ll.Text = 150 Case 7: Slab ll.Text = 50 Case 8: Slab_ll.Text = 40 Case 9: Slab_ll.Text = 40 Case 10: Slab ll.Text = 250 Case 11: SlabJLText = 100 Case 12: SlabJl.Text = 125 Case 13: SlabJl.Text = 125 End Select End Sub Private Sub LONG_ALD_Change() LONGTLD.Text = Val(SHORT_TLD.Text) + Val(LONGALD.Text) End Sub Private Sub LongD_Modify_Click() ' « « « « « « « < compression steel design for Long-term deflection » » » » » » » » LongRatio = LongD_Modify.Text ' The Longterm deflection multiplier (DL+ sustained LL) Long Multi = 2 / (1+50* Long Ratio) ' The longterm deflection Long_D = (((Val(SlabJl.Text) / 2) + (Val(Slab_dl.Text) + (150 * Min_Thickness / 12))) / (Val(Slab_dI.Text) + (150 * Min_Thickness /12))) * ShortD_DL * Long_Multi LONG ALD.Text = Fix(Long_D * 100) / 100 If Val(Max_Deflection.Text) >= Val(SHORT_TLD.Text) Then If Val(Max_Deflection.Text) >= Val(LONG_TLD.Text) Then DeflectionLabel.ForeColor = &HFF0000 112 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. DeflectionLabel. Caption = " Good !!! Design slab thickness is adequate for the deflection! . " ReturnThick3-Visible = False Else DeflectionLabel.ForeColor = &HFF& DeflectionLabel.Caption = " NOT Good!!!!! Design slab thickness is NOT adequate for deflection. Check slab thickness!!.” ReturnThick3 .Visible = True End If Else Deflection_Label.ForeColor = &HFF& Deflection Label.Caption = " NOT Good!!!!! Design slab thickness is NOT adequate for deflection. Check slab thickness!!." ReturnThick3.Visible = True End If If Val(MinTK_DESIGN.Text) >= Val(MinTK_MO.Text) Then If Val(MinTKDESIGN.Text) >= Val(MinTK_ACI.Text) Then TK_LABEL.ForeColor = & H FFOO OO ThickTXT.ForeColor = &HFF0000 ThickTXT.Caption = ” GOOD! Design slab thickness is adequate for the ACI Code and Moment!. ” ReturnThick2.Visible = False Else If Val(Max_Deflection.Text) >= Val(SHORTTLD.Text) And Val(Max_Deflection.Text) >= Val(LONG TLD.Text) Then TK_LABEL.ForeColor = &HFF0000 ThickTXT.ForeColor = & H FFOO OO ThickTXT.Caption = " GOOD! Design slab thickness is adequate for the ACI Code and Moment!. Deflection is checked!!! " RetumThick2.Visible = False Else TK_LABEL.ForeColor = &HFF& ThickTXT.ForeColor = &HFF& ThickTXT.Caption = " NOT Good! Design slab thickness is not adequate! Check slab thickness and deflection!." RetumThick2.Visible = True End If End If Else TKLABEL-ForeColor = &HFF& ThickTXT.ForeColor = &HFF& ThickTXT.Caption = " NOT Good! Design slab thickness is not adequate! Check slab thickness!." RetumThick2.Visible = True End If End Sub Private Sub Material_assist_Click() MsgBox " Typical Steel strength = 60000 psi " + vbCrLf + " Typical Cone. Strength = 4000 or 3000 psi ", vblnformation, "Typical Material Strength" End Sub Private Sub Min_TK_Change() MinTKDESIGN.Text = Val(Min_TK.Text) 113 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End Sub Private Sub RetumThick_Click() SlabTab.Tab = 1 End Sub Private Sub ReturnThick2_Click() Slab_Tab.Tab = 1 End Sub Private Sub RetumThick3_Click() SIab_Tab.Tab = 1 End Sub Private Sub SECTION_ICON_Click() SB_Size.Visible = False SB_Bar.Visible = False SB_Front.Visible = Tnie End Sub Private Sub Size_Icon_Click() SB_Size. Visible = True SB_Bar.Visible = False SB_Front. Visible = False End Sub Private Sub step_01_Click() ' Clear Span length (inch) EX_Span = Val(Distancel.Text) * 12 - (Val(Beaml.Text) / 2) - (Val(Beam2.Text)/ 2) IN_Span = Val(Distance2.Text) * 12 - (Val(Beam2.Text) / 2) - (Val(Beam3.Text) / 2) ' Compute the minimum slab thickness If Val(Distancel.Text) > VaI(Distance2.Text) Then MinThickness = Distance 1.Text * 12/24 Else MinThickness = Distance2.Text *12/24 End If MinTK.Text = MinThickness MinTKACI.Text = MinThickness ' factored load (ldps/ft) Factor_Load.Text = (1.4 * (Val(Slab_d!.Text) + (150 * Min_Thickness / 12)) + 1.7 * (Slab_ll.Text)) / 1000 ' Compute the moments M_A.Text = Fix(((Factor_Load.Text /12) * (EX_Span A 2) / 24) * 100) /100 M_B.Text = Fix(((Factor_Load.Text /12) * (EX_Span A 2) / 14) * 100) /100 M_C.Text = Fix(((Factor_Load.Text /12) * (EX_Span A 2) /10) * 100) /100 M_D.Text = Fix(((Factor_Load.Text /12) * (IN_Span A 2)/11) * 100)/ 100 M_E.Text = Fix(((Factor_Load.Text /12) * (EX Span A 2) /16) * 100) /100 Slab_Tab.Tab = 1 End Sub Private Sub Step_02_Click() E_Thickness = Val(Min_TK.Text) - 1 114 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ' « « maximum tension steel ratio » » BetaONE = 0.85 - 0.05 * ((Val(Concjype.Text) - 4000) /1000) If BetaONE > 0.85 Then BetaONE = 0.85 End If If BetaONE < 0.65 Then BetaONE = 0.65 End If MaxRatio = (0.75 * 0.85 * BetaONE * (Conctype.Text / Steel_type.Text) * (87000 / (87000 + Steeltype.Text))) ' compute MA steel Area MA_a = ((10.2 * (Conc_type.Text / 1000) * EThickness) - Sqr(((10.2 * (Conc_type.Text / 1000) * E_Thickness)A 2) - (20.4 * (Conc_type.Text / 1000) * (M A.Text / 0.9)))) / (10.2 * (Conc_type.Text / 1000)) MA C = 0.85 • (Conc_type.Text /1000) * MA a * 12 MA R = (MA C / (Steel_type.Text /1000)) / (12 * E Thickness) If MA R > Max Ratio Then ASMA = Max Ratio * 12 * E_Thickness Else AS MA = Fix((MA_C / (Steeljype.Text / 1000)) * 1000) / 1000 End If ' compute MB steel Area MB_a = ((10.2 * (Conc type.Text / 1000) * E Thickness) - Sqr(((10.2 * (Conc type.Text / 1000) • E_Thickness) A 2) - (20.4 * (Conc type.Text / 1000) * (M B.Text / 0.9)))) / (10.2 * (Conc_type.Text /1000)) MB_C = 0.85 * (Conc_type.Text / 1000) * MB_a • 12 MB_R = (MB_C / (Steei_type.Text /1000)) / (12 • E_Thickness) If MA R > Max Ratio Then AS MB = Max Ratio * 12 * E Thickness Else AS_MB = Fix((MB_C / (Steel_type.Text /1000)) * 1000) / 1000 End If ' compute MC steel Area MC_a = ((10.2 * (ConcJype.Text / 1000) * E_Thickness) - Sqr(((10.2 * (Conc_type.Text / 1000) * E_Thickness) A 2) - (20.4 * (Conc type.Text / 1000) * (M C.Text / 0.9)))) / (10.2 * (Conc_type.Text /1000)) MC_C = 0.85 * (Conc_type.Text /1000) * MC_a * 12 MC_R = (MCC / (SteeI_type.Text /1000)) / (12 * E_Thickness) If MA R > Max Ratio Then AS MC = Max_Ratio * 12 * E_Thickness Else AS MC = Fix((MC_C / (Steel_type.Text / 1000)) * 1000) /1000 End If 115 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ' compute ME steel Area ME_a = ((10.2 * (Conc_type.Text / 1000) * E Thickness) - Sqr(((10.2 * (Conc type.Text / 1000) * E Thickness)A 2) - (20.4 * (Conc type.Text / 1000) * (M E.Text / 0.9)))) / (10.2 * (Conc type.Text / 1000)) ME_C = 0.85 * (Conc type.Text /1000) * ME_a * 12 ME_R = (ME_C / (Steeljype.Text /1000)) If MA R > Max Ratio Then ASME = Max Ratio * 12 * E Thickness Else AS ME = Fix((ME_C / (Steeljype.Text /1000)) * 1000) /1000 End If 'Compute Temperature Steel If Val(SteeI_type.Text) > 50000 Then If Val(Steeltype.Text) = 60000 Then AS_TEMP.Text = 0.0018 * 12 * Val(Min_TK.Text) Else AS_TEMP.Text = (0.0018 * (60000) / Val(Steel_type.Text)) • 12 * Val(Min_TK.Text) End If Else AS TEMP.Text = 0.002 * 12 • Val(Min_TK.Text) End If 'Maximun possible spacing If 5 * (Min_TK.Text) > 18 Then Max_Spacing = 18 Else MaxSpacing = 5 * (Min_TK.Text) End If MXSPacing.Text = MaxSpacing SlabTab.Tab = 2 End Sub Private Sub Step_03_Click() ’ <<<<<<<<<<<<<<<<<<<<<<<< shear check » » » » » » » » » » » » » » V Ultimate = (1.15 / 2) * Val(Factor_Load.Text / 12) * EX Span - (Val(Factor_Load.Text / 12) * EThickness /12) V_CE = 0.85 * 2 * Sqr(Conc_type.Text) * 12 * E Thickness /1000 Vu.Text = Fix(V_Ultimate * 100) / 100 oVc.Text = Fix(V_CE * 100) /100 If V_Ultimate > V_CE Then ShearJurge.Caption = "NOT GOOD. Change the footing thickness" ShearJurge.ForeColor = &HFF& ShearBad. Visible = True ShearOK-Visible = False ShearTXT.Caption = "Shear Strength on the critical section is Greater than the shear strength of concrete." ReturaThick. Visible = True Else ShearJurge.Caption = "GOOD" ShearJurge.ForeColor = & H FFO O O O ShearBad. Visible = False 116 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ShearOK.Visible = True ShearTXT.Caption = " Shear Strength on the critical section is Less than the shear strength of concrete." ReturnThick.Visible = False End If ' « « « « « « « < Deflection check » » » » » » » » » » » ' modular ratio n If Val(Conc_type.Text) > 4000 Then If Val(Conc_type.Text) = 4000 Then NValue = 8 Else NValue = 7 End If Else N_Value = 9 End If ' Neutral-axis location NAxis = N_Value * Max_Steel * ((Sqr(l + (2 * 12 * E Thickness / (N Value * MaxSteel)))) - 1) / 12 ' The moment inertia of the cracked section I CR = (12 * (N Axis A 3) / 3) + ((N_Value * Max Steel) * (E_Thickness - N_Axis)A 2) The moment inertia of the gross section I_G = (Val(Min TK-Text) A 3) * 12 /12 ' the moment would initially crack the cross section M_CR = 7.5 * Sqr(Conc_type.Text /1000000) * I_G / (Min_TK.Text *12/2) ' The effective moment of inertia I E = (((M_CR / M_C)A 3 • I_G) + ((1 - ((M_CR / M_C) A 3))) * I_CR) Service Load = ((Val(Slab_dl.Text) + (150 * Min Thickness / 12))) /1000 ' THE Immediate dead load deflection ShortD DL = (5 * (EX_Span A 3) * (Service_Load * 1000 • EX_Span / 12)) / ((384 • 57 * Sqr(Conc_type.Text) * 1000 * I_G)) ShortD_LL = (Val(SlabJLText) / (Val(Slab_dl.Text) + (150 * Min_Thickness /12))) * ShortD_DL ' The Longterm deflection multiplier (DL+ sustained LL) LongMulti = 2 / (1 + 50 * 0) ' The longterm deflection Long_D = (((Val(Slab ll.Text) / 2) + (Val(Slab_dl.Text) + (150 • Min_Thickness / 12))) / (Val(Slab_dl.Text) + (150 * Min_Thickness / 12))) * ShortD_DL * Long_Multi SHORT DLD.Text = Fix(ShortD_DL * 100) / 100 SHORT_LLD.Text = Fix(ShortD_LL * 100) / 100 SHORTTLD.Text = Val(SHORTDLD.Text) + Val(SHORTLLD.Text) LONG ALD.Text = Fix(Long_D • 100) / 100 ' maximum allowable deflection Max_Deflection.Text = Distance 1.Text * 12 / 240 If Val(Max_Deflection.Text) >= Val(SHORT_TLD.Text) Then If VaI(Max_Deflection.Text) >= Val(LONGTLD.Text) Then DeflectionLabeLForeColor = &HFF0000 DeflectionLabel.Caption = " Design slab thickness is adequate for the deflection! . " RetumThick3. Visible = False Else DeflectionLabeLForeColor = &HFF& Good !!! 117 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Deflection Label.Caption = " NOT Good!!!!! Design slab thickness is NOT adequate for deflection. Check slab thickness!!." RetumThick3. Visible = True End If Else DeflectionLabeLForeColor = &HFF& Deflection Label.Caption = " NOT Good!!!!! Design slab thickness is NOT adequate for deflection. Check slab thickness!!." RetumThick3.Visible = True End If ' « « « « « « « « < < « « « « Minimum slab thickness c h e c k » » » » » » » » » » » > Min_DTK = Va!(M_C.Text) / ((0.9 • Max_Ratio * (Steeljype.Text / 1000) * (1 - 0.59 * Max_Ratio * Steeljype.Text / Concjype.Text)) * 12) MinTK_MO.Text = Fix(Sqr(Min_DTK) * 100) /100 + I If Val(MinTK_DESIGN.Text) >= Val(MinTK_ACI.Text) And Val(MinTK_MO.Text) Then TK LABEL-ForeColor = &HFF000O ThickTXT.ForeColor = &HFF0000 ThickTXT.Caption = " GOOD! Design slab thickness is adequate for the ACI Code and Moment!. " RetumThick2.Visible = False Else If Val(Max_Deflection.Text) >= Val(SHORTTLD.Text) Then If Val(Max_Deflection.Text) >= Val(LONGTLD.Text) Then TKLABEL.ForeColor = &HFF0O00 ThickTXTForeColor = &HFF0000 ThickTXT.Caption = " GOOD! Design slab thickness is adequate for the ACI Code and Moment!. Deflection is checked!!!" RetumThick2.Visible = False Else TK_LABEL.ForeColor = &HFF& ThickTXT.ForeColor = &HFF& ThickTXT.Caption = " NOT Good! Design slab thickness is not adequate! Check slab thickness and deflection!." ReturnThick2. Visible = True End If Else TK_LABEL.ForeColor = &HFF& ThickTXT.ForeColor = &HFF& ThickTXT.Caption = " NOT Good! Design slab thickness is not adequate! Check slab thickness and deflection!." RetumThick2.Visible = True End If End If SlabTab.Tab = 3 End Sub Private Sub Step_04_Click() Slab_Tab.Tab = 4 End Sub 118 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4. Two-way Slab Module ’ < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' Reinforced Concrete Structure Designer (RCSD) ’« « « « « « « « « « « « « « « « « « « « « « « « « « « « « < « « « ’ TWO-WAY SLAB MODULE ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' University of Southern California, School of Architecture, Master of Building Science ' Copyright 2002 by the University of Southern California and Kang-Kyu Choi ' All right reserved ' Contact Author: Kang-Kyu Choi < hvdrofall@hotmail.com > ' RCSD is a reinforced concrete structure design assistant tool for learner. ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < Option Explicit Dim loadselectval, Slab Shape, Spandrel shape, Slab Type, Min SlabTK As Double Dim Factor_DL, Factor_LL, R_MO, R DLoad, R ILoad, E Thickness, K Bar, Steel Rreq, Steel Jtm in, Steel Rmax, Req_Steel, Req_Csteel, BetaOne As Double Dim N_Value, N_Axis, I CR, I_G, I E, M_CR, ShortD DL, ShortD_LL, Long D, Long Multi, Long_R, LongRatio As Double Private Sub Commandl_Click() MsgBox "These steel ratios are calculated using Limiting steel ratios for flexural design.", vblnformation, "Information” End Sub Private Sub Dload_assist_Click() SuperimposedDLl .Show End Sub Private Sub Lload_assist_Click() loadselect. Visible = True occuassist.Visible = True End Sub Private Sub load_se!ect_click() loadselectval = loadselect.Listlndex Select Case loadselectval Case 0: SlabJl.Text = 150 Case 1: Slab_ll.Text = 100 Case 2: SlabJLText = 100 Case 3: Slab_ll.Text = 50 Case 4: Slab ll.Text = 40 Case 5: Slab ll.Text = 150 Case 6: Slab_U.Text = 150 Case 7: Slab ll.Text = 50 Case 8: Slab_ll.Text = 40 Case 9: Slab_ll.Text = 40 Case 10: SlabJl.Text = 250 Case 11: Slab ll.Text = 100 Case 12: SlabJl.Text = 125 Case 13: SlabJl.Text = 125 End Select End Sub 119 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Private Sub LONG_ALD_Change() LONGTLD.Text = Val(SHORTTLD.Text) + Val(LONGALD.Text) End Sub Private Sub Material_assist_Click() MsgBox" Typical Steel strength = 60000 p si" + vbCrLf + " Typical Cone. Strength = 4000 or 3000 psi ”, vblnformation, "Typical Material Strength" End Sub Private Sub Moment_Cal_Assist_Click() MsgBox "Modified load can be calculated by applying a Reduction factor to the service load." + vbCrLf +"" + vbCrLf + "The Reduction factor can be calculated using " + vbCrLf +" R = (LXA 4) / ((LxA 4)+(LyA 4))", vblnformation, "Information” End Sub Private Sub RE_Deflection_Click() EThickness = Val(SLAB_THICKNESS.Text) -1.5 Req_Steel = Fix((Val(Ten_ST.Text) * 12 * E_Thickness) * 100) / 100 Req_CSteel = Fix((Val(Com_ST.Text) • 12 • E_Thickness) * 100) / 100 ' modular ratio n If Val(Conctype.Text) > 4000 Then If Val(Conctype.Text) = 4000 Then NValue = 8 Else NValue = 7 End If Else NValue = 9 End If ' Neutral-axis location If Val(ComST.Text) > 0 Then N Axis = N Value * (Req_Steel + Req_CSteel) * ((Sqr(l + (2 * 12 * (E Thickness + 1) / (N Value * (Req_Steel + Req_CStee!))))) - 1) / (12) Else N Axis = N Value * (Req_Steel) * (Sqr(l + (2 * 12 * E Thickness / (N Value * (Req_Steel))))) /12 End If ' The moment inertia of the cracked section I_CR = (12 * (N Axis A 3) / 3) + ((N Value * (Req_Steel)) * (E Thickness - N Axis) A 2) + ((N_Value * (Req_CSteel)) * (N_Axis - E Thickness)A 2) The moment inertia of the gross section I_G = (SLAB_THICKNESS.TextA 3) * 12 / 12 ' the moment would initially crack the cross section M_CR = 7.5 * Sqr(Conc_type.Text / 1000000) * I_G / (SLAB THICKNESS.Text *12/2) ' The effective moment of inertia I_E = (((M_CR / Val(MO TL.Text)) A 3 * I_G) + ((1 - ((M_CR / Val(MO_TL.Text))A 3))) * I_CR) 120 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ' THE Immediate dead load deflection ShortD_DL = (5 * Val(MO_DL.Text) * ((DIM_LX.Text) A 2) * 1728) / (48 * 57 * Sqr(Conc_type.Text) • I_E) ShortD LL = (Val(MO_LL.Text) / Val(MO_DL.Text)) * ShortD_DL ' The Longterm deflection multiplier (DL+ sustained LL) LongMulti = 2 / (1+ 50* VaI(Com_ST.Text)) ' The longterm deflection LongD = (((Val(MO_LL.Text) / 2) + (Val(MO_DL.Text))) / (Val(MO_DL.Text))) * ShortD_DL * LongMulti SHORT_DLD.Text = Fix(ShortD_DL • 100) / 100 SHORT_LLD.Text = Fix(ShortD_LL * 100) /100 SHORTTLD.Text = Val(SHORT DLD.Text) + Val(SHORT_LLD.Text) LONG ALD.Text = Fix(Long_D • 100) /100 ' maximum allowable deflection Max_Deflection.Text = Fix((DIM_LX.Text * 12 / 240) * 100) /100 If Val(Max_Deflection.Text) > Val(SHORTTLD.Text) And Val(Max_Deflection.Text) > Val(LONGTLD.Text) Then Jurge_D.Caption = " GOOD ! :) " JurgeD.ForeColor = & H FFOO OO Else Jurge_D.Caption = " NOT GOOD ! : ( " JurgeD.ForeColor = &HFF& End If End Sub Private Sub REC_OP_Click() If REC OP. Value = True Then SQR_DIM. Visible = False REC_DIM. Visible = True End If End Sub Private Sub Rectangular_Type_Click() If Rectangular_Type. Value = True Then SlabShape = 2 End If End Sub Private Sub Span_Assist_Click() MsgBox "The Longer of the two clear spans is always considered for calculation.", vblnformation, "Information" End Sub Private Sub SpanNo_CIick() If SpanNo. Value = True Then YesSpandrel. Visible = False NOSpandrel.Visible = True Spandrelshape = 2 End If End Sub Private Sub SpanYes_Click() If SpanYes. Value = True Then 121 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. YesSpandrel.Visible = True NOSpandreI.Visible = False Spandrel_shape = 1 End If End Sub Private Sub SQR_OP_Click() If SQROP. Value = True Then SQR_DIM.Visible = True REC_DIM.Visible = False End If End Sub Private Sub Square_type_Click() If Squaretype. Value = True Then Slab_Shape = 1 End If End Sub Private Sub step_01_Click() If TypeOl.Value = True Then SlabType = 1 Shape_Frame.Visible = True Spandrel_Frame.Visible = False SlabShape = 1 End If If Type02.Value = True Then SlabType = 2 Shape_Frame.Visible = False Spandrel_Frame. Visible = True Spandrelshape = 1 End If If Type03.Value = True Then SlabType = 3 Shape_Frame.Visible = False SpandrelFrame.Visible = True Spandrelshape = 1 End If MinSlabTab.Tab = 1 End Sub Private Sub step_02_Click() 'two-way slab (square panel) If Slab_Type = 1 And Slab Shape = 1 Then Min_S!abTK = 8.5 * Val(Clear_Span.Text) / 28.5 Tway_MinTK.Text = Format(Min_SlabTK, "##.#") End If 'two-way slab (rectangular panel) If Slab_Type = 1 And Slab Shape = 2 Then Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. MinSlabTK = 6.9 * Va!(CIear_Span.Text) / 26.5 Tway_MinTK.Text = Format(MinSlabTK, ''##.#”) End If ' flat plate with spandrel beams If Slab Type = 2 And Spandrel shape = 1 Then MinSlabTK = 10 * Val(Clear_Span.Text) / 27.5 If Min SlabTK >= 4 Then TwayMinTK.Text = Format(MinSlabTK, "##.#") Else TwayMinTK.Text = 4 End If End If ' flat plate without spandrel beams If Slab_Type = 2 And Spandrel shape = 2 Then Min SlabTK = 9 • Val(Clear_Span.Text) / 23 + 0.1 If Min_SlabTK >= 5 Then Tway MinTK.Text = Format(Min_SlabTK, "##.#") Else TwayMinTK.Text = 5 End If End If ' flat slab with spandrel beams If Slab_Type = 3 And Spandrel shape = 1 Then Min SlabTK = 9.25 * Val(Clear_Span.Text) / 28 If Min SlabTK >= 4 Then Tway_MinTK.Text = Format(Min_SlabTK, "##.#") Else Tway_MinTK.Text = 4 End If End If ' flat slab without spandrel beams If Slab Type = 3 And Spandrel shape = 2 Then Min SlabTK = 10 * Val(Clear_Span.Text) / 27.5 If Min SlabTK >= 4 Then Tway MinTK.Text = Format(Min_SlabTK, "##.#") Else TwayMinTK.Text = 4 End If End If Mark.Left = Val(Clear_Span.Text) - 0.9 Mark.Top = (14 - Val(Tway_MinTK.Text)) - 0.2 MinSlabTab.Tab = 2 End Sub Private Sub Step_03_Click() SLABTHICKNESS.Text = Val(Tway_MinTK.Text) If Slab Shape = 2 Then DIM_LX.Text = Val(Clear_Span.Text) Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. DIMLY.Text = Val(Clear_Span.Text) / 2 RECOP.Value = True Else DIMLX.Text = Val(CIear_Span.Text) DIMLY.Text = Val(Clear_Span.Text) SQR_OP. Value = True End If ' Calcucate the Service load including self-weight Factor_DL = ((Val(Slab_dl.Text) + (150 * Tway_MinTK /12)) /1000) Factor_LL = ((SlabJl.Text)) /1000 ' Calculate modified service load by simplified method ( Prof. G.G. Schierle ) If Slab_Shape = 2 Then R_MO = ((Val(DIM_LX.Text)) A 4) / (((Val(DIM_LX.Text)) A 4) + ((Val(DIM LY.Text)) A 4)) RDLoad = R_MO * Factor DL R_lLoad = R_MO * Factor_LL Else RDLoad = Factor_DL / 2 R_lLoad = FactorJX / 2 End If MO_DEADLOAD.Text = Fix(R_DLoad • 1000) /1000 MO_LIVELOAD.Text = Fix(R_lLoad * 1000) / 1000 MO_TOTALLOAD.Text = Fix((RJLoad + R DLoad) * 1000) / 1000 ' Calculate the modified moment MO_DL.Text = Fix((R DLoad * (Val(DIM_LX.Text)A 2) / 8) * 100) / 100 MO_LL.Text = Fix((RJLoad * (Val(DIM_LX.Text)A 2) / 8) * 100) /100 MO_TL.Text = Val(MO_DL.Text) + Val(MO_LL.Text) ' < « « « « « « « Deflection check » » » » » » » » » » » '--------------- require steel area calculate----------------------------------- EThickness = Val(SLAB_THICKNESS.Text) - 1.5 'Compute Coefficient of Resistance K_Bar = (Val(MO_TL.Text) * 12) / (0.9 * 12 * (E_Thickness A 2)) 'Compute the required steel ratio Steel_Rreq = (Val(Steel type.Text) - Sqr((Steel_type.Text A 2) - (2.352 * (Steel type.Text A 2) * (K_Bar * 1000) / Conc type.Text))) / (1.176 * (Steel_type.Text A 2) / Val(ConcJype.Text)) 'Compute the minimum steel ratio If 3 * Sqr(Conc Jype.Text) >= 200 Then Steel_Rmin = (3 * Sqr(Conc_type.Text) / Steel type.Text) Else SteelRmin = (200 / Steeltype.Text) End If 'Compute the maximum steel ratio BetaOne = 0.85 - 0.05 * ((Val(ConcJype.Text) - 4000) / 1000) If BetaOne > 0.85 Then BetaOne = 0.85 124 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End If If BetaOne < 0.65 Then BetaOne = 0.65 End If Steel Rmax = Fix((0.75 * 0.85 * BetaOne * (Conc type.Text / Steei_type.Text) * (87000 / (87000 + Steeljype.Text))) * 100) /100 'Compute design steel area ( maximum steel 12) Req_Steel = Fix(((Steel_Rmax / 2) * 12 * E Thickness) * 100) /100 Ten_ST.Text = Fix((Steel_Rmax / 2) * 1000) /1000 Com_ST.Text = 0 STR_MAX.Text = Fix(Steel_Rmax • 1000) /1000 STR_MIN.Text = Fix(Steel_Rmin * 1000) /1000 ' modular ratio n If Val(Conc Jype.Text) > 4000 Then If Val(Conc Jype.Text) = 4000 Then NV alue = 8 Else N_ Value = 7 End If Else NValue = 9 End If ' Neutral-axis location N_Axis = N_Value * (Req_Steel) * (Sqr(l + (2 * 12 * E Thickness / (N Value * (Req_Steel))))) / 12 ' The moment inertia of the cracked section I CR = (12 * (N Axis A 3) / 3) + ((N Value * (Req_Steel)) * (E Thickness - N Axis)A 2) The moment inertia of the gross section I_G = (SLABTHICKNESS.TextA 3) • 12 /12 ' the moment would initially crack the cross section M_CR = 7.5 * Sqr(ConcJype.Text /1000000) * I_G / (SLAB THICKNESS.Text * 1 2 /2 ) ' The effective moment of inertia I E = (((M_CR / Val(MO_TL.Text))A 3 * I_G) + ((1 - ((M_CR / Val(MO_TL.Text))A 3))) * I_CR) ' THE Immediate dead load deflection ShortD_DL = (5 * Val(MO_DL.Text) * ((DIMLX.Text) A 2) * 1728) / (48 * 57 * Sqr(Conc_type.Text) * I E) ShortD_LL = (Val(MO_LL.Text) / VaI(MO_DL.Text)) * ShortD_DL ' The Longterm deflection multiplier (DL+ sustained LL) Long_Multi = 2/(1 + 50 * 0) ' The longterm deflection LongJ) = (((Val(MO LL.Text) / 2) + (Val(MO_DL.Text))) / (Val(MO_DL.Text))) * ShortD_DL * Long Multi SHORT_DLD.Text = Fix(ShortD_DL * 100) /100 SHORT JX D .Text = Fix(ShortD_LL * 100) /100 125 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. SHORTTLD.Text = Val(SHORTDLD.Text) + Val(SHORTLLD.Text) LONGALD.Text = Fix(Long_D * 100) / 100 ' maximum allowable deflection Max_Deflection.Text = Fix((DIM_LX.Text * 12 / 240) * 100) /100 If Val(Max_Deflection.Text) > Val(SHORT_TLD.Text) And Val(Max_Deflection.Text) Val(LONG_TLD.Text) Then JurgeD.Caption = " GOOD ! :) " JurgeD.ForeColor = &HFF0000 Else Jurge D.Caption = " NOT GOOD ! : ( " JurgeD.ForeColor = &HFF& End If MinSlabTab.Tab = 3 End Sub Private Sub Type01_Click() If TypeOl.Value = True Then SlabType = 1 End If End Sub Private Sub Type02_Click() If Type02.Value = True Then SlabType = 2 End If End Sub Private Sub Type03_Click() If Type03.Value = True Then SlabType = 3 End If End Sub Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 5. Individual Column Footing Module ’ < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ’ Reinforced Concrete Structure Designer (RCSD) ' <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ' INDIVIDUAL COLUMN FOOTING MODULE ' << < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' University of Southern California, School of Architecture, Master of Building Science ' Copyright 2002 by the University of Southern California and Kang-Kyu Choi ' All right reserved ' Contact Author: Kang-Kyu Choi < hvdrofall@hotniail.com > ' RCSD is a reinforced concrete structure design assistant tool for learner. ’ < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < Option Explicit Dim FtSw , SoilWt, Esoil_Pres, RsoilPres, Spacing, Casebar, Case Bari As Double Dim Factored Shear, Conc_Shear, Conc Shearl, Conc_Shear2, Conc_Shear3, Onefactored Shear, Oneconc Shear Rfoot Size, Rfoot Width, P Ultimate, Foot Tlc, As Double Dim M Design, XI, Yl, X2, Y2, St Count, K_ER As Double Dim E Depth, V Ultimate, V_C, DSoil Pres, M Ultimate, K Bar, Steel R, Steel Rmin, MainbarSize, SteelDia, Tempbar Size As Double Dim Quantity Bar, Alpha, Beta, Delta, Gamma, C Factor, C_db, L Develope As Double Private Sub barnum_Click() Casebar = Bamum.ListIndex Select Case Casebar CaseO: Mainbar_Size = O.U SteelDia = 0.375 Case 1 : MainbarSize = 0.2 SteelDia = 0.5 Case 2: MainbarSize = 0.31 SteelDia = 0.625 Case 3: MainbarSize = 0.44 SteelDia = 0.75 Case 4: MainbarSize = 0.6 SteelDia = 0.875 Case 5: MainbarSize = 0.79 SteelDia = 1 Case 6: Mainbar_Size = I SteelDia =1.128 Case 7: MainbarSize = 1.27 SteelDia = 1.27 Case 8: MainbarSize = 1.56 SteelDia = 1.41 Case 9: MainbarSize = 2.25 , Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. SteelDia = 1.693 Case 10: MainbarSize = 4 SteelDia = 2.257 End Select ' The number of reinforcement - Round( +0.49) Syntax for next higher integer MainQuantity.Text = Round((Val(Req_steell.Text) / Mainbar_Size) + 0.49) Drawing the reinforcing steel with scale Spacing = 2 * (Val(WD_TXT.Text) * 12 -12) / (Val(Main_Quantity.Text) -1) Scaledraw2.Cls Scaledraw3.Cls StCount = 0 Do XI = -1 * (Val(WD_TXT.Text * 12) - (12 + (St_Count * Spacing)) - (SteelDia II)) 12 Y1 = (Val(WD_TXT.Text * 12) - 6) / 2 X2 = -1 * (Val(WD_TXT.Text * 12) - (12 + (St_Count * Spacing)) + (SteelDia / 2)) / 2 Y2 = -1 * (Val(WD_TXT.Text * 12) - 6) / 2 Scaledraw2.Line (XI, Y1HX2, Y2), &HC000C0, BF Scaledraw2.Line (Yl, X1HY2, X2), &HC000C0, BF Scaledraw3.Line (XI, Y1MX2, Y2), &HC000C0, BF Scaledraw3.Line (Yl, X1HY2, X2), &HC000C0, BF StCount = StCount + 1 Loop Until St Count > (Val(Main_Quantity.Text) -1) DR_Column2.Visible = False DR_Column2. Visible = True DR_Column3.Visible = False DR_Column3. Visible = True Result_Num.Text = Bamum.Text ResultNuml.Text = Bamum.Text End Sub Private Sub ColumnThic k_Change() Result_Column.Text = Column_Thick.Text End Sub Private Sub Dowel_ICon_Click() PIC_ALL. Visible = False PIC_Clear.Visible = False PlC_Detail.Visible = True End Sub Private Sub Foot_Thick_Change() ' for prevent type mismatch error by null inputing If Foot_Thick.Text = "" Then FootThick.Text = 0 FootThick.SelStart = 0 Foot_Thick.SelLength = 5 End If If Val(Foot_Thick.Text) > Val(UnderDepth_Foot.Text) Then Foot_Thick.Text = Val(UnderDepth_Foot.Text) Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. FootThick-SelStart = 0 Foot_Thick.SelLength = 5 End If FootTk = Val(Foot_Thick.Text) ' Drawing procedure when user change the thickness of footing FtSw = 0.15 * Foot Tk SoilW t = Wt_Earth.Text * (Val(UnderDepth_Foot.Text) - Foot Tk) /1000 EsoilPres = (Soil_Pres.Text /1000) - Ft Sw - Soil_Wt RfootSize = (Val(Foot_DL.Text) + Val(Foot_LL.Text)) / EsoilPres RfootWidth = Sqr(Rfoot_Size) If Rfoot_ Width > Fix(Rfoot_ Width) + 0.5 Then RfootWidth = Round( RfootW idth) Else Rfoot_Width = Fix(Rfoot_Width) + 0.5 End If RfootSize = (RfootW idth)A 2 P_Ultiiiiate = Val(Factor_Load.Text) / RfootSize EDepth = (Foot_Tk * 12) - 4 FactoredShear = P Ultimate * (Rfoot Size - (((Val(Column_Thick.Text) + E_Depth) /1 2 )A 2)) Conc Shearl = (2 + 4) * (Sqr(Val(Conc_type.Text))) * (Val(Column_Thick.Text) + E Depth) * 4 * EDepth Conc_Shear2 = ((40 * E_Depth) / ((Val(Column_Thick.Text) + E Depth) * 4) + 2) * (Sqr(Val(Conc_type.Text))) * (Val(Column_Thick.Text) + E Depth) * 4 * E_Depth Conc_Shear3 = (4) * (Sqr(Val(Conc_type.Text))) * (Val(CoIumn_Thick.Text) + E Depth) * 4 * EDepth If Conc_Shear2 > Conc_Shear3 Then Conc_Shear = 0.85 * Conc_Shear3 /1000 Else Conc_Shear = 0.85 • Conc_Shear2 /1000 End If Onefactored Shear = P_Ultimate * Rfoot Width * (((Rfoot Width - (Val(Column_Thick.Text) / 12) - (2 * E_Depth /12)))/2) Oneconc Shear = 0.85 * ((2) * (Sqr(Val(Conc_type.Text))) * Rfoot Width * 12 * E_Depth) / 1000 If Conc_Shear > FactoredShear Tlien If Oneconc Shear > Onefactored Shear Then WD_TXT.Text = Format(Rfoot_Width, "####.##") End If End If ScaleDraw.ScaleWidth = 2 * Rfoot Width ScaleDraw.ScaleHeight = 2* RfootWidth *7/9 ScaleDraw.ScaleTop = -(14 * Rfoot Width / 18) ScaleDraw.ScaleLeft = -1 * Rfoot Width DRFooting.Height = RfootWidth DRFooting. Width = RfootWidth DR_Column.Height = Colunui_Thick.Text /12 DRColumn. Width = Column_Thick.Text /12 DR Footing.Top = -1 * Rfoot Width / 2 DR Footing.Left = -1 * Rfoot Width / 2 DR_Column.Top = -1 * Column_Thick.Text / 24 129 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. DR_Column.Left = -1 * Column_Thick.Text / 24 'Drawing the plan view of footing and column in Tab3 Scaledraw2.Scale Width = 1.2 * RfootW idth * 12 Scaledraw2.ScaleHeight = 1.2 * Rfoot Width * 12 Scaledraw2.ScaleTop = -0.6 * Rfoot_Width * 12 Scaledraw2.ScaleLeft = -0.6 * Rfoot_Width * 12 DR_Footing2.Height = Rfoot Width * 12 DR_Footing2.Width = Rfoot_Width * 12 DR_Column2.Height = Column_Thick.Text DR_Column2. Width = Column_Thick.Text DR_Footing2.Top = -1 * Rfoot_Width *12/2 DR_Footing2.Left = -1 * Rfoot_Width *12/2 DR_Column2.Top = -1 * Column_Thick.Text / 2 DR_Column2.Left = -1 * Column_Thick.Text / 2 Result_TK.Text = Foot_Thick.Text End Sub Private Sub Foot_Thick_LostFocus() ' wamning massage for zero thickness footing If Foot_Thick.Text = "0" Then MsgBox "Footing Thickness must be bigger than ’ 0"' End If End Sub Private Sub load_assist_Click() MsgBox "Do NOT input Factored Load." + vbCrLf + "This value will be calculated internally.”, vblnformation, "Information" End Sub Private Sub Main Quantity Change() ResultQuantity.Text = MainQuantity.Text Resultquantityl.Text = MainQuantity.Text End Sub Private Sub Material_assist_Click() MsgBox " Typical Steel strength = 60000 psi " + vbCrLf + " Typical Cone. Strength = 4000 or 3000 psi ”, vblnformation, "Typical Material Strength” End Sub Private Sub RC_Icon_Click() PIC_ALL. Visible = False PICClear. Visible = True PICDetail.Visible = False End Sub Private Sub ReturnSteel_Click() FootTab.Tab = 2 End Sub Private Sub RetumThick_Click() Foot_Tab.Tab = 1 End Sub Private Sub RetumWidth_Click() FootTab.Tab =1 130 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End Sub Private Sub Shape_Icon_Click() PICALL. Visible = True PIC_Clear. Visible = False PIC_Detail.Visib!e = False End Sub Private Sub Size_Assist_Click() MsgBox "This table provides Possible Footing Sizes to resist Punching and Beam shear.", vblnformation, "Information" End Sub Private Sub Soil_assist_Click() MsgBox "This program does NOT use Ultimate Soil Pressure for footing design" + vbCrLf + "" + vbCrLf + "Typical Allowable Soil Pressure" + vbCrLf + " Poor soil : 1500psf + vbCrLf + " Regular soil :2000psf +vbCrLf+ " Good soil : 3000 - 5000psf\ vblnformation, "Information" End Sub Private Sub step_01_Click() Factor_Load.Text = (1.4 • Foot DL.Text) + (1.7 * Foot LL.Text) Foot_List.Cls FootTk = Val(UnderDepth_Foot.Text) - 0.5 'Compute the possible footing size (DO-LOOP procedure) Do 'footing selfweight Ft Sw = 0.15 * Foot_Tk 'the weight of earth on the top of footing SoilWt = Wt_Earth.Text * (Val(UnderDepth_Foot.Text) - Foot_Tk) /1000 'the effective allowable soil pressure Esoil Pres = (Soil Pres.Text / 1000) - Ft Sw - Soil Wt 'footing area Rfoot Size = (Val(Foot_DL.Text) + Val(Foot_LL.Text)) / Esoil_Pres 'one side length Rfoot_ Width = Sqr(Rfoot_Size) 'Rutine to make constructable footing width (ex. 8'-6” or 9") If Rfoot Width > Fix(Rfoot_Width) + 0.5 Then RfootWidth = Round( RfootW idth) Else RfootWidth = Fix(Rfoot_Width) + 0.5 End If 'Comfirmed footing area Rfoot Size = (Rfoot Width) A 2 Tu factored soil pressure from superimposed loads P_Ultimate = Val(Factor_Load.Text) / RfootSize *Effective thickness EDepth = (FootTk * 12) - 4 'check two-way shear Total factored shear acting on the critical section for two-way shear Factored Shear = P Ultimate * (Rfoot Size - (((Val(Column_Thick.Text) + E Depth) / 12) A 2)) The shear strength of concrete one of smallest shears Conc_Shearl = (2 + 4) * (Sqr(Val(Conc_type.Text))) * (Val(Column_Thick.Text) + E Depth) * 4 * E Depth Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Conc_Shear2 = ((40 * E Depth) / ((Val(Column_Thick.Text) + E_Depth) * 4) + 2) * (Sqr(Val(Conc_type.Text))) * (Val(Column_Thick.Text) + E_Depth) * 4 * E_Depth Conc_Shear3 = (4) * (Sqr(Val(Conc_type.Text))) * (Val(Column_Thick.Text) + E Depth) * 4 * E Depth ' Conc shearl is changed by ratio of footing size ' in case of square footing, conc_shearl is always bigger than conc_shear3 ' so compare conc_shear2 and conc_shear3 only If Conc_Shear2 > Conc_Shear3 Then Conc_Shear = 0.85 * Conc_Shear3 /1000 Else Conc_Shear = 0.85 * Conc_Shear2 / 1000 End If 'One-way shear check Total factored shear for one-way critical section Onefactored_Shear = PUltimate * RfootWidth * (((RfootWidth (Val(CoIumn_Thick.Text) /12) - (2 * E Depth /12))) / 2) The concrete shear strength multiplied with reduction factor 0.85 Oneconc_Shear = 0.85 * ((2) * (Sqr(Val(ConcJype.Text))) * Rfoot_Width * 12 * E_Depth) /1000 ' Compare Factored shear and Concrete shear ' ONLY in case ConcShear > Factored Shear and oneconc_shear> onefactoredshear (OK) If Conc Shear > Factored Shear Then If Oneconc_Shear > Onefactored shear Then Foot_List.Print Foot Tk, Format(Rfoot_Width, "####.##") FootThjck.Text = FootTk WD TXT.Text = Format(Rfoot_Width, "####.##") Debug.Print Format(Rfoot_Width, "####.##") End If End If Foot Tk = Foot Tk - 0.5 Loop Until Foot Tk < 1 Drawing the plan view of footing and column ScaleDraw.ScaleWidth = 2* Rfoot Width ScaleDraw.ScaleHeight = 2 * Rfoot Width *7/9 ScaleDraw.ScaleTop = -(14 * Rfoot Width /18) ScaleDraw.ScaleLeft = -1 * Rfoot Width DRFoo ting.Height = RfootWidth DRFoo ting. Width = RfootWidth DR_Column.Height = Column_Thick.Text / 12 DR_Column. Width = Column_Thick.Text / 12 DR Footing.Top = - I * Rfoot Width / 2 DRFoo ting.Left = -1 * RfootWidth / 2 DR_Column.Top = -1 * Column_Thick.Text / 24 DRColumn.Left = -1 * Column_Thick.Text / 24 Drawing the plan view of footing and column in Tab3 Scaledraw2.ScaleWidth = 1.2 * Rfoot Width * 12 Scaledraw2.ScaleHeight = 1.2 * Rfoot_Width * 12 Scaledraw2.ScaleTop = -0.6 * Rfoot Width * 12 Scaledraw2.ScaleLeft = -0.6 * Rfoot_Width * 12 DR_Footing2.Height = Rfoot_Width * 12 DR_Foodng2. Width = Rfoot_Width * 12 DR_Column2.Height = Column_Thick.Text DR_Column2.Width = Column_Thick.Text 132 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. DR_Footing2.Top = -1 * Rfoot Width *12/2 DR_Footing2.Left = -1 * Rfoot_Width *12/2 DR_Column2.Top = -1 * Column_Thick.Text / 2 DR_Column2.Left = -1 * Column_Thick.Text / 2 Drawing the plan view of footing and column in Tab5 Scaledraw3.Scale Width = RfootWidth * 12 Scaledraw3.ScaleHeight = Rfoot Width * 12 Scaledraw3.ScaleTop = -0.5 • Rfoot Width * 12 Scaledraw3.ScaleLeft = -0.5 * Rfoot_Width * 12 DR_Column2.Height = Column_Thick.Text DR_Column2. Width = Column_Thick.Text DRColumn2.Top = -1 * Column_Thick.Text / 2 DR_Column2.Left = -1 * Column_Thick.Text / 2 Foot_Tab.Tab = 1 End Sub Private Sub Step_02_Click() 'Compute the design moment MDesign = P_Ultimate * (Val(WD_TXT.Text)) * ((((Val(WD_TXT.Text) - Val(Column_Thick.Text /12)) / 2)A 2) / 2) DesignMO.Text = Round(M_Design) 'Compute Coefficient of Resistance K_Bar = (M_Design * 12) / (0.9 * (Val(WD_TXT.Text) * 12) * ((Val(Foot_Thick.Text) * 12 - 4) A 2)) 'Compute the required steel ratio Steel_R = (Val(Steel_type.Text) - Sqr((Steel_type.TextA 2) - (2.352 * (Steel type.TextA 2) * (K_Bar * 1000) / Conc_type.Text))) / (1.176 * (Steel type.TextA 2) / Val(Conc type.Text)) 'Compute the required steel area - fix( *100)/100 syntax Req_Steel.Text = Fix((Steel_R * (Val(WD_TXT.Text) * 12) * (Val(Foot_Thick.Text) * 12 - 4)) * 100)/100 'Compute the minimum steel ratio If 3 * Sqr(Conc_type.Text) >= 200 Then Steel_Rmin = (3 * Sqr(Conc_type.Text) / Steel_type.Text) Else SteelRmin = (200 / Steeltype.Text) End If 'Compute the minimum steel area - fix( *100)/100 syntax Min_Steel.Text = Fix((Steel_Rmin * (Val(WD_TXT.Text) * 12) * (Val(Foot_Thick.Text) * 12 - 4)) * 100)/100 'Compute the temperature steel area - fix( *100)/100 syntax Temp Steel.Text = Fix((0.0018 * (Val(WD_TXT.Text) * 12) * (Val(Foot_Thick.Text) * 12 - 4)) * 100)/100 Decide the design steel area. If VaI(Req_Steel.Text) > Val(Min_Steel.Text) Then Req_steeIl.Text = Val(Req_Steel.Text) Else Req_steell.Text = Val(MinSteel.Text) 123 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End If Foot_Tab.Tab = 2 End Sub Private Sub Step_03_Click() 'the bars are not top bars Alpha = 1 The bars are uncoated - black steel Beta = 1 If Mainbar Size < 0.44 Then Delta = 0.8 Else Delta = 1 End If ’ Normal weight concrete Gamma = 1 Determine C value If (3 + SteelDia / 2) > (Val(WD_TXT.Text) * 12 - (2 * (3 + SteelDia / 2)) / 24) Then C_Factor = (Val(WD_TXT.Text) * 12 - (2 * (3 + SteelDia / 2)) / 24) Else CFactor = (3 + SteelDia / 2) End If 'Check (c+Ktr)/db<=2.5 If (C_Factor / SteelDia) > 2.5 Then C_db = 2.5 Else C_db = (C_Factor / SteelDia) End If 'Compute the excess reinforcement factor K_ER = Val(Req_steell.Text) / (Mainbar Size * Main Quantity) Developement Length L Develope = ((3 * Steel type.Text) / (40 * Sqr(Conc_type.Text))) * ((Alpha * Beta * Gamma * Delta) / (C_db)) • (SteelDia) * K_ER R_D_Length.Text = Fix(L_Develope * 100) / 100 P_D_Length.Text = ((Val(WD_TXT.Text) * 12 - Val(ColumnThick.Text)) / 2 - 3) P_D_Lengthl.Text = P_D_Length.Text If R_D_Length.Text > P_D_Length.Text Then BadDevelope.Visible = True Good_Develope.Visible = False Else BadDevelope.Visible = False GoodDevelope.Visible = True End If FootTab.Tab = 3 End Sub Private Sub Step_04_Click() FootTab.Tab = 4 134 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. End Sub Private Sub UnderDepth_Foot_Change() If UnderDepth_Foot.Text > 19 Then MsgBox "Depth is too deep!" UnderDepth_Foot.SeIStart = 0 UnderDepthFoot.SelLength = 5 End If End Sub Private Sub WD TXT Changef) ' for prevent type mismatch error by null inputing IfWDTXT.Text = "" Then WDTXT.Text = Rfoot_Width WDTXT.SelStart = 0 WDTXT.SelLength = 5 End If Rfoot_Width = Val(WD_TXT.Text) ScaleDraw.ScaleWidth = 2 * Rfoot Width ScaleDraw.ScaleHeight = 2 * Rfoot Width *7/9 ScaleDraw.ScaleTop = -(14 * Rfoot Width / 18) ScaleDraw.ScaleLeft = -1 * Rfoot Width DRFoo ting.Height = RfootWidth DRFoo ting. Width = RfootWidth DR_Column.Height = CoIumn_Thick.Text /12 DRColumn. Width = Column_Thick.Text /12 DR_Footing.Top = -1 * Rfoot Width / 2 DR_Footing.Lefi = -1 * Rfoot_Width / 2 DR_Column.Top = -1 • Column_Thick.Text / 24 DR_Column.Left = -1 * Column_Thick.Text / 24 Drawing the plan view of footing and column in Tab3 Scaledraw2.ScaleWidth = 1.2 * Rfoot Width * 12 Scaledraw2.ScaleHeight = 1.2 * Rfoot Width * 12 Scaledraw2.ScaleTop = -0.6 * Rfoot Width * 12 Scaledraw2.ScaleLeft = -0.6 * Rfoot Width * 12 DR_Footing2.Height = Rfoot_Width * 12 DR_Footing2.Width = Rfoot Width * 12 DR_Column2.Height = ColumnThick.Text DR_Column2. Width = Column_Thick.Text DR_Footing2.Top = -1 * Rfoot_Width *12/2 DR_Footing2.Left = -1 * Rfoot_Width *12/2 DR_Column2.Top = -1 * Column_Thick.Text / 2 DR_Column2.Left = -1 * Coiumn_Thick.Text / 2 ResultDiml.Text = WDTXT.Text Result_Dim2.Text = WDTXT.Text End Sub 135 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 6. Wall Footing Module ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' Reinforced Concrete Structure Designer (RCSD) ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' WALL FOOTING MODULE ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ' University of Southern California, School of Architecture, Master o f Building Science ' Copyright 2002 by the University of Southern California and Kang-Kyu Choi ' All right reserved ' Contact Author: Kang-Kyu Choi < hvdrofall@hotmail.com > ' RCSD is a reinforced concrete structure design assistant tool for learner. ' < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < Option Explicit Dim Ft Sw, Soil Wt, Esoil_Pres, Rsoil Pres, Rfoot Width, Foot Tk, spacing, CaseBarl As Double Dim E Depth, V Ultimate, V_C, DSoil_Pres, M Ultimate, K Bar, SteelR, Mainbar Size, Tempbar_Size, Max Spacing As Double Dim QuantityBar, Alpha, Beta, Delta, Gamma, C_Factor, C_db, Casebar, L_Develope As Double Private Sub Draw_update_Click() ScaleDraw.ScaleWidth = 2* Rfoot Width ScaleDraw.ScaleHeight = 2* RfootW idth *7/9 ScaleDraw.ScaleTop = -(14 * Rfoot Width / 36) ScaleDraw.ScaleLeft = -1 * Rfoot Width Gline.Yl =0 G_line.Y2 = 0 WallLine.Yl = (UnderDepth_Foot.Text - Foot_Thick.Text) Wall_Line.BorderWidth = RfootWidth DR_Footing.Height = Foot_Thick.Text DRFoo ting. Width = RfootWidth DR_Footing.Top = (UnderDepth_Foot.Text - Foot_Thick.Text) DR_Footing.Lef) = -(RfootWidth / 2) End Sub Private Sub baraum_Click() Casebar = Bamum.ListIndex Select Case Casebar CaseO: MainbarSize = 0.11 Case 1 : MainbarSize = 0.2 Case 2: MainbarSize = 0.31 Case 3: MainbarSize = 0.44 Case 4: MainbarSize = 0.6 Case 5: MainbarSize = 0.79 Case 6: MainbarSize = 1 Case 7: MainbarSize = 1.27 Case 8: , Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. M ainbarSize = 1.56 Case 9: MainbarSize = 2.25 Case 10: MainbarSize = 4 End Select Main_Spacing.Text = Fix(Fix(Mainbar_Size * 100 / Val(Req_Steel.Text)) * 12 /100) Tor Max Spacing consideration 'Max Spacing = Mainbar Size • Steeljype.Text / (50 * WD TXT.Text) Main_steeltype.Text = Barnum.Text MainSpacingl .Text = MainSpacing.Text If MainSpacing < 6 Then MsgBox (" Steel spacing is too dense. Choose bigger steel!") End If End Sub Private Sub BarNuml _click() Case Bari = BarNuml .Listlndex Select Case CaseBarl Case 0: Tempbar_Size = 0.11 Case 1: TempbarSize = 0.2 Case 2: TempbarSize = 0.31 Case 3: TempbarSize = 0.44 Case 4: TempbarSize = 0.6 Case 5: TempbarSize = 0.79 Case 6: TempbarSize = 1 Case 7: TempbarSize = 1.27 Case 8: TempbarSize = 1.56 Case 9: TempbarSize = 2.25 Case 10: TempbarSize = 4 End Select Quantity Bar = Val(Temp_Steel.Text) * Val(WD TXT.Text) / Tempbar Size QuantityTEMPBar.Text = Round(QuantityBar) QuantityTEMPBarl.Text = QuantityTEMPBar.Text If Val(Quantity_TEMPBar.Text) < 4 Then MsgBox ("Choose smaller steel size!") End If Temp_steeltype.Text = BarNuml.Text End Sub Private Sub Cutted_Icon_Click() Mainbarfooting.Visible = False Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Tempbar_footing. Visible = False Cuttedfooting. Visible = True Size_Footing.Visible = False End Sub Private Sub Foot Thick Change() ' for prevent type mismatch error by null inputing If FootThiclcText = "" Then FootThick-Text = 0 FootThick.SelStart = 0 FootThick.SelLength = 5 End If If Val(Foot_Thick.Text) > Val(UnderDepth_Foot.Text) Then Foot_Thick.Text = Val(UnderDepth_Foot.Text) FootThick.SelStart = 0 FootThick.SelLength = 5 End If Ft Sw = 0.15 * Foot_Thick.Text Soil Wt = Wt_Earth.Text * (UnderDepth_Foot.Text - Foot_Thick.Text) /1000 EsoilPres = (Soil_Pres.Text / 1000) - Ft_Sw - Soil_Wt RsoilPres = (Factor_Load.Text * Esoil Pres) / (Val(FootDL.Text) + Val(Foot_LL.Text)) Rfoot_Width = Factor_Load.Text / RsoilPres ScaleDraw.ScaleWidth = 2 * Rfoot_Width ScaleDraw.ScaleHeight = 2 * Rfoot_Width *7/9 ScaleDraw.ScaleTop = -(14 * Rfoot Width / 36) ScaleDraw.ScaleLefl =-1 * Rfoot_Width Gline.Yl =0 G_line.Y2 = 0 Wall_Line.Yl = (UnderDepth_Foot.Text - Foot_Thick.Text) Wall_Line.BorderWidth = 10 DR_Footing.Height = Foot_Thick.Text DRFoo ting. Width = RfootWidth DRFooting.Top = (UnderDepth_Foot.Text - Foot_Thick.Text) DRFoo ting.Left = -(RfootWidth / 2) TK TXT.Text = Format(Foot_Thick.Text, "###.##") WDTXT.Text = Format(Rfoot_Width, //////. //// ) End^ub Private Sub Foot_Thick_LostFocus() ' wamning massage for zero thickness footing If Foot_Thick.Text = "0" Then MsgBox "Footing Thickness must be bigger than '0'" End If End Sub Private Sub load_assist_Click() MsgBox "Do NOT input Factored Load." + vbCrLf + "This value will be calculated internally.", vblnformation, "Information" End Sub Private Sub Mainbar_icon_Click() Mainbar_footing.Visible = True 138 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Tempbarfooting.Visible = False Cuttedfooting. Visible = False Size_Footing. Visible = False End Sub Private Sub Material_assist_Click() MsgBox " Typical Steel strength = 60000 psi" + vbCrLf + ” Typical Cone. Strength = 4000 or 3000 psi", vblnformation, "Typical Material Strength" End Sub Private Sub RetumSteel_Click() FootTab.Tab = 2 End Sub Private Sub RetumThick_Click() Foot_Tab.Tab = 1 End Sub Private Sub RetumWidth_Click() FootTab.Tab = 1 End Sub Private Sub Size_Icon_Click() Mainbarfooting. Visible = False Tempbar_footing.Visible = False Cuttedfooting.Visible = False SizeFooting. Visible = True End Sub Private Sub Soil_assist_Click() MsgBox "This program does NOT use Ultimate Soil Pressure for footing design" + vbCrLf + "" + vbCrLf + "Typical Allowable Soil Pressure" + vbCrLf + " Poor soil : 1500psf' + vbCrLf + " Regular soil: 2000psf" + vbCrLf + " Good soil : 3000 - 5000psf\ vblnformation, "Information" End Sub Private Sub step_01_Click() Factor_Load.Text = (1.4 * Foot_DL.Text) + (1.7 * Foot LL.Text) Foot_List.Cls FootTk = 1 Do FtSw = 0.15 * Foot Tk SoilWt = Wt_Earth.Text * (Val(UnderDepth_Foot.Text) - Foot Tk) /1000 Esoil Pres = (Soil_Pres.Text / 1000) - Ft Sw - Soil_Wt Rsoil Pres = (Factor_Load.Text * Esoil Pres) / (Val(Foot DL.Text) + Val(Foot LL.Text)) Rfoot_Width = Factor_Load.Text / RsoilPres Foot List.Print Foot Tk, Format(Rfoot Width, "####.##") spacing = 0.5 If UnderDepth_Foot.Text> 15 Then spacing = 1 End If FootTk = FootTk + spacing Loop Until Foot Tk > Val(UnderDepth_Foot.Text) - 0.5 Or Rfoot Width < 0 Ft_Sw = 0.15 SoilWt = Wt_Earth.Text * (UnderDepth_Foot.Text - 1)/1000 139 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Esoil Pres = (Soil_Pres.Text / 1000) - Ft Sw - Soil Wt Rsoil_Pres = (Factor_Load.Text * Esoil Pres) / (Val(FootDL.Text) + Val(Foot_LL.Text)) RfootWidth = Factor_Load.Text / RsoilPres ScaleDraw.ScaleWidth = 2 * Rfoot_Width ScaleDraw.ScaleHeight = 2 * Rfoot Width *7/9 ScaleDraw.ScaleTop = -(14 * Rfoot_Width / 36) ScaleDraw.ScaleLeft = -1 * Rfoot Width GJine.Yl =0 G_line.Y2 = 0 WallLine.Yl = (UnderDepth_Foot.Text - Foot_Thick.Text) Wall_Line.BorderWidth = 10 DR_Footing.Height = Foot_Thick.Text DRFoo ting. Width = Rfoot_Width DR_Footing.Top = (UnderDepth_Foot.Text - Foot_Thick.Text) DRFoo ting.Left = -(RfootWidth / 2) TKTXT.Text = Format(Foot Thick.Text, "###.##") WD_TXT.Text = Format(Rfoot_Width, "###.##") FootTab.Tab = 1 End Sub Private Sub Step_02_Click() E_Depth = (TK TXT.Text * 12) - 3.5 DSoil_Pres = Factor_Load.Text / RfootWidth V Ultunate = (((WD_TXT.Text * 12) - Wall_Thick.Text - (2 * E_Depth)) / 24) * DSoil_Pres V_C = 0.85 * 2 * Sqr(Conc_type.Text) * 12 * E_Depth /1000 Vu.Text = Format(V_Ultiniate, "###.##") oVc.Text = Format(V_C, ”###.##”) If V_Ultiniate > V C Then ShearJurge.Caption = "NOT GOOD. Change the footing thickness" ShearJurge.ForeColor = &HFF& ShearBad.Visible = True ShearOK. Visible = False ShearTXT.Caption = "Shear Strength on the critical section is Greater than the shear strength of concrete. Shear Reinforcement is required" RetumThick-Visible = True Else ShearJurge.Caption = "GOOD" ShearJurge.ForeColor = &HFF0000 ShearBad.Visible = False ShearOK.Visible = True ShearTXT.Caption = " Shear Strength on the critical section is Less than the shear strength of concrete. No shear reinforcment is required" ReturnThick.Visible = False End If M_Ultiinate = (DSoil Pres / 2) * (((Rfoot Width - (Wall_Thick / 24)) / 2)A 2) KBar = (M_Ultimate * 12) / (0.9 * 12 * (E_Depth A 2)) Steel_R = (Val(Steel_type.Text) - Sqr((Steel_type.Text A 2) - (2.352 * (Steel type.TextA 2) * (K Bar * 1000) / Conc_type.Text))) / (1.176 * (Steel type.TextA 2) / Val(Conc type.Text)) If V Ultimate <= V C Then If 3 * Sqr(Conc_type.Text) >= 200 Then MinSteei.Text = Fix(((3 * Sqr(Conc_type.Text) * 12 * E_Depth) / Steel_type.Text) * 100) /100 Else 140 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Min_Steel.Text = Fix((200 * 12 * E Depth / Steel_type.Text) * 100) /100 End If Req_Steel.Text = Fix((Steel_R * 12 * E_Depth) * 100) /100 If Val(Req_Steel.Text) > Val(MinSteel.Text) Then Req_steell.Text = Req_Steel.Text Else Req_steell.Text = Val(MinSteel.Text) End If Temp_Steel.Text = Fix((0.0018 • 12 * Foot_Thick.Text * 12) * 100) /100 TempSteell.Text = TempSteeI.Text End If FootTab.Tab = 2 End Sub Private Sub Step_03_Click() Alpha = 1 '(the bars are not top bars) Beta = 1 '(The bars are uncoated • black steel) If Mainbar Size < 0.44 Then Delta = 0.8 Else Delta = 1 End If Gamma = 1 '(Normal weight concrete) Determine C value If (3 + Sqr(Mainbar_Size / 3.14)) > Val(Main_Spacing.Text) / 2 Then CFactor = Val(Main_Spacing.Text) / 2 Else CFactor = (3 + Sqr(Mainbar_Size / 3.14)) End If If C Factor / (2 * Sqr(MainbarSize / 3.14)) > 2.5 Then C_db = 2.5 Else C_db = C_Factor / (2* Sqr(Mainbar_Size / 3.14)) End If Developement Length L Develope = ((3 * Steel_type.Text) / (40 * Sqr(Conc_type.Text))) * ((Alpha * Beta * Gamma * Delta) / (C_db)) * (2 * Sqr(Mainbar_Size / 3.14)) * ((Fix((Steel_R * 12 * E_Depth) * 100) / 100) / (Mainbar Size * 12 / Main Spacing.Text)) R_D_Length.Text = Fix(L_Develope * 100) /100 P_D_Length.Text = ((Val(WD_TXT.Text) • 12 - Val(Wall_Thick.Text)) / 2 - 3) P_D_Lengthl.Text = P_D_Length.Text If R_D_Length.Text > P_D_Length.Text Then Bad_Develope.Visible = True GoodDevelope. Visible = False 141 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Else Bad_DeveIope. Visible = False Good_Develope.Visible = True End If FootTab.Tab = 3 End Sub Private Sub Step_04_Click() FootTab.Tab = 4 End Sub Private Sub Tempbar_Icon_Click() Mainbarfoo ting. Visible = False Tempbarfoo ting. Visible = True Cuttedfooting. Visible = False SizeFooting-Visible = False End Sub Private Sub TKTXTChangef) TKTXTl.Text = TKTXT.Text End Sub Private Sub UnderDepth_Foot_Change() If UnderDepth_Foot.Text > 19 Then MsgBox "Depth is too deep!” UnderDepth_Foot.SelStart = 0 UnderDepthFoot.SelLength = 5 End If End Sub Private Sub WD TXT Change() WDTXT1 .Text = WDTXT.Text End Sub Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Linked assets
University of Southern California Dissertations and Theses
Conceptually similar
PDF
Thermbuilder: A Web-based teaching tool to study thermal processes in buildings
PDF
Lateral design analysis: Web application. Design for wind and seismic forces in buildings
PDF
Wind design of fabric structures: Determination of gust factors for fabric structures
PDF
VRSolar: An exploration in Web based interactive architectural teaching
PDF
Online portfolio repository for students of architecture
PDF
Catalyst: A computer-aided teaching tool for stayed and suspended systems
PDF
SolCAD: Three-dimensional spatial design tool to generate solar envelope
PDF
Sustainable building materials adviser: A Web-based tool for architects
PDF
Lateral force design (LFD) software for wind and seismic loads per IBC 2003 and ASCE 7-02
PDF
Seismic design tool: Interactive Web-based program based on IBC 2000
PDF
Lighting design assessment tool for an elderly living environment
PDF
WebArc: Control and monitoring of building systems over the Web
PDF
Bayesian estimation using Markov chain Monte Carlo methods in pharmacokinetic system analysis
PDF
Determine the optimum block type for use in Saudi Arabia
PDF
Interactive C++ program to generate plank system lines for timber rib shell structures
PDF
Mahoney Tables plus a tool for sketch design recommendations for a building
PDF
Hebel design analysis program
PDF
Bracing systems for tall buildings: A comparative study
PDF
Computer aided design and manufacture of membrane structures Fab-CAD
PDF
Vaastu-Shilpa Shastra
Asset Metadata
Creator
Choi, Kang-Kyu
(author)
Core Title
Reinforced concrete structure design assistant tool for beginners
Degree
Master of Building Science / Master in Biomedical Sciences
Degree Program
Building Science
Publisher
University of Southern California
(original),
University of Southern California. Libraries
(digital)
Tag
Architecture,education, technology of,engineering, civil,OAI-PMH Harvest
Language
English
Contributor
Digitized by ProQuest
(provenance)
Permanent Link (DOI)
https://doi.org/10.25549/usctheses-c16-293851
Unique identifier
UC11337883
Identifier
1411778.pdf (filename),usctheses-c16-293851 (legacy record id)
Legacy Identifier
1411778.pdf
Dmrecord
293851
Document Type
Thesis
Rights
Choi, Kang-Kyu
Type
texts
Source
University of Southern California
(contributing entity),
University of Southern California Dissertations and Theses
(collection)
Access Conditions
The author retains rights to his/her dissertation, thesis or other graduate work according to U.S. copyright law. Electronic access is being provided by the USC Libraries in agreement with the au...
Repository Name
University of Southern California Digital Library
Repository Location
USC Digital Library, University of Southern California, University Park Campus, Los Angeles, California 90089, USA
Tags
education, technology of
engineering, civil