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
dand widthb. - The reinforcement is placed as a single layer of fibers at the four
corners of the core (at
cover_to_center_of_bardistance 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
Concrete02with high peak strain) for thecore_materialand an unconfined material for thecover_materialto 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. |