Installation¶
These instructions will get you a copy of sectionproperties up and running on your
machine. You will need a working copy of python 3.11, 3.12, 3.13, or 3.14 to get started.
Installing sectionproperties¶
sectionproperties uses shapely to prepare
the cross-section geometry and CyTriangle to
efficiently generate a conforming triangular mesh.
numpy and scipy
are used to aid finite element computations, while
matplotlib and
rich are used for post-processing.
sectionproperties and all of its dependencies can be installed through the python
package index:
pip install sectionproperties
Installing Numba¶
Numba translates a subset of Python and NumPy code into fast machine code, allowing
algorithms to approach the speeds of C. The speed of several sectionproperties
analysis functions have been enhanced with numba.
To take advantage of this increase in performance you can install numba alongside
sectionproperties with:
pip install sectionproperties[numba]
Installing PARDISO Solver¶
The default sparse solver used in scipy is SuperLU.
It performs okay for small matrices but appears to be slower for larger matrices. The
PARDISO solver is a much faster alternative
(see pypardiso), but it requires the
installation of the MKL library, which takes a lot of disk space. Note that this
library is only available for Linux and Windows systems.
If you do not have a disk space constraint, you can install the PARDISO solver with:
pip install sectionproperties[pardiso]
Installing CAD Modules¶
The dependencies used to import from .dxf and .3dm (rhino) files are not
included by default in the base installation.
cad-to-shapely is used to import
.dxf files, while
rhino-shapely-interop is
used to import .3dm files. Note that the rhino dependencies are not yet
supported for python 3.14 and so can only be installed for 3.13 and lower.
To install sectionproperties with the above functionality, use the dxf and/or
rhino options:
pip install sectionproperties[dxf]
pip install sectionproperties[rhino]