Skip to content

cmccomb/TrussMe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

291 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

trussme

trussme is a Python library for building, analyzing, and optimizing truss structures.

Installation

trussme supports Python 3.10 and newer.

pip install trussme

The package depends on numpy, scipy, pandas, matplotlib, and tabulate at runtime.

Quick Start

import trussme

truss = trussme.Truss()
pin = truss.add_pinned_joint([0.0, 0.0, 0.0])
free = truss.add_free_joint([2.5, 2.5, 0.0])
roller = truss.add_roller_joint([5.0, 0.0, 0.0])

truss.add_member(pin, free)
truss.add_member(pin, roller)
truss.add_member(roller, free)

truss.add_out_of_plane_support("z")
truss.set_load(free, [0.0, -10000.0, 0.0])

truss.analyze()

print(truss.fos)
print(truss.mass)

Built-in Materials

Trussme ships with a small library of common engineering materials. Each record includes a source URL citing where the mechanical properties originate.

Custom materials must also provide a provenance source when added to a truss.

Project Links

License

This project is released under the MIT License.

Packages

 
 
 

Contributors

Languages