0% found this document useful (0 votes)
3 views7 pages

Chapter Four

The RC Column Designer is a web-based tool for designing reinforced concrete columns according to ACI 318-19, supporting various configurations and loading conditions. It automates calculations through a detailed workflow that includes slenderness checks, biaxial transformations, and capacity checks, all performed client-side without server dependency. The tool generates comprehensive output, including interaction diagrams, calculation logs, and bar layouts, ensuring compliance with design standards.

Uploaded by

mohammeda.civ23
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views7 pages

Chapter Four

The RC Column Designer is a web-based tool for designing reinforced concrete columns according to ACI 318-19, supporting various configurations and loading conditions. It automates calculations through a detailed workflow that includes slenderness checks, biaxial transformations, and capacity checks, all performed client-side without server dependency. The tool generates comprehensive output, including interaction diagrams, calculation logs, and bar layouts, ensuring compliance with design standards.

Uploaded by

mohammeda.civ23
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

CHAPTER FOUR

DEVELOPED PROGRAMMING TOOLS


4.1 Column tool Prototype:
4.1.1 Overview
The RC Column Designer is a web-based engineering tool that automates the design of
reinforced concrete columns per ACI 318-19. It handles:
•Rectangular and circular columns
•Uniaxial and biaxial bending
•Slender column effects (sway and non-sway)
•Tied and spiral transverse reinforcement
•Bresler reciprocal / load contour biaxial capacity checks
The entire application is a single self-contained HTML file (~1750 lines) with
embedded CSS and JavaScript. All computation runs client-side in the browser with no
server dependency.

Scan to use the tool!


Last update:2026/6/03
4.1.2 General Workflow:
USER INPUTS
Geometry │ Materials │ Loads │
Slenderness │ Biaxial Moments

STEP 1a: X-Axis Slenderness


STEP 1b: Y-Axis Slenderness
• Compute r_x, kLu/r_x
• Same process as Step 1a but about Y-axis
• Determine slenderness limit (22 or 34−12M1/M2)
• For circular columns: skip (only one axis)
• If slender: compute δns (non-sway) or δns+δs (sway)
• Compute Mc_y = magnified moment
• Compute Mc_x = magnified moment

STEP 2: Biaxial Transformation


• Detect uniaxial vs biaxial loading
• If biaxial: ACI Simplified Method
- Compute Mny/Mnx vs b/h to determine governing axis
- Compute equivalent Mno using β = 0.65
- Mu_eq = Mno × 0.65
- Set governsY flag (swaps b and h for ρ loop)

STEP 3: Minimum Eccentricity & ρ Loop


• e_min = 15 + 0.03 × dim_me
• Mu_min = Pu × e_min / 1000
• Mu_design = max(|Mu_eq|, Mu_min)
• ITERATIVE LOOP: ρ from 1% to 8% (step 0.2%)
- For each ρ: build interaction curve, check capacity
- If DCR ≤ 1.0 on both axial and moment → ACCEPT
• Final: ρ, As, N bars

STEP 4: Bresler & Capacity Check


• If uniaxial: skip (DCR from capacity check)
• If biaxial:
- Build X-axis and Y-axis interaction curves (swapped dims)
- Compute Mux_design = max(|Mu1x|,|Mu2x|)
- Compute Muy_design = max(|Mu1y|,|Mu2y|)
- Reciprocal method (Pn ≥ 0.1fcAg):
• ΦPox at ΦMnx from X-axis curve → Pox = ΦPox/Φ
• ΦPoy at ΦMny from Y-axis curve → Poy = ΦPoy/Φ
• Pn_est = 1/(1/Pox + 1/Poy − 1/Po)
• DCR = Pn / Pn_est
- Contour method (Pn < 0.1fcAg):
• Mox at Pn from X-axis curve
• Moy at Pn from Y-axis curve
• DCR = Mnx/Mox + Mny/Moy

STEP 5: Bar Layout


• Check bar spacing, fit, minimum spacing requirements
• Warning if spacing < db or < min spacing

STEP 6: Transverse Reinforcement


• For spirals: compute ρs_min, pitch, min/max pitch
• For ties: compute s_max = min(16db, 48dtie, dim_least)
• Check face bar spacing ≤ 150mm → crossties required

OUTPUT DISPLAY
• Summary grid (ρ, As, bar layout, transverse, Mu_design)
• Step-by-step calculation log with KaTeX rendering
• Section SVG drawing with bar layout
• P-M interaction diagram on canvas
• PASS / FAIL badge
4.1.3 Detailed Algorithm Description:
[Link] Interaction Curve Generation:
The interaction curve is the foundation of all capacity checks. It is generated by
sweeping the neutral axis depth c from pure compression (c = 5 × dim) to pure tension
(c ≈ 0) in 300 logarithmic steps.

