Adaptive topology optimization of fail-safe trusses
Project description
LayOpt
LayOpt is a Python package for topology optimisation of fail-safe trusses developed by the Integrated Civil and Infrastructure Research Centre at The University of Sheffield. For more detailed information about the software please see our website.
Installation
Virtual Environment
It is recommended that you use a Python Virtual Environment to install LayOpt. There are many options available but a good choice, used in the development of LayOpt, is uv. Create a directory for your work and after installing uv create a virtual environment.
# Create a directory
mkdir LayOpt
# Change directory
cd LayOpt
# Create a virtual Environment
uv venv
PyPI
Layopt is available on PyPI. Ideally you should use a Python Virtual Environment (see above).
# Plain virtual environment
pip install layopt
# uv virtual environment
uv pip install layopt
Pre-releases
If you wish to try pre-releases, denoted by suffixes of the form a# for alpha releases, b# for beta and rc# for
release candidates you should include the specific version when calling pip. For example to install the 0.1.0a1
(first alpha release of version 0.1.0) you would use...
# Plain virtual environment
pip install layopt==0.1.0a1
# uv virtual environment
uv pip install layopt==0.1.0a1
GitHub
You can use pip to install the package directly from GitHub. This allows you to install a specific branch or
commit to test out new functionality that is under development. In your Virtual Environment run...
# Install from HEAD of main branch
pip install git@https://github.com/ICAIR-Sheffield/LayOpt
# Install a specific <branch>
pip install git@https://github.com/ICAIR-Sheffield/LayOpt.git@<branch>
Development
Contributions are welcome. If you are considering contributing to the development of LayOpt and are not a collaborator of the repository then you should fork to your account first and then clone from there.
To find out how to contribute please see our Contributing page
Documentation
We use the Material for Mkdocs static site generator to build a website. This is deployed on GitHub Pages.
Citing
To cite this software please refer to the CITATION.cff included in this repository.
Publications
- Fairclough H.E., He L., Asfaha T.B., Rigby S. (2023) Adaptive topology optimization of fail-safe truss structures Structural and Multidisciplinary Optimization 66(7)148 doi:10.1007/s00158-023-03585-x
- He L., Gilbert M., Song X. (2019) A Python script for adaptive layout optimization of trusses Structural and Multidisciplinary Optimization 60(2) 835-847 doi:10.1007/s00158-019-02226-6
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file layopt-0.0.1a1.tar.gz.
File metadata
- Download URL: layopt-0.0.1a1.tar.gz
- Upload date:
- Size: 876.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23bcbf83feb208ac29e5a9e3fd1f875b977adb5bb56fc22706c9796b172f2cb8
|
|
| MD5 |
cb1631e10d4c64f50447c08c0e86c6c4
|
|
| BLAKE2b-256 |
16ed245db95e3f8c059de4c49e43be6426604b9ebdfcea7c51f79bbd7300431f
|
Provenance
The following attestation bundles were made for layopt-0.0.1a1.tar.gz:
Publisher:
pypi.yaml on ICAIR-Sheffield/LayOpt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
layopt-0.0.1a1.tar.gz -
Subject digest:
23bcbf83feb208ac29e5a9e3fd1f875b977adb5bb56fc22706c9796b172f2cb8 - Sigstore transparency entry: 2113762345
- Sigstore integration time:
-
Permalink:
ICAIR-Sheffield/LayOpt@ebfcdfdd1569156683031a049327e008a0d31fa8 -
Branch / Tag:
refs/tags/v0.0.1a1 - Owner: https://github.com/ICAIR-Sheffield
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yaml@ebfcdfdd1569156683031a049327e008a0d31fa8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file layopt-0.0.1a1-py3-none-any.whl.
File metadata
- Download URL: layopt-0.0.1a1-py3-none-any.whl
- Upload date:
- Size: 43.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f0f32c1e5d4974ffa2a0dba37511d4f1958fd83a1f65f930bcf0a51b724bcbc
|
|
| MD5 |
3b7ce3784d157f0a5825fc2504bcc99c
|
|
| BLAKE2b-256 |
3b3396f577dbb4cba748dbd42c98acd060f5706b74c8c1c7dfe7d7179bf5a71b
|
Provenance
The following attestation bundles were made for layopt-0.0.1a1-py3-none-any.whl:
Publisher:
pypi.yaml on ICAIR-Sheffield/LayOpt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
layopt-0.0.1a1-py3-none-any.whl -
Subject digest:
7f0f32c1e5d4974ffa2a0dba37511d4f1958fd83a1f65f930bcf0a51b724bcbc - Sigstore transparency entry: 2113762568
- Sigstore integration time:
-
Permalink:
ICAIR-Sheffield/LayOpt@ebfcdfdd1569156683031a049327e008a0d31fa8 -
Branch / Tag:
refs/tags/v0.0.1a1 - Owner: https://github.com/ICAIR-Sheffield
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yaml@ebfcdfdd1569156683031a049327e008a0d31fa8 -
Trigger Event:
push
-
Statement type: