If you're not that into structural mechanics, feel free to just look at the pictures :-). This post is about a tool that will enable you to calculate how structural systems behave in two dimensions. In the (hopefully not that distant) future, I'll enable dynamic calculations.
Deformed pin-jointed truss
I haven't shared anything in a while, so I thought I write a status update on this cool (at least I think it is cool!) tool I've been working during the last few months, along with other projects. It's based on an old idea, which I thought I'd finally realize properly. The tool is able to do finite element analysis of simple structural systems in 2D. There are quite a few things I'm planning to do differently as compared to the tools out there. For example, the tool will be able to solve symbolic problems (at least simple ones) along with numerical ones.
I was thinking of making a very early beta version of the tool available along with this post, but (as is very often the case) things have taken a bit longer than expected, and other projects have been taking up my time (stay tuned for updates related to at least some of these!). So the very-early-beta release still needs some tweaking. Also, I'm not quite sure about liability issues with releasing a not-so-perfectly working version of a tool such as this. We'll see.
- I've currently implemented basic functionality for solving structural systems consisting of beams (with axial and/or moment loads according to my previous post)
- A linear elastic problem (static) is solved
The logic has been implemented in such a way that it should be relatively straightforward to extend the functionality to problems involving small amplitude (linear) vibrations, for examining vibrating systems in 2D. I'm really looking forward to getting to play around with that phase of the project. But, first things first, I've got to get static problems working properly and without any glitches.
Here are some examples of simple linear static beam structures the tool is currently able to give the correct symbolic answer to. Some background:
- The cases have been done using a nifty GUI, which I'm quite happy with
- L is half of the width of the figures (often the length of the beam)
- The magnitude of the force is F
- All cross sectional properties are given by E, I and A
- Except for the blue bars, which have a cross sectional area of
- The connections are assumed to align with the neutral axis
- A hollow node represents a hinged connection
- A filled node represents a stiff connection
- The positive x-axis points towards the right
- The positive y-axis points downwards
The nodes are numbered from the left to the right, so just count them from the left if you want to validate the results. There are quite a few analytical formulas available for these situations if you try searching online.
Case 5, (positive to the left)
The results coincide with solutions such as these, which means that everything is working properly (woohoo)!
So far, the GUI has been the most demanding part of the project. There's still a lot to be done. Static calculations might be something the average structural engineer finds even more useful than dynamic calculations, so those are currently my top priority. Still, the really cool stuff (in my opinion) will be possible once you'll be able to investigate dynamic systems, which is helpful for both acoustical/vibration consultants and structural engineers alike!