Skip to main content

COMPAS CRA

build GitHub - License pip downloads PyPI - Python Version PyPI - Latest Release DOI

Coupled Rigid-Block Analysis (CRA) implementation using COMPAS framework.

developed with by Gene Ting-Chun Kao

Installation

pip install compas_sandbox

Nothing else is needed on Windows, macOS (Apple Silicon and Intel) or Linux: the wheels bundle a statically linked IPOPT 3.14.19 executable (Eclipse Public License 2.0, MUMPS linear solver, no HSL), built from source by packaging/. See packaging/README.md for how it is built and which licenses apply, and the installation docs for development installs.

To find out more about CRA, please refer to our paper in the CAD Computer-Aided Design journal: https://doi.org/10.1016/j.cad.2022.103216

Coupled Rigid-Block Analysis: Stability-Aware Design of Complex Discrete-Element Assemblies

image

Abstract

The rigid-block equilibrium (RBE) method uses a penalty formulation to measure structural infeasibility or to guide the design of stable discrete-element assemblies from unstable geometry. However, RBE is a purely force-based formulation, and it incorrectly describes stability when complex interface geometries are involved. To overcome this issue, this paper introduces the coupled rigid-block analysis (CRA) method, a more robust approach building upon RBE’s strengths. The CRA method combines equilibrium and kinematics in a penalty formulation in a nonlinear programming problem. An extensive benchmark campaign is used to show how CRA enables accurate modelling of complex three-dimensional discrete-element assemblies formed by rigid blocks. In addition, an interactive stability-aware design process to guide user design towards structurally-sound assemblies is proposed. Finally, the potential of our method for real-world problems are demonstrated by designing complex and scaffolding-free physical models.

Please cite our work if you use CRA in your research

Paper

@article{kao2022coupled,
    title     = {Coupled Rigid-Block Analysis: Stability-Aware Design of Complex Discrete-Element Assemblies},
    author    = {Kao, Gene Ting-Chun and Iannuzzo, Antonino and Thomaszewski, Bernhard and Coros, Stelian and Van Mele, Tom and Block, Philippe},
    journal   = {Computer-Aided Design},
    volume    = {146},
    pages     = {103216},
    year      = {2022},
    publisher = {Elsevier},
    doi       = {10.1016/j.cad.2022.103216},
    url       = {https://doi.org/10.1016/j.cad.2022.103216}
}

Software implementation

@misc{compas-sandbox,
    title  = {{COMPAS CRA}: Coupled Rigid-Block Analysis ({CRA}) for the {COMPAS} framework},
    author = {Kao, Gene Ting-Chun},
    note   = {https://github.com/BlockResearchGroup/compas\_cra},
    year   = {2020-2022},
    doi    = {10.5281/zenodo.7043135},
    url    = {https://doi.org/10.5281/zenodo.7043135},
}

Read the docs

https://github.com/petrasvestartas/compas_sandbox

Examples to reproduce our paper results

See examples in docs or try them in docs/examples.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

compas_sandbox-0.6.2.tar.gz (1.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

compas_sandbox-0.6.2-py3-none-win_amd64.whl (13.6 MB view details)

Uploaded Python 3Windows x86-64

compas_sandbox-0.6.2-py3-none-manylinux_2_28_x86_64.whl (9.7 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

compas_sandbox-0.6.2-py3-none-manylinux_2_28_aarch64.whl (3.7 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

compas_sandbox-0.6.2-py3-none-macosx_11_0_x86_64.whl (3.4 MB view details)

Uploaded Python 3macOS 11.0+ x86-64

compas_sandbox-0.6.2-py3-none-macosx_11_0_arm64.whl (3.1 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file compas_sandbox-0.6.2.tar.gz.

File metadata

  • Download URL: compas_sandbox-0.6.2.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for compas_sandbox-0.6.2.tar.gz
Algorithm Hash digest
SHA256 14283c5f6d45346e85915e3ea09bc0deaa5c9ca34675590de177459e9eccb1f2
MD5 2f81da79512e994322e5c619db084f18
BLAKE2b-256 f5ab82122bf460790e471ad80d46cbaba8995ea445bda8160759bbe132248a05

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_sandbox-0.6.2.tar.gz:

Publisher: release.yml on petrasvestartas/compas_sandbox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file compas_sandbox-0.6.2-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for compas_sandbox-0.6.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 b28b4cc73c4f448f0429c80e9130407d6f963e55e8eb9a3f746afd858166e09d
MD5 4630b43539d2281c50506d13c093006c
BLAKE2b-256 58a9210585e9784d893859e45489ae65e28a4e3c45540c80a9f2baaf82231b83

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_sandbox-0.6.2-py3-none-win_amd64.whl:

Publisher: release.yml on petrasvestartas/compas_sandbox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file compas_sandbox-0.6.2-py3-none-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for compas_sandbox-0.6.2-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 44b2ee042ecf9ff7c9817704f89cf05e6b1ee62c97da601c953be64e9bd98c4b
MD5 ddd276cfabde738c4ee0f41bf3182cb1
BLAKE2b-256 86d43101178b5d4d1dc57dcb97b56ec0ce1fe814f45b471da983306a0670928b

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_sandbox-0.6.2-py3-none-manylinux_2_28_x86_64.whl:

Publisher: release.yml on petrasvestartas/compas_sandbox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file compas_sandbox-0.6.2-py3-none-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for compas_sandbox-0.6.2-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 57971c9aaf3652306db08e6c10e2f5b8af17d24ddbdc47dcb9f44d65ef181394
MD5 eaabc61f3762b1ecbe2986a617003116
BLAKE2b-256 fcf972845e1ef0e87285e7f8e27402cf9b6ba6f297dc14efd172ce10ba2675b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_sandbox-0.6.2-py3-none-manylinux_2_28_aarch64.whl:

Publisher: release.yml on petrasvestartas/compas_sandbox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file compas_sandbox-0.6.2-py3-none-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for compas_sandbox-0.6.2-py3-none-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 b8b8f1a45a00e5deedb6442c40ac829b6fe2a528c8d9b439c607e2b39fefee9e
MD5 c8d61ce06f70dcc237dd298537b95bd4
BLAKE2b-256 150defea929b1b34d5229fe7d82fbc9816219f85db75d28b4033e44d7f3ad1b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_sandbox-0.6.2-py3-none-macosx_11_0_x86_64.whl:

Publisher: release.yml on petrasvestartas/compas_sandbox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file compas_sandbox-0.6.2-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for compas_sandbox-0.6.2-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d77b8682992eb911db2700f66047566592e767a80c5f5806e9805208520a744c
MD5 3a3b733f1276fbb9fbad30cf6b58ca1c
BLAKE2b-256 2891008c865782e27f5fdb9752d2ced69382c849fe9c0479cedfd9f8eb32ca53

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_sandbox-0.6.2-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on petrasvestartas/compas_sandbox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.7.6

26 files

0.7.5

26 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.5

6 files

0.6.4

6 files

0.6.3

6 files

This release

0.6.2 This release

6 files

0.6.1

6 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