Use Pint and unit-free variable names in concrete-beam
Convert input parsing to Pint (matching the other calculations), carry units in the YAML values, and drop unit suffixes from input keys, local variables, results keys, the Typst sheet, and tests.
This commit is contained in:
parent
27a9cdd707
commit
8f91baee41
6 changed files with 176 additions and 165 deletions
|
|
@ -28,51 +28,51 @@ Simple-span rectangular beam under uniform gravity load. Numbers come from `calc
|
|||
polygon(fill: black, (0pt, 0pt), (8pt, 10pt), (-8pt, 10pt)),
|
||||
)
|
||||
#v(2pt)
|
||||
#text(size: 9pt)[#n.span_ft ft simple span · #n.bw_in in × #n.h_in in section]
|
||||
#text(size: 9pt)[#n.span ft simple span · #n.bw in × #n.h in section]
|
||||
]
|
||||
}
|
||||
|
||||
#figure(
|
||||
beam-sketch,
|
||||
caption: [#n.span_ft ft simply supported beam, #n.bw_in in × #n.h_in in rectangular section.],
|
||||
caption: [#n.span ft simply supported beam, #n.bw in × #n.h in rectangular section.],
|
||||
)
|
||||
|
||||
== Loads and Beam Demand
|
||||
|
||||
#calcline([$L = #n.span_ft " ft"$], [Simple span])
|
||||
#calcline([$B_t = #n.tributary_ft " ft"$], [Tributary width])
|
||||
#calcline([$D = #n.D_psf " psf"$], [Dead load including superimposed dead])
|
||||
#calcline([$L_L = #n.L_psf " psf"$], [Live load])
|
||||
#calcline([$w_("sw") = #round(n.self_weight_klf, digits: 3) " kip/ft"$], [Beam self-weight])
|
||||
#calcline([$L = #n.span " ft"$], [Simple span])
|
||||
#calcline([$B_t = #n.tributary " ft"$], [Tributary width])
|
||||
#calcline([$D = #n.D " psf"$], [Dead load including superimposed dead])
|
||||
#calcline([$L_L = #n.L " psf"$], [Live load])
|
||||
#calcline([$w_("sw") = #round(n.self_weight, digits: 3) " kip/ft"$], [Beam self-weight])
|
||||
#calcline(
|
||||
[$w_u = 1.2 w_D + 1.6 w_L = #round(n.wu_klf, digits: 3) " kip/ft"$],
|
||||
[$w_u = 1.2 w_D + 1.6 w_L = #round(n.wu, digits: 3) " kip/ft"$],
|
||||
[Factored uniform line load],
|
||||
)
|
||||
#calcline(
|
||||
[$M_u = w_u L^2 / 8 = #round(n.Mu_kipft) " kip·ft"$],
|
||||
[$M_u = w_u L^2 / 8 = #round(n.Mu) " kip·ft"$],
|
||||
[Maximum positive moment],
|
||||
)
|
||||
#calcline(
|
||||
[$V_u = w_u L / 2 = #round(n.Vu_kip) " kip"$],
|
||||
[$V_u = w_u L / 2 = #round(n.Vu) " kip"$],
|
||||
[Support shear],
|
||||
)
|
||||
|
||||
== Flexural Strength
|
||||
|
||||
#calcline([$b_w = #n.bw_in " in"$], [Beam width])
|
||||
#calcline([$h = #n.h_in " in"$], [Overall depth])
|
||||
#calcline([$d = #n.d_in " in"$], [Effective depth])
|
||||
#calcline([$f'_c = #n.fc_ksi " ksi"$], [Concrete compressive strength])
|
||||
#calcline([$f_y = #n.fy_ksi " ksi"$], [Steel yield strength])
|
||||
#calcline([$A_s = #n.As_in2 " in"^2$], [Provided tension steel (2 No. 5)])
|
||||
#calcline([$b_w = #n.bw " in"$], [Beam width])
|
||||
#calcline([$h = #n.h " in"$], [Overall depth])
|
||||
#calcline([$d = #n.d " in"$], [Effective depth])
|
||||
#calcline([$f'_c = #n.fc " ksi"$], [Concrete compressive strength])
|
||||
#calcline([$f_y = #n.fy " ksi"$], [Steel yield strength])
|
||||
#calcline([$A_s = #n.As " in"^2$], [Provided tension steel (2 No. 5)])
|
||||
#calcline(
|
||||
[$a = A_s f_y / (0.85 f'_c b_w) = #round(n.a_in, digits: 3) " in"$],
|
||||
[$a = A_s f_y / (0.85 f'_c b_w) = #round(n.a, digits: 3) " in"$],
|
||||
[Equivalent compression-block depth],
|
||||
)
|
||||
#calcline([$epsilon_t = #round(n.et, digits: 4)$], [Net tensile strain])
|
||||
#calcline([$phi = #round(n.phi, digits: 2)$], [Strength reduction factor])
|
||||
#calcline(
|
||||
[$phi M_n = phi A_s f_y (d - a/2) = #round(n.phiMn_kipft) " kip·ft"$],
|
||||
[$phi M_n = phi A_s f_y (d - a/2) = #round(n.phiMn) " kip·ft"$],
|
||||
[Design flexural strength],
|
||||
)
|
||||
|
||||
|
|
@ -89,8 +89,8 @@ Simple-span rectangular beam under uniform gravity load. Numbers come from `calc
|
|||
|
||||
== Minimum Steel and Concrete Shear
|
||||
|
||||
#calcline([$A_("s,min") = #round(n.As_min_in2, digits: 3) " in"^2$], [Minimum longitudinal steel])
|
||||
#calcline([$A_("s,prov") = #round(n.As_in2, digits: 3) " in"^2$], [Provided longitudinal steel])
|
||||
#calcline([$A_("s,min") = #round(n.As_min, digits: 3) " in"^2$], [Minimum longitudinal steel])
|
||||
#calcline([$A_("s,prov") = #round(n.As, digits: 3) " in"^2$], [Provided longitudinal steel])
|
||||
|
||||
#v(7pt)
|
||||
#check(
|
||||
|
|
@ -104,8 +104,8 @@ Simple-span rectangular beam under uniform gravity load. Numbers come from `calc
|
|||
)
|
||||
|
||||
#v(10pt)
|
||||
#calcline([$V_c = 2 sqrt(f'_c) b_w d = #round(n.Vc_kip) " kip"$], [Concrete shear strength])
|
||||
#calcline([$phi V_c = #round(n.phiVc_kip) " kip"$], [Design concrete shear strength])
|
||||
#calcline([$V_c = 2 sqrt(f'_c) b_w d = #round(n.Vc) " kip"$], [Concrete shear strength])
|
||||
#calcline([$phi V_c = #round(n.phiVc) " kip"$], [Design concrete shear strength])
|
||||
|
||||
#v(7pt)
|
||||
#check(
|
||||
|
|
|
|||
Loading…
Reference in a new issue