Documentation#

The xsection package comprises the following core geometry classes:

PolygonSection(exterior[, interior, ...])

A homogeneous polygon section.

CompositeSection(patches[, materials, ...])

A non-homogeneous cross-section composed from multiple sections.

The xsection.library submodule exposes the following convenience classes which inherit from the core geometry classes:

from_aisc(identifier[, units, fillet])

Create a homogeneous cross-section from an AISC identifier.

Circle(radius[, centroid, mesh_scale, divisions])

A discrete circle section with exact area.

Rectangle(b, d[, mesh_scale, centroid])

A rectanglular section.

HollowRectangle(b, d[, t, mesh_scale, centroid])

A hollow rectanglular section.

WideFlange(d[, bf, tw, tf, t, b, k, k1, ...])

A wide flange (I) section.

HalfFlange(d[, bf, tw, tf, t, b, k, ...])

A half wide flange (T) section.

Channel(d, b[, tf, tw, k, ho, sf, centroid, ...])

A channel (C) section.

Angle(b, d, t[, k, centroid, mesh_scale])

An angle (L) section.

SingleCellGirder(d, br6, br4, br3, br1, tr5, ...)

Single-cell box girder

aisc_data(identifier[, props, units])

Return a dictionary of cross section properties from the AISC database.

The central abstraction in the xsection package is the Section interface, which is defined by the following attributes:

Section.elastic

An object holding the elastic properties of a section.

Section.linspace(start, stop, num[, radius])

Create num copies of this section with centroids linearly aranged from start to stop.

Section.translate(location)

Translate the section to a new location.