section-properties icon indicating copy to clipboard operation
section-properties copied to clipboard

Analysis of an arbitrary cross-section in python using the finite element method.

Logo Dark Logo Light

Run Tests Lint with Black Documentation Status codecov PyPI version Python versions GitHub license

A python package for the analysis of arbitrary cross-sections using the finite element method. sectionproperties can be used to determine section properties to be used in structural design and visualise cross-sectional stresses resulting from combinations of applied forces and bending moments.

Subscribe to the mailing list!

Installation:

For more detailed installation instructions, refer to the documentation.

$ pip install sectionproperties

Documentation:

sectionproperties is fully documented including a user walkthrough, examples, background theory and an API guide. The documentation can found at https://sectionproperties.readthedocs.io/.

Current Capabilities:

Pre-Processor:

  • [x] Python API
  • [x] Geometry manipulation by Shapely
  • [x] Common section geometry functions
  • [x] Custom section geometry input
  • [x] Rhino .3dm import
  • [x] .dxf import
  • [x] Perimeter offset tool
  • [x] Quadratic triangular mesh generation
  • [x] Composite material definition

Cross-Section Analysis:

  • [x] Global axis geometric section properties:
    • [x] Area
    • [x] Perimeter
    • [x] Mass
    • [x] First moments of area
    • [x] Second moments of area
    • [x] Elastic centroid
  • [x] Centroidal axis geometric section properties:
    • [x] Second moments of area
    • [x] Elastic section moduli
    • [ ] Yield moment
    • [x] Radii of gyration
    • [x] Plastic centroid
    • [x] Plastic section moduli
    • [x] Shape factors
  • [x] Principal axis geometric section properties:
    • [x] Second moments of area
    • [x] Elastic section moduli
    • [ ] Yield moment
    • [x] Radii of gyration
    • [x] Plastic centroid
    • [x] Plastic section moduli
    • [x] Shape factors
  • [x] Warping section properties:
    • [x] Torsion constant
    • [x] Warping constant
    • [x] Monosymmetry constants
  • [x] Shear section properties:
    • [x] Shear centre (elastic method)
    • [x] Shear centre (Trefftz's method)
    • [x] Shear areas (global axis)
    • [x] Shear areas (principal axis)
  • [x] Cross-section stress analysis
  • [x] Mohr's circles for stresses at a point

Solver:

  • [x] Direct solver
  • [x] CGS iterative solver
  • [x] Sparse matrices

Post-Processor:

  • [x] Plot geometry
  • [x] Plot mesh
  • [x] Plot centroids
  • [x] Plot cross-section stresses
  • [x] Retrieve cross-section stresses
  • [ ] Generate cross-section report

Disclaimer:

sectionproperties is an open source engineering tool that continues to benefit from the collaboration of many contributors. Although efforts have been made to ensure the that relevant engineering theories have been correctly implemented, it remains the user's responsibility to confirm and accept the output. Refer to the license for clarification of the conditions of use.