The 2D Truss Problem Solver is a Python-based graphical user interface (GUI) application designed to simplify the analysis of 2D truss structures. It provides an intuitive platform for inputting truss configurations and loads, conducting calculations, and visualising the resulting forces and deformations.
- Interactive GUI for straightforward input and modification of truss configurations
- Visualisation of truss structures and results
- Calculation of nodal displacements and member forces
- Results presented in a clear, tabular format
To run the 2D Truss Problem Solver, Python must be installed on your system, along with several dependencies.
- Python 3.x
numpy
matplotlib
tkinter
(should be included with Python)
The example below demonstrates how to analyse a truss with the 2D Truss Problem Solver.
Step 1: Configure Truss Geometry Enter the total number of nodes and elements. For each element, input the start node (S.N), end node (E.N), modulus of elasticity (E), and cross-sectional area (A). For nodes, provide their coordinates on the X and Y axes.
Step 2: Apply Loads and Constraints Define nodes that have prescribed displacements with values along the X and Y axes. For point loads, specify the node number and the load magnitude on the X and Y axes.
![t1](https://private-user-images.githubusercontent.com/135982304/309502695-89d0342a-77e6-4b34-ac09-fc6d414b4254.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjYxMzAwNTIsIm5iZiI6MTcyNjEyOTc1MiwicGF0aCI6Ii8xMzU5ODIzMDQvMzA5NTAyNjk1LTg5ZDAzNDJhLTc3ZTYtNGIzNC1hYzA5LWZjNmQ0MTRiNDI1NC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwOTEyJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDkxMlQwODI5MTJaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1iOWE1NTMwMDI3ZTc1MDRlNmYwMzgyNzJkMTY0NWEwY2NiOGQ3YjFlNmY5ZGE3MzhmYzkxZDk0NWQ3MDMyMzg3JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.kjmUU8ztKIObLsiJoiGLk4gCnO_0Zuw13Xyqdtg7lAY)
Step 3: Perform Analysis Move to the 'Calculation' tab to calculate the global stiffness matrix, displacements, reactions, and element stresses.
![t2](https://private-user-images.githubusercontent.com/135982304/309502764-1a200659-8e25-42c3-b020-266746e9a9a8.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjYxMzAwNTIsIm5iZiI6MTcyNjEyOTc1MiwicGF0aCI6Ii8xMzU5ODIzMDQvMzA5NTAyNzY0LTFhMjAwNjU5LThlMjUtNDJjMy1iMDIwLTI2Njc0NmU5YTlhOC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwOTEyJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDkxMlQwODI5MTJaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0xNmNjMjVmNDg3MWI5OTM5ODQyNjk2MWMyYjVhOGU2ZDBmMTg1N2UyOWNmMzNhZGM1NzhiMTNiMGM2Y2E2MzIzJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.iXqNwBx2mpbGVc2bo2tTTUy4e1T9o4XmrGFiuxHVJR0)
Step 4: Visualise Truss
Navigate to the 'Figure' tab to view the structure. It displays nodes, elements, applied displacements, and point loads.