Skip to content

RCSection

RCSection

RCSection(user_name: str = 'Unnamed', *, core_material: Union[int, str, Material], cover_material: Union[int, str, Material], steel_material: Union[int, str, Material], d: float, b: float, cover_to_center_of_bar: float)

Bases: Section

Template for rectangular reinforced-concrete sections.

This section type provides a high-level abstraction for common RC beam and column sections. It automatically generates a fiber layout consisting of a confined core, an unconfined cover, and longitudinal reinforcement bars at a specified offset.

Tcl form

section RC <tag> <coreMat> <coverMat> <steelMat> <d> <b> <dist>

Note
  • The section is assumed to be rectangular with depth d and width b.
  • The reinforcement is placed as a single layer of fibers at the four corners of the core (at cover_to_center_of_bar distance from the edges).
  • This section template simplifies the creation of RC members without requiring manual patch or fiber definitions.
Tip
  • Use a confined concrete material (like Concrete02 with high peak strain) for the core_material and an unconfined material for the cover_material to accurately model ductility.
  • If you need custom bar layouts (e.g., side bars or non-uniform spacing), use the general FiberSection instead.
Example
from femora.core.model import Model
import femora.components.section.fiber  # noqa: F401

model = Model()
core = model.material.uniaxial.elastic(user_name="Core", E=3600.0)
cover = model.material.uniaxial.elastic(user_name="Cover", E=3000.0)
steel = model.material.uniaxial.steel01(
    user_name="Steel",
    Fy=60.0,
    E0=29000.0,
    b=0.01,
)
sec = model.section.fiber.rc(
    user_name="Column1",
    core_material=core,
    cover_material=cover,
    steel_material=steel,
    d=24.0,
    b=24.0,
    cover_to_center_of_bar=2.5,
)
print(sec.tag)

Create an RCSection with validated materials and dimensions.

Parameters:

Name Type Description Default
user_name str

User-specified name for the section.

'Unnamed'
core_material Union[int, str, Material]

Reference to the core concrete material.

required
cover_material Union[int, str, Material]

Reference to the cover concrete material.

required
steel_material Union[int, str, Material]

Reference to the reinforcement material.

required
d float

Total section depth.

required
b float

Total section width.

required
cover_to_center_of_bar float

Concrete cover to bar centers.

required

Raises:

Type Description
ValueError

If materials cannot be resolved, if dimensions are not numeric, or if dimensions are non-positive.