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.9, 3.10, 3.11 or 3.12 to get started.
Installing sectionproperties
#
sectionproperties
uses shapely to prepare
the cross-section geometry and triangle 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.
Finally, click is used to power the
sectionproperties
CLI.
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 very slow 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.
If you do not have a disk space constraint, you can use the PARDISO
solver by:
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.
To install sectionproperties
with the above functionality, use the dxf
and/or
rhino
options:
pip install sectionproperties[dxf]
pip install sectionproperties[rhino]
Warning
The “rhino” extras do not currently support python 3.12, this may only be installed for python 3.9, 3.10 and 3.11.