For each c value:


[Link] distribution: Linear strain profile across section, maximum concrete strain
εcu = 0.003 at extreme compression fiber
[Link] strains: Compute strain at each bar location by similar triangles
[Link] force: Rectangular stress block per ACI 318 — a = β₁ × c, concrete
compression = 0.85 × f'c × a × b
[Link] forces: Each bar: fs = εs × Es ≤ fy, force = fs × Ab
[Link]: Pn = Σ(concrete forces) + Σ(steel forces), Mn = Σ(moments about
centroid)
6.φ factor: Pure compression (φ = 0.65/0.75) → tension-controlled (φ = 0.90) with
linear transition in the spiral region
[Link] point: Pure tension point appended: Pn = Ast × fy, Mn = 0, φ = 0.90 The
curve stores nominal values {Pn, Mn} and the associated φ for each point. Factored
values {φPn, φMn} are computed on demand.

[Link] Slenderness (Steps 1a/1b)


For each axis (X and Y):
•Radius of gyration: r = 0.3h (rectangular) or r = 0.25D (circular)

•Slenderness limit: If kLu/r < 22 → short column, Mc = M2 (no magnification). If


kLu/r ≥ 22 → slender:

•Non-sway (δns): Cm = 0.6 + 0.4(M1/M2), EI = 0.4×Ec×Ig/(1+βd), Pc =


π²×EI/(kLu)², δns = Cm/(1 − Pu/0.75Pc) ≥ 1.0

•Sway (δs): Stability index Q method (if Q ≤ 1.5), else ΣPu/ΣPc method, else manual
input. Mc = |M2| + δs × M2s

•Sway + non-sway combined: For sway columns that are also slender in non-sway:
Mc = δns × (|M2| + δs × M2s)
[Link] Biaxial Transformation — ACI Simplified Method (Step 2)
When both X and Y moments exist, the ACI simplified method reduces the biaxial
problem to an equivalent uniaxial moment:
[Link] Mny/Mnx to b/h
[Link] Mny/Mnx > b/h: Y-axis governs, Mno = Mny + Mnx × (b/h) × ((1−β)/β)
[Link] Mny/Mnx ≤ b/h: X-axis governs, Mno = Mnx + Mny × (h/b) × ((1−β)/β)
4.β = 0.65 per ACI 318
5.Mu_eq = Mno × 0.65

3.4 ρ Loop (Step 3)


The reinforcement ratio ρ is found iteratively:
•Start with ρ = 1% (minimum per ACI 318)
•For each ρ:
•Compute N = ceil(ρ × Ag / Ab), enforce even number for rectangular, min bars per
code
•Build interaction curve with current N and ρ
•Check capacity at (Pu, Mu_design)
•If both DCR ≤ 1.0 → accept and break
•Otherwise increment ρ by 0.002 (0.2%)
•Maximum ρ = 8% per ACI 318 (if exceeded, flag rhoLoopFailedMax)
The governing axis flag governsY from Step 2 swaps b and h dimensions in the
interaction curve builder, so the rho loop always checks against the correct orientation.
3.5 Bresler Biaxial Check (Step 6)
Two independent interaction curves are built: - curveX: bending about X-axis (b × h
section) - curveY: bending about Y-axis (h × b section, swapped dimensions)
•Reciprocal Load Method (when Pn ≥ 0.1 × f'c × Ag):
Enter X-axis curve with ΦMnx → read ΦPox → Pox = ΦPox / φ
Enter Y-axis curve with ΦMny → read ΦPoy → Poy = ΦPoy / φ
Po = Pn0 (nominal pure compression capacity = 0.85fc(Ag−Ast) + fy×Ast)
Pn_est = 1 / (1/Pox + 1/Poy − 1/Po)
DCR = Pn / Pn_est (≤ 1.0 → PASS)
•Load Contour Method (when Pn < 0.1 × f'c × Ag):
Mox = find moment on X-axis curve at Pn
Moy = find moment on Y-axis curve at Pn
DCR = Mnx/Mox + Mny/Moy (≤ 1.0 → PASS)
4.1.4. Key Functions:

Function Location Purpose

buildInteractionCurve() — Generates 300-point P-M curve for given section and ρ

checkCapacity() — Interpolates φPn and φMn at applied (Pu, Mu), returns DCR

findMAtPn() — Finds moment capacity at target axial load on curve

findPhiPAtPhiM() — Finds factored axial capacity at target factored moment

Draws SVG column cross-section with bars, dims, centroid


drawSection() —
axes

drawInteractionDiagram() — Draws P-M interaction diagram on HTML5 Canvas

renderLatexLines() — Converts Unicode math text to KaTeX-rendered HTML

runCalc() — Main calculation engine orchestrating all 6 steps


4.2 Beam tool prototype :

You might also like