Skip to main content

Built Environmenta Data (BED) - SimDesign Framework

Documentation PyPI Python 3.12 License: AGPL-3.0 DOI

A Python package for the modeling the seismic vulnerability of buildings using the simulated design. Currently, it focuses on Reinforced Concrete (RC) Moment Resisting Frames (MRFs), but the workflow is adaptable to other structural systems. To ensure modularity and scalability for future extensions, the rcmrf framework is integrated within the broader simdesign library. The framework can accommodate the design of buildings using both historical and modern seismic design procedures and regulations, while capturing building-to-building variability. It generates Building Class Information Models (BCIM), Building Design Information Models (BDIM), and Building Nonlinear Structural Models (BNSM) that are analyzable in OpenSees. Service

Installation

Follow the steps below to install the simdesign package.

Note: Python 3.12 is required. Ensure that correct version is installed:

python --version  # should be 3.12.x

Create a virtual environment to manage dependencies:

python -m venv .venv

Activate the virtual environment:

.venv\Scripts\activate     # On Windows
source .venv/bin/activate  # Linux / macOS

Option 1: Install via PyPI

Open the terminal and simply run:

pip install simdesign

Option 2: Install from Source

Clone the repository:

git clone https://github.com/builtenvdata/simulated-design.git
cd simulated-design

Install the simdesign package:

pip install .

Alternatively, to install in editable mode (useful for development), run:

pip install -e .

Usage

Once installed, you can import and use the package in Python:

# Example usage
from simdesign import rcmrf

# The main inputs for each design class
inputs = {
    "bcim": {
        "design_class": "eu_cdl",
        "sample_size": 30,
        "num_storeys": 4,
        "beta": 0.1,
        "seed": 2
    },
    "bnsm": {
        "model": "DP01",
        "scheme": "EQL",
        "dincr": 1e-3,
        "max_drift": 0.1,
        "opensees": "py",
        "include_infills": False
    }
}
# Run the bed-workflow for rcmrf systems and save the outputs
bcim, bdim, bnsm = rcmrf.generate(inputs=inputs, outdir="Outputs")

For more examples please see the scripts folder or see full documentation for advanced use.

It is also possible to visualise and design buildings with specific geometries. See an example of a specific design.

Contributing

Contributions are welcome! If you’d like to contribute, follow these steps:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make your changes.
  4. Update the test files (test_rcmrf.py) for new features.
  5. Run pytest and check if all tests pass (pytest tests).
  6. Commit the changes (git commit -m 'Add new feature').
  7. Push to the branch (git push origin feature-branch).
  8. Open a pull request.

References

If you use the SimDesign tool, please be sure to cite the reference publication:

Ozsarac, V., Pereira, N., Mohamed, H., Romão, X., & O’Reilly, G. J. (2025). The Built Environment Data Framework for Simulated Design and Vulnerability Modelling in Earthquake Engineering. Earthquake Engineering & Structural Dynamics, 54(11), 2651-2670. https://doi.org/10.1002/eqe.4378

Hasanoğlu, S., Ozsarac, V., & O’Reilly, G. J. (2025). A model for the simulated design of Turkish RC frame buildings in seismic vulnerability analysis. Bulletin of Earthquake Engineering, 23(15), 6829-6856. https://doi.org/10.1007/s10518-025-02301-y

License

This project is licensed under the AGPL-3.0 license. See the LICENSE file for details.

Metadata

Release files for simdesign 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for simdesign 1.2.0
File Size Uploaded
simdesign-1.2.0.tar.gz 400.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for simdesign 1.2.0
File Interpreter ABI Platform
simdesign-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 952.2 kB

Release files / simdesign-1.2.0.tar.gz

Download URL simdesign-1.2.0.tar.gz
Size 400.9 kB
Tags Source
SHA-256 checksum
How to use checksums
a18270145827923ca2f43aef8388367614c57fdf3db82f5bcf870c9a9f071d59
BLAKE2b-256 checksum
How to use checksums
a10adbb946e10f8a403362b7ec363f5af129d1ab21277dd0ebafb5ee01cc11f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.2 CPython/3.12.6 Windows/11

Release files / simdesign-1.2.0-py3-none-any.whl

Download URL simdesign-1.2.0-py3-none-any.whl
Size 551.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c9ee66a56a7b5beb7eec849f8546c024a67c492bfd407d7df9c26a63615821de
BLAKE2b-256 checksum
How to use checksums
ed5a58ae1bd89d59f0cbeca79bf387cf215e3f337c4715d3748e9609bb33b627
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.2 CPython/3.12.6 Windows/11

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page