Skip to main content

ANYstructure logo

ANYstructure

ANYstructure is a desktop steel-structure design application for plate fields

and cylinders. It combines DNV-based rule calculations with structural

modelling, load definition, reporting, and weight, weld, and cost optimization.

Core structural design

The original ANYstructure workflow remains the primary way to model and assess

a structure. It supports:

  • minimum plate thickness, stiffener section modulus, and shear-area checks

    based on DNV-OS-C101;

  • plate buckling based on DNV-RP-C201 and shell buckling based on DNV-RP-C202;

  • fatigue assessment of plate and stiffener connections based on DNV-RP-C203;

  • semi-analytical buckling through ANYbuckling and machine-learning buckling

    predictions based on PULS data;

  • automatic compartment and tank-pressure generation, plus equation-defined

    external pressures;

  • single and multiple plate/stiffener-field optimization, cylinder

    optimization, and double-bottom geometry optimization; and

  • weight, weld, cost, report, spreadsheet, and 3D shell-model workflows.

Projects can be created and edited graphically, saved for later work, and used

to compare structural alternatives. The example below can be opened from

anystruct/ship_section_example.txt.

ANYstructure structural model

Documentation: https://anystructure.readthedocs.io/en/latest/

Tutorials: https://www.youtube.com/@ANYopenSoft

Current release: 6.4.0

Version 6.4.0 keeps the established structural calculation and optimization

workflow at the front of the application while adding the integrated finite-

element workflow described below. The coordinated release uses ANYfileio 0.3,

ANYmaterial 0.2, and ANYmesher 0.4 without artificial package downgrades.

Project-owned source code is distributed under the Mozilla Public License 2.0

starting with this release. Earlier releases retain the license terms that

accompanied them.

Finite-element integration

The optional FE workflow requires ANYsolver>=0.4.1,<0.5. Axial force,

bending moment, shear force, torsional moment, pressure, and supported

collision controls are mapped directly to the external solver runtime.

Current-area follower pressure is available for nonlinear static and

arc-length runs on the Static only or Nonlinear static path. Incompatible

analysis paths are disabled in the GUI and rejected by the solver.

Arc-length runs retain the selected von Karman or corotational kinematics, and

nonlinear prestress/buckling recovery retains committed-state provenance.

Solver errors and unsupported configurations remain visible; the GUI does not

replace them with a lightweight estimate. Analysis choices are normalized by

ANYsolver's public resolve_runtime_analysis() contract.

ANYsolver 0.4.1 repairs qualified-Q4 final-state replay after plastic

increments. ANYstructure preserves the qualified Q4 formulation throughout

material-nonlinear runs; explicit legacy selection remains available to users.

Model, mesh, and result views support live Automatic, ModernGL GPU, and Tk

software renderer selection. The current scene and camera are retained during

a renderer change, and a failed explicit GPU switch leaves the working viewer

intact. Raised horizontal and vertical dividers allow the input, model, result

text, and visualization panes to be resized.

Material controls are backed by ANYmaterial. The Interfaces menu opens

ANYmesher and the ANYfileio inspector in the existing Tk event loop.

Orthotropic selections are rejected until the legacy scalar material controls

can represent their directional properties without loss.

Install and run

Install the published package and start the desktop application:

python -m pip install --upgrade ANYstructure

ANYstructure

From a source checkout, use the active Python environment:

python run_gui.py

The default install includes Excel and machine-learning dependencies for

backwards compatibility. Focused dependency groups are available as the

core, excel, ml, dev, and all extras, and as requirement files:

python -m pip install -r requirements-core.txt

python -m pip install -r requirements-ml.txt

python -m pip install -r requirements-excel.txt

Excel project import requires a local Excel installation and is not exercised

by basic automated tests. The external Excel-sheet DNV PULS calculation

workflow has been removed; ML-CL remains available.

Coordinated development setup

ANYstructure is published as the Python package anystruct. For a sibling

checkout layout, install each editable project into one environment in

