Skip to main content

FramAT (Frame Analysis Tool) is a tool for 3D FEM beam analyses

Project description

Latest PyPI version Documentation Status License Build status Coverage


FramAT Logo

FramAT (Frame Analysis Tool) is a tool for FEM beam analyses. Currently FramAT provides a full implementation of 3D Euler-Bernoulli beam theory, also known as standard engineering beam theory.

FramAT Logo


Installation

pip install framat

To update an existing installation:

pip install --upgrade framat

Getting started

If you have installed FramAT, you may want to have a look at the Getting started guide.


Example

FramAT provides a user-friendly, easy-to-read Python interface which can be integrated in complex workflows. Try it yourself. Just import the Model object from the FramAT library, and define your model:

from framat import Model

model = Model()

mat = model.add_feature('material', uid='dummy')
mat.set('E', 1)
mat.set('G', 1)
mat.set('rho', 1)

cs = model.add_feature('cross_section', uid='dummy')
cs.set('A', 1)
cs.set('Iy', 1)
cs.set('Iz', 1)
cs.set('J', 1)

beam = model.add_feature('beam')
beam.add('node', [0, 0, 0], uid='root')
beam.add('node', [1, 0, 0], uid='corner')
beam.add('node', [1, 1, 0], uid='tip')
beam.set('nelem', 10)
beam.add('material', {'from': 'root', 'to': 'tip', 'uid': 'dummy'})
beam.add('cross_section', {'from': 'root', 'to': 'tip', 'uid': 'dummy'})
beam.add('orientation', {'from': 'root', 'to': 'tip', 'up': [0, 0, 1]})
beam.add('point_load', {'at': 'corner', 'load': [0, 0, -1, 0, 0, 0]})

bc = model.set_feature('bc')
bc.add('fix', {'node': 'root', 'fix': ['all']})

pp = model.set_feature('post_proc')
pp.add('plot', ['undeformed', 'deformed', 'nodes'])

model.run()

Please refer to the documentation for more information.


Additional information for developers

For developers: Recommended packages may be installed via requirements.txt.

pip install -r requirements.txt

License

License: Apache-2.0


⚠ Note

Starting from version 0.3.2 to 0.4.0, the interface for FramAT has changed completely to a more user-friendly Python API. Please refer to the documentation for updated instructions and examples.

Older development versions can still be found under the releases (not recommended). The current interface is still under development.

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

framat-0.5.tar.gz (24.4 kB view details)

Uploaded Source

Built Distribution

framat-0.5-py3-none-any.whl (28.9 kB view details)

Uploaded Python 3

File details

Details for the file framat-0.5.tar.gz.

File metadata

  • Download URL: framat-0.5.tar.gz
  • Upload date:
  • Size: 24.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.7

File hashes

Hashes for framat-0.5.tar.gz
Algorithm Hash digest
SHA256 d9ef1f762dd079b0725e2faa9c5500bb328de75d329749d29ac3dc22cf44eca9
MD5 896b20f6b34001c6d3e32a356e6081ed
BLAKE2b-256 e5f93603e396a5dc4cb2da3e199a34a43c9d29beef392883bcb62a6036255573

See more details on using hashes here.

File details

Details for the file framat-0.5-py3-none-any.whl.

File metadata

  • Download URL: framat-0.5-py3-none-any.whl
  • Upload date:
  • Size: 28.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.7

File hashes

Hashes for framat-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 31eee9729acc20ae21e255fd6aa022de8e1a4bbc8189010987eb6e3579c24631
MD5 b20fa02ac6ca3792c4bce84935830f5c
BLAKE2b-256 e1584201f694ef7a094b04984af8a4494639347b87d6d2cce371d07cc6307630

See more details on using hashes here.

Supported by

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