Update concrete-beam example, section placement, and README
- Longitudinal bars 4 #8 bottom / 2 #8 top; stirrups #3 @ 8 in. - Move the section figure after Loads and Beam Demand. - Add concrete-beam/README.md. - Regenerate results.json, assets/beam-section.typ, and the PDF. Note: the example-value tests (test_example_flexure, test_reinforcement_geometry) are not updated for the new input and currently fail.
This commit is contained in:
parent
e129c1e87c
commit
d90136d158
6 changed files with 508 additions and 470 deletions
29
concrete-beam/README.md
Normal file
29
concrete-beam/README.md
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
# Concrete Beam
|
||||
|
||||
Simple-span rectangular reinforced concrete beam, checked per ACI 318 for flexure, minimum steel, and concrete shear under a uniform gravity load (1.2D + 1.6L).
|
||||
|
||||
## Files
|
||||
|
||||
- `input.yaml` — geometry, loads, materials, and reinforcement; units are carried in the values.
|
||||
- `calc.py` — computes the demands and capacities, writes `results.json`, and regenerates the cross-section figure.
|
||||
- `beam_section.py` — renders the cross-section as native Typst (`assets/beam-section.typ`), drawn to a fixed schematic cover.
|
||||
- `test_concrete_beam.py` — pytest checks of the demands, flexure, minimum steel, shear, reinforcement geometry, and the generated figure.
|
||||
- `concrete-beam.typ` — report; compiles to `concrete-beam.pdf`.
|
||||
|
||||
`As` is derived from the provided bars (`n_bars`, `bar_size`).
|
||||
|
||||
## Usage
|
||||
|
||||
Edit `input.yaml`, then:
|
||||
|
||||
```sh
|
||||
python3 calc.py # writes results.json and assets/beam-section.typ
|
||||
python3 -m pytest # checks the calculation and the generated figure
|
||||
typst compile concrete-beam.typ # builds concrete-beam.pdf
|
||||
```
|
||||
|
||||
`calc.py` must be run before compiling so the figure matches the current inputs; the tests fail if `assets/beam-section.typ` is stale.
|
||||
|
||||
## Requirements
|
||||
|
||||
Python 3 with `pyyaml`, `pint`, `pytest`; Typst.
|
||||
Loading…
Reference in a new issue