dependency order:

python -m venv .venv

.\.venv\Scripts\Activate.ps1

python -m pip install --upgrade pip

python -m pip install --upgrade --no-deps -e "C:\Github\ANY3dView[gpu]" -e "C:\Github\ANYmaterial" -e "C:\Github\ANYgeometry" -e "C:\Github\ANYmesh" -e "C:\Github\ANYfileIO[semantics]" -e "C:\Github\ANYsolver" -e "C:\Github\ANYbuckling" -e "C:\Github\ANYtk3D" -e "C:\Github\ANYstructure"

python -m pip install -r requirements-dev.txt

python -m pytest

The default command runs the fast compatibility suite. Run the focused tiers

explicitly when changing their owning code:

python -m pytest -m "fem_integration and not slow"

python -m pytest -m release_authority

python -m pytest -m slow

The slow tier contains nonlinear, collision, transient, mode-imperfection, and

large external-format qualification and is intentionally opt-in during

ordinary development.

--no-deps refreshes editable metadata without forcing pip to resolve stale

transitive upper bounds from older sibling releases. run_gui.py reports the

exact repair command for its active interpreter when selected source and

installed metadata do not agree.

The coordinated compatibility ranges are:

  • ANY3dView>=0.5.5,<0.6 (ANYstructure[gpu] adds ModernGL)

  • ANYbuckling>=0.1.1,<0.2

  • ANYfileio[semantics]>=0.3.1,<0.4

  • ANYgeometry>=0.4.2,<0.5

  • ANYmaterial>=0.2.0,<0.3

  • ANYmesher>=0.4.0,<0.5

  • ANYsolver>=0.4.1,<0.5

  • ANYtk3D>=0.5.5,<0.6

To select a particular checkout, set the corresponding

ANYSTRUCTURE_ANY3DVIEW_ROOT, ANYSTRUCTURE_ANYTK3D_ROOT,

ANYSTRUCTURE_ANYBUCKLING_ROOT, ANYSTRUCTURE_ANYFILEIO_ROOT,

ANYSTRUCTURE_ANYGEOMETRY_ROOT, ANYSTRUCTURE_ANYMATERIAL_ROOT,

ANYSTRUCTURE_ANYMESHER_ROOT, or ANYSTRUCTURE_ANYSOLVER_ROOT environment

variable. Invalid explicit roots fail before application imports.

ANYgeometry owns neutral surface geometry. New geometry code should call

anygeometry.generators directly. The anystruct.geometry_generators and

anystruct.representation_geometry modules retain adapters for established

ANYstructure integrations. Structural properties, loads, mesh controls, and

solver state remain in their owning packages.

License and contributions

Project-owned source code in release 6.4.0 and later is licensed under the

Mozilla Public License 2.0.

Original project documentation is licensed under

CC BY 4.0.

Third-party software, models, figures, standards material, and other

attributed content retain their own terms; see the

third-party notices.

Project branding is covered by the

trademark policy.

Contributions and bug reports are welcome through GitHub. General feedback can

also be sent to audunarn@gmail.com.

Download files

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

Source Distribution

anystructure-6.4.0.tar.gz (31.8 MB view details)

Uploaded Source

Built Distribution

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

anystructure-6.4.0-py3-none-any.whl (31.8 MB view details)

Uploaded Python 3

File details

Details for the file anystructure-6.4.0.tar.gz.

File metadata

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

File hashes

Hashes for anystructure-6.4.0.tar.gz
Algorithm Hash digest
SHA256 240eaa2da1cc797ce1cb9acaaa53637104f7dd6bc5ea36ba22b3b3dc95274806
MD5 28ce8861301d0c2e71e4a7577f187134
BLAKE2b-256 bb767aee9cd497462e0cf4575d35bec730f25330d04a4d36b3d977961df3b15c

See more details on using hashes here.

Provenance

The following attestation bundles were made for anystructure-6.4.0.tar.gz:

Publisher: publish.yml on audunarn/ANYstructure

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

File details

Details for the file anystructure-6.4.0-py3-none-any.whl.

File metadata

  • Download URL: anystructure-6.4.0-py3-none-any.whl
  • Upload date:
  • Size: 31.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for anystructure-6.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eda7fbc8166052d2baebcae4ae9f232ad5c5ce1fa252d2cd633e638f43f201a2
MD5 e9b2040c93473dc6471124d8336b818a
BLAKE2b-256 3c577406599f123faeaef78295dbf8148f9f1891be6981b0fb841a2b05aa0ab1

See more details on using hashes here.

Provenance

The following attestation bundles were made for anystructure-6.4.0-py3-none-any.whl:

Publisher: publish.yml on audunarn/ANYstructure

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

Release history Release notifications | RSS feed

6.4.1

2 files

This release

6.4.0 This release

2 files

6.3.1

2 files

6.3.0

2 files

6.1.1

2 files

6.1.0

2 files

6.0.3

2 files

6.0.2

2 files

6.0.1

2 files

6.0.0

2 files

5.3.3

2 files

5.3.2

2 files

5.3.1

2 files

5.3.0

2 files

5.2.0

1 file

5.1.4

1 file

5.1.3

1 file

5.1.2

1 file

5.1.1

1 file

5.1.0

1 file

5.0.2

1 file

5.0.1

1 file

5.0.0

1 file

4.14

1 file

4.13

1 file

4.12

1 file

4.11

1 file

4.10

1 file

4.9.1

1 file

4.9

1 file

4.8

1 file

4.7

1 file

4.6.15

1 file

4.6.14

1 file

4.6.12

1 file

4.6.11

1 file

4.6.10

1 file

4.6.9

1 file

4.6.8

1 file

4.6.7

1 file

4.6.6

1 file

4.6.5

1 file

4.6.4

1 file

4.6.3

1 file

4.6.2

1 file

4.6.1

1 file

4.6

1 file

4.5

1 file

4.4

1 file

4.3

1 file

4.2

1 file

4.1

1 file

4.0

1 file

3.32

1 file

3.31

1 file

3.3

1 file

3.2

1 file

3.1

1 file

3.0

1 file

2.99

1 file

2.98

1 file

2.97

1 file

2.96

1 file

2.95

1 file

2.94

1 file

2.93

1 file

2.92

1 file

2.91

1 file

2.9

1 file

2.8

1 file

2.7

1 file

2.6

1 file

2.5

1 file

2.4

1 file

2.3

1 file

2.2

1 file

2.1

1 file

2.0

1 file

1.91

1 file

1.9

1 file

1.8

1 file

1.7

1 file

1.6

1 file

1.5

1 file

1.4

1 file

1.3

1 file

1.2

1 file

1.1

1 file

1.0.2

1 file

1.0.1

1 file

1.0

1 file

0.7.0

1 file

0.6.5

1 file

0.6.4

1 file

0.6.3

1 file

0.6.2

1 file

0.6.1

1 file

0.6.0

1 file

0.5.6

1 file

0.5.5

1 file

0.5.4

1 file

0.5.3

1 file

0.5.2

1 file

0.5.1

1 file

0.5.0

1 file

0.4.4

1 file

0.4.3

1 file

0.4.2

1 file

0.4.1

1 file

0.4.0

1 file

0.3.9

1 file

0.3.8

1 file

0.3.7

1 file

0.3.6

1 file

0.3.5

1 file

0.3.4

1 file

0.3.3

1 file

0.3.2

1 file

0.3.1

1 file

0.3.0

1 file

0.2.4

1 file

0.2.3

1 file

0.2.2

1 file

0.2.1

1 file

0.2.0

1 file

0.1.22

1 file

0.1.21

1 file

0.1.20

1 file

0.1.19

1 file

0.1.18

1 file

0.1.17

1 file

0.1.16

1 file

0.1.15

1 file

0.1.14

1 file

0.1.13

1 file

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