Skip to main content

Optimal Additive Manufacuring of Composites

Project description

OAMC

This project aims to facilitate the optimal additive manufacturing of (continuous-fiber) composites (OAMC) by providing various path planning algorithms, which take loads and constraints into account.

The subpackage oamc.lpp is based on Garth Pearce's load path plotter but faster and more flexible; it supports tetrahedral and quadratic element types, for example. The generated load paths may be used to visualize and understand the transfer of loads through the structure, directly for 3D printing, or to initialize a gradient-based optimization algorithm.

This project is part of my bachelor's thesis FEA-Driven Fiber Path Optimization for Nonplanar FDM Printing with Sparse Continuous Fiber Reinforcement at TUM.

Conventions

Docstrings adhere to the NumPy style guide.

Node and element indices are converted from 1-based to 0-based indexing upon import.

Strains and stresses are stored in standard Voigt notation [X, Y, Z, YZ, XZ, XY] and engineering shear strain convention (twice the tensorial shear strains to keep the strain energy density consistent between vector and tensor notations). Utility functions may offer multiple shear strain conventions, but engineering is always the default.

Roadmap

  • Implement fiber path mirroring in CompositeModel.

  • Add option to import target fields from text files exported from Anys Mechanical (see Section Unrelated in the docs) in order to use all of Mechanical's possibilities. Works only if only one fiber placement iteration is needed.

  • Fix footnote numbers in docs.

  • Fix

    src/oamc/utils/polylines.py:26: RuntimeWarning: invalid value encountered in scalar divide return numpy.linalg.norm(numpy.cross(u, v)) / numpy.linalg.norm(u)
    

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

oamc-0.2.3.tar.gz (53.8 kB view details)

Uploaded Source

Built Distribution

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

oamc-0.2.3-py3-none-any.whl (63.5 kB view details)

Uploaded Python 3

File details

Details for the file oamc-0.2.3.tar.gz.

File metadata

  • Download URL: oamc-0.2.3.tar.gz
  • Upload date:
  • Size: 53.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for oamc-0.2.3.tar.gz
Algorithm Hash digest
SHA256 550eaad54ca8a2d55b4b7cbae8c580296fbf3627515f0654bf370478c079825f
MD5 26ea0e8ce6c9aa1ed614c2aea7101972
BLAKE2b-256 84953be8b30c8f82beb9d86672ad8e1c021aefcc254b95c7f6192b3406e6fc7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for oamc-0.2.3.tar.gz:

Publisher: publish.yaml on nicolasebeling/oamc

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

File details

Details for the file oamc-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: oamc-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 63.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for oamc-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c93549b99273fa258c4b03ef8486b209aefa3dd743a3c9487a8258ad5d833931
MD5 e65111be432be5aca9a4de9705978ecf
BLAKE2b-256 9fdebfa2744acce3a3de6720459d1908342c87f0b9f7c334277a14067bb0a405

See more details on using hashes here.

Provenance

The following attestation bundles were made for oamc-0.2.3-py3-none-any.whl:

Publisher: publish.yaml on nicolasebeling/oamc

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

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