Skip to main content

Hyperstruct

Project description

Hyperstruct

PyPI Status Python Version License

Read the documentation at https://hyperstruct.readthedocs.io/ Tests Codecov

pre-commit Black

HyperStruct is a modern implementation of the SWEEP software originally produced by Rockwell International in 1974. The Structural Weight Estimation Program for Aircraft (SWEEP) was originally implemented in FORTRAN. The source code for this program is no longer publicly available, but the US Defence Technical Information Center has published all the original documentation from Rockwell (which is extensive).

This project aims to meet the same objectives as SWEEP: devlop analytical computer programs capable of predicting the weight of aircraft structural components suitable for use during the conceptual phase of the aircraft design cycle. It builds a very high level of fidelity in the weight estimates, with flexiblity to a plethora of design variables. All of this is predominantly derived from fundamental structural methods, or historically predicated empirical formulas.

Current Status

  • 😬 Not much! This project requires a lot of boilerplate before any meaningful results or demos.
  • A major goal for 2025 is a functional demo of at least the Fuselage methods! Stay tuned!
  • Even without the aircraft or fuselage synthesis routines, the fuselage component classes can still be used to size Cover panels (without cutouts), and pressure bulkheads. This includes sizing Covers for local panel flutter and acoustic fatigue!

Roadmap

  • The majority of work at the moment revolves around the Fuselage synthesis. It is considered the second most complicated assembly for weight prediction, surpassed only by the Wing (there's more than 3 volumes of documentation Rockwell dedicated to that guy!).
  • After a functional Fuselage primary structure module, and perhaps started before in support of the synthesis methods, the Airloads module will be worked to derive external loading on the aircraft from basic mission requirements.
  • From that point, it may be beneficial to focus on the "simpler" sizing methods such as secondary structure, or Landing Gear (things that are mostly empirical or straight forward for weight approximations).

Current TODO List:

These should probably become their own Issues, but they will at least become their own PR's. It's easier to list them all here for now.

  • ForcedCrippling needs it's own class, so MinorFrames, Longerons, and Covers can utilize the same methods without repeating code.
  • MajorFrames need their own class for analysis methods.
  • Fuselage class needs a cut method to generate geometry for analysis by averaging the geometry between defined sections.
  • How does the Fuselage class define where all the different load points (and therefor MajorFrames) are?

Installation

You can install Hyperstruct via pip from PyPI:

$ pip install hyperstruct

Usage

Please see the Command-line Reference for details.

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

License

Distributed under the terms of the MIT license, Hyperstruct is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Credits

This project was originally generated from @cjolowicz's Hypermodern Python Cookiecutter template. Benjamin Crews is the creator and primary owner, with significant contributions from I. Maloney. Creation of this project would not be possible without the thorough documentation from Rockwell International (various authors).

Project details


Download files

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

Source Distribution

hyperstruct-0.0.10.tar.gz (32.0 kB view details)

Uploaded Source

Built Distribution

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

hyperstruct-0.0.10-py3-none-any.whl (31.4 kB view details)

Uploaded Python 3

File details

Details for the file hyperstruct-0.0.10.tar.gz.

File metadata

  • Download URL: hyperstruct-0.0.10.tar.gz
  • Upload date:
  • Size: 32.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hyperstruct-0.0.10.tar.gz
Algorithm Hash digest
SHA256 4a80e5dffba95973ffede847eb11b76e0e734802a2abb1ecf9db25bfdb183dc0
MD5 fc1b895462c1b15b411adb9deeb53ea3
BLAKE2b-256 e05f13fbae2ff9bac078aaed7d122804ddbee34918184b4079b6971cdf2b2e44

See more details on using hashes here.

File details

Details for the file hyperstruct-0.0.10-py3-none-any.whl.

File metadata

  • Download URL: hyperstruct-0.0.10-py3-none-any.whl
  • Upload date:
  • Size: 31.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hyperstruct-0.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 1c9721082c63eb7c5998ff7416de13c4a7c031a362c15b61681975f7bd39941e
MD5 f8b12e8dcfdd5270da90eb8716c47a13
BLAKE2b-256 586be94edaef41a12cef9caf5e55a80a27166374b21ba289e8c0957f0324fe14

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page