Use steelpy in CalcTree to query AISC shapes, compute section properties and bending checks, and export clean tables for design.








This template is not available yet. You can sign up and create it yourself!
Or let us know if you'd like to be notified when itโs ready:
About this steelpy Calculator
This template wraps the Python library steelpy to automate AISC shape property lookups and perform a lightest-section selection for W-shapes in bending using an elastic modulus check. It computes the required elastic section modulus as Sx_req = Mu / (phi_b * Fy)
, queries the AISC database for shapes with Sx >= Sx_req
, sorts by weight, and returns the lightest passing section. It also pulls geometry and section properties (Ix, Iy, Zx, rx, ry, J, Cw), provides quick web shear and slenderness indicators, and tabulates results for reporting.
- Structural engineer: Filter thousands of AISC shapes by demand and material yield strength, then grab Ix, Iy, Zx, rx, ry, J and Cw without opening the manual.
- Connection/steel designer: Compare candidate W sections for stiffness vs weight; export a pandas DataFrame for your calc pack.
- Educator/researcher: Demonstrate property-driven selection and trends on a shareable CalcTree page.
Built as an engineering-grade calculator, it keeps inputs, scripts, plots and results together.
More on this steelpy Calculator
What the template captures
Inputs include a list of bending demands Mu (in kip-in), material yield strength Fy (in ksi), the strength reduction factor phi_b, and a shape family (the code targets W-shapes). The script queries the AISC database via steelpy.aisc
, retrieving depth, flange and web sizes, unit weight, section modulus Sx and Zx, moments of inertia Ix and Iy, radii of gyration rx and ry, torsional constant J, and warping constant Cw.
How the engine selects a section
For each Mu, the template computes the required section modulus as Sx_req = Mu / (phi_b * Fy)
. It then filters aisc.W_shapes
for shapes with Sx >= Sx_req
, sorts the results by weight, and selects the first (lightest) shape. It reports a summary including selected Sx, Zx, Ix, geometry, and weight. The template also computes a nominal web shear capacity using Vn = 0.6 * Fy * Aw * Cv
with Aw = d * tw
, and returns simple slenderness indicators such as lambda_flange = bf / (2 * tf)
and lambda_web = d / tw
.Note: This selection is based on elastic modulus. If plastic design is intended (Mn = Fy * Zx), the filter should be based on Zx instead of Sx.
Data you get back
Results are aggregated into a list of dicts, converted to a pandas DataFrame, and then to a list-of-lists for CalcTree display. You can sort, filter, chart, or paste the table into reports. Properties remain Python-native, so they chain cleanly into downstream checks.
Integrations and workflow
Because outputs are plain Python objects, you can extend the workflow with code checks (compactness, lateral-torsional buckling, shear, combined actions), cost or embodied-carbon comparisons, or plots. Installation is straightforward: pip install steelpy
. The AISC database in steelpy uses imperial units (inches and pounds), so keep unit handling consistent.
Common Calculation Errors to Avoid
- Using the wrong property for selection: the template selects by Sx (elastic). If your design basis is plastic flexure (Mn = Fy * Zx), filter by Zx instead of Sx.
- Unit inconsistencies: keep Mu in kip-in, Fy in ksi, and shape properties in inches and pounds to stay consistent with AISC tables.
- Assuming code checks are included: the template returns indicators (web shear formula, lambda ratios) but does not perform AISC compactness, local buckling, lateral-torsional buckling, or phi-factor checks. Add these explicitly.
- Over-simplified web area: Aw = d * tw ignores fillets and holes; for critical shear design, refine Aw and Cv.
- No-candidate handling: if no shape meets the required Sx, next(iter(...)) will raise a StopIteration error. Add graceful handling and report the governing shortfall.
- Restricting to W-shapes unintentionally: if you need HSS, angles, or channels, point the filter at the correct family (e.g. aisc.HSS_shapes) and adapt the selection logic.
- Forgetting material grade assumptions: the library provides geometric properties only; make sure you apply the correct Fy for your design code.
Engineering templates
Common calculators
Design guides






FAQs
Which properties does the calculator output?
Depth, weight, Zx, Ix, Iy, rx, ry, J and Cw, plus basic geometry like flange and web sizes. It also tags slenderness checks to help triage sections.
Can it search beyond W-shapes?
Yes. You can target HSS tubes, angles (L), and pipe sections by switching the shape family in the inputs, then the same filtering logic applies.
How do I reproduce the table in my report?
The template returns a pandas DataFrame. Copy it directly or export to CSV from your CalcTree page. The live page preserves inputs and results for audit.
Do I need to install anything locally?
If youโre running inside CalcTree, the environment is handled for you. For local scripts, install with pip install steelpy
.
Summary and References
This steelpy-backed template helps engineers rapidly filter AISC steel sections by demand and property, exposing the data you actually useโZx, Ix/Iy, rx/ry, J and Cwโin a clean, auditable table. Use it in CalcTree to standardise selection, share context, and shorten iteration cycles.