concrete_rectangular_section#
- sectionproperties.pre.library.concrete_sections.concrete_rectangular_section(d: float, b: float, dia_top: float, area_top: float, n_top: int, c_top: float, dia_bot: float, area_bot: float, n_bot: int, c_bot: float, dia_side: float | None = None, area_side: float | None = None, n_side: int = 0, c_side: float = 0.0, n_circle: int = 4, conc_mat: pre.Material = Material(name='default', elastic_modulus=1, poissons_ratio=0, yield_strength=1, density=1, color='w'), steel_mat: pre.Material = Material(name='default', elastic_modulus=1, poissons_ratio=0, yield_strength=1, density=1, color='w')) geometry.CompoundGeometry [source]#
Constructs a reinforced concrete rectangular section.
Constructs a reinforced concrete rectangular section of depth
d
and widthb
.Note
As the reinforcing bars are described by discretised circles, the area of each bar is required to ensure that the correct reinforcing area is provided.
- Parameters:
d (float) – Concrete section depth
b (float) – Concrete section width
dia_top (float) – Diameter of the top reinforcing bars, used for calculating bar placement
area_top (float) – Area of the top reinforcing bars
n_top (int) – Number of top, equally spaced reinforcing bars
c_top (float) – Clear cover to the top reinforcing bars
dia_bot (float) – Diameter of the bottom reinforcing bars, used for calculating bar placement
area_bot (float) – Area of the bottom reinforcing bars
n_bot (int) – Number of bottom, equally spaced reinforcing bars
c_bot (float) – Clear cover to the bottom reinforcing bars
dia_side (float | None) – Diameter of the side reinforcing bars, used for calculating bar placement
area_side (float | None) – Area of the side reinforcing bars
n_side (int) – Number of side, equally spaced reinforcing bars
c_side (float) – Clear cover to the side reinforcing bars
n_circle (int) – Number of points used to discretise the circular reinforcing bars
conc_mat (pre.Material) – Material object to assign to the concrete area
steel_mat (pre.Material) – Material object to assign to the steel area
- Raises:
ValueError – Geometry generation failed
- Returns:
Reinforced concrete rectangular section geometry
- Return type:
Example
The following example creates a 600 mm deep x 300 mm wide concrete beam. The beam is reinforced with 3 x 16 mm top bars (20 mm cover), 3 x 20 mm bottom bars (30 mm cover), and 2 x 12 mm side bars (30 mm cover). A coarse finite element mesh is generated to show the different material regions:
from sectionproperties.pre import Material from sectionproperties.pre.library import concrete_rectangular_section from sectionproperties.analysis import Section concrete = Material( name="Concrete", elastic_modulus=30.1e3, poissons_ratio=0.2, yield_strength=32, density=2.4e-6, color="lightgrey", ) steel = Material( name="Steel", elastic_modulus=200e3, poissons_ratio=0.3, yield_strength=500, density=7.85e-6, color="grey", ) geom = concrete_rectangular_section( d=600, b=300, dia_top=16, area_top=200, n_top=3, c_top=20, dia_bot=20, area_bot=310, n_bot=3, c_bot=30, dia_side=12, area_side=110, n_side=2, c_side=30, n_circle=16, conc_mat=concrete, steel_mat=steel, ) geom.create_mesh(mesh_sizes=[0]) # a size of zero creates a coarse mesh Section(geometry=geom).plot_mesh()
(
Source code
,png
,hires.png
,pdf
)