This page was generated from
docs\source\notebooks/concrete_section.ipynb.
Creating a concrete section#
[1]:
from sectionproperties.pre.pre import Material
from sectionproperties.pre.library.concrete_sections import concrete_rectangular_section
from sectionproperties.analysis.section 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(
b=300,
d=600,
dia_top=20,
n_top=0,
dia_bot=20,
n_bot=3,
n_circle=24,
cover=30,
conc_mat=concrete,
steel_mat=steel,
)
geom.create_mesh(mesh_sizes=2500)
sec = Section(geometry=geom)
sec.plot_mesh()
(area, ixx, iyy, ixy, j, phi) = sec.calculate_frame_properties()
area, ixx, iyy, ixy, j, phi
[1]:
(5578126977.5534725,
173057854009309.12,
41930694232035.7,
0.03125,
112167196141418.69,
0)
[2]:
geom.geoms
[2]:
[<sectionproperties.pre.geometry.Geometry at 0x232449fddc0>,
<sectionproperties.pre.geometry.Geometry at 0x232449fdd90>,
<sectionproperties.pre.geometry.Geometry at 0x23244a11160>,
<sectionproperties.pre.geometry.Geometry at 0x2322e2c6a00>]
[3]:
dir(geom.geoms[1].geom)
[3]:
['__and__',
'__bool__',
'__class__',
'__delattr__',
'__dir__',
'__doc__',
'__eq__',
'__format__',
'__ge__',
'__geo_interface__',
'__getattribute__',
'__gt__',
'__hash__',
'__init__',
'__init_subclass__',
'__le__',
'__lt__',
'__module__',
'__ne__',
'__new__',
'__nonzero__',
'__or__',
'__reduce__',
'__reduce_ex__',
'__repr__',
'__setattr__',
'__setstate__',
'__sizeof__',
'__slots__',
'__str__',
'__sub__',
'__subclasshook__',
'__xor__',
'_geom',
'_geom_prepared',
'_ndim',
'_repr_svg_',
'almost_equals',
'area',
'boundary',
'bounds',
'buffer',
'centroid',
'contains',
'contains_properly',
'convex_hull',
'coords',
'covered_by',
'covers',
'crosses',
'difference',
'disjoint',
'distance',
'dwithin',
'envelope',
'equals',
'equals_exact',
'exterior',
'from_bounds',
'geom_type',
'geometryType',
'has_z',
'hausdorff_distance',
'interiors',
'interpolate',
'intersection',
'intersects',
'is_closed',
'is_empty',
'is_ring',
'is_simple',
'is_valid',
'length',
'line_interpolate_point',
'line_locate_point',
'minimum_clearance',
'minimum_rotated_rectangle',
'normalize',
'oriented_envelope',
'overlaps',
'point_on_surface',
'project',
'relate',
'relate_pattern',
'representative_point',
'reverse',
'segmentize',
'simplify',
'svg',
'symmetric_difference',
'touches',
'type',
'union',
'within',
'wkb',
'wkb_hex',
'wkt',
'xy']
[4]:
type(geom.geoms[1].geom)
[4]:
shapely.geometry.polygon.Polygon
[5]:
geom.geoms[1].material
[5]:
Material(name='Steel', elastic_modulus=200000.0, poissons_ratio=0.3, yield_strength=500, density=7.85e-06, color='grey')
[6]:
from shapely.geometry import Point
point=Point(0.5, 0.5)
geom.geoms[0].geom.contains(point)
[6]:
True
[7]:
geom.geoms[0].create_facets_and_control_points()
[8]:
geom.geoms[3].facets
[8]:
[[0, 1],
[1, 2],
[2, 3],
[3, 4],
[4, 5],
[5, 6],
[6, 7],
[7, 8],
[8, 9],
[9, 10],
[10, 11],
[11, 12],
[12, 13],
[13, 14],
[14, 15],
[15, 16],
[16, 17],
[17, 18],
[18, 19],
[19, 20],
[20, 21],
[21, 22],
[22, 23],
[23, 0]]
[9]:
dir(geom.geoms[0])
[9]:
['__add__',
'__and__',
'__class__',
'__delattr__',
'__dict__',
'__dir__',
'__doc__',
'__eq__',
'__format__',
'__ge__',
'__getattribute__',
'__gt__',
'__hash__',
'__init__',
'__init_subclass__',
'__le__',
'__lt__',
'__module__',
'__ne__',
'__new__',
'__or__',
'__reduce__',
'__reduce_ex__',
'__repr__',
'__setattr__',
'__sizeof__',
'__str__',
'__sub__',
'__subclasshook__',
'__weakref__',
'__xor__',
'_recovery_points',
'_repr_svg_',
'align_center',
'align_to',
'assign_control_point',
'assigned_control_point',
'calculate_area',
'calculate_centroid',
'calculate_extents',
'calculate_perimeter',
'compile_geometry',
'control_points',
'create_facets_and_control_points',
'create_mesh',
'facets',
'from_3dm',
'from_dxf',
'from_points',
'from_rhino_encoding',
'geom',
'holes',
'material',
'mirror_section',
'offset_perimeter',
'perimeter',
'plot_geometry',
'points',
'recovery_points',
'rotate_section',
'shift',
'shift_points',
'shift_section',
'split_section',
'tol']