CountryPlans Forum

Internet Finds for Designer/Builders => Referral Links => Topic started by: Medeek on July 27, 2020, 07:30:34 PM

Title: Engineering Plugin for SketchUp
Post by: Medeek on July 27, 2020, 07:30:34 PM
When you click on the "Draw Load/Support" icon of the beam load/support toolbar you will be presented with this matrix menu:

(https://aws1.discourse-cdn.com/sketchup/original/3X/a/a/aa4eaf5aaabd422dc1cd3fd23d0534493037259b.jpeg)
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on July 29, 2020, 08:27:37 PM
Still working on how best to graphically represent the various loads and supports but this a bit of a preview of how it will go:

(https://aws1.discourse-cdn.com/sketchup/original/3X/6/1/61c9f0316ba58464abefb7fd6def11fdc0475871.gif)
Title: Re: Engineering Plugin for SketchUp
Post by: Don_P on July 29, 2020, 09:12:09 PM
Sweet!
For inputs ideas;
This is the standby for dimensional sticks;
https://awc.org/codes-standards/calculators-software/spancalc

I needed sticks, built up beams and solid sawn of any dimension and species so have some different inputs;
Dimensional, NDS table 4a
http://www.timbertoolbox.com/Calcs/ddsimplebeam.html

Heavy timber, table 4d;
https://forestryforum.com/members/donp/beamclc06b.htm

Oh, often enough its uniform with point load(s)
Well and then combined, an open pavillion post beam and brace in the wind.
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 05, 2020, 11:54:21 PM
The loads and supports will be on the Eng layer, annotations will be on Eng2 and warning graphics will be on Eng3.

Here is an example of some point loads applied to a timber beam, now I just need to setup annotations:

(https://aws1.discourse-cdn.com/sketchup/original/3X/e/8/e8e773954addac2a41432dca16c60e8968737e4b.jpeg)

The different color arrowheads indicate one of the six load types (Dead, Live Floor, Live Roof, Wind, Snow, Seismic).  The colors assigned to each load type will be able to be customized in the global settings.  The size of the arrowheads will also be customizeable.

Regenerating the beam geometry will not regen the loads, there will be separate context menu item (right click the beam) to regen the engineering loads/supports.
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 06, 2020, 03:07:57 AM
An example of point loads with Load Labels and Magnitudes turned on:

(https://aws1.discourse-cdn.com/sketchup/original/3X/8/b/8bd9ddb82f8093154fd942b0b7e25a2603b5f697.jpeg)
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 07, 2020, 08:35:42 PM
An example of some distributed and point loads applied to a steel (W) beam:

(https://aws1.discourse-cdn.com/sketchup/original/3X/2/2/22e683dccd8e4981ffd08354ef06bb3e23366062.jpeg)

I could also do something like this for the distributed load representations, thoughts?

(https://aws1.discourse-cdn.com/sketchup/original/3X/1/6/160711e62876d4de79b5bfecd7f48eb9ea601dce.jpeg)

Now I just need to add the supports and we are done with the engineering geometry.

After that I need to figure out the finite element analysis (matrix analysis) engine that will be used to calculate the shear, moments and deflections of the beam (single or multi-span).  Since the number of loads and supports is potentially unlimited there is no one classical equation that will solve this problem:

https://www.awc.org/pdf/codes-standards/publications/design-aids/AWC-DA6-BeamFormulas-0710.pdf
Title: Re: Engineering Plugin for SketchUp
Post by: Don_P on August 07, 2020, 10:08:48 PM
The second one is easier on my eye.
I'd normally have the distributed load with the point load sitting on it at some location.
In some cases it may be a load uniformly increasing from end to end and then a point load or several on it, say a valley with snow and then a few widely spaced heavy timber purlins bearing on it.
It is going to be interesting to code. My beam calcs are mostly right out of DCA6, this is going to have to blend and sum several at once. I know its possible but beyond me, good luck!

On the back burner then think about combined bending from all that and an axial load.
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 08, 2020, 04:26:59 AM
An example of a beam with loads and supports:

(https://aws1.discourse-cdn.com/sketchup/optimized/3X/1/e/1e538dc6d640302ea2044c2c010f5d0a85f2ddf6_2_690x429.jpeg)

Clicking the control key allow the user to insert supports by their center and then bearing length.

View model here:

https://3dwarehouse.sketchup.com/model/9e576bc8-88cd-4a71-9b47-3c0298b6e823/Beam-Engineering-3
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 08, 2020, 04:41:45 PM
Insertion of a support:

(https://aws1.discourse-cdn.com/sketchup/original/3X/5/5/55dad3ea463a71671bbe134637ee1b86aee4ad8c.gif)
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 09, 2020, 05:01:32 AM
When you assign a support with blocking (lateral bracing) then it will be drawn with a dashed line (both sides of beam) as shown to indicate that bracing is being provided at that location:

(https://aws1.discourse-cdn.com/sketchup/original/3X/a/2/a2b1ebbf16deb3e787e9b5b1f198ebd74640cc7a.jpeg)
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 10, 2020, 12:07:00 AM
Editing a support:

(https://aws1.discourse-cdn.com/sketchup/original/3X/e/7/e75bf65e90bdb256c56bd1c3fec28fd37e55e9cc.jpeg)
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 10, 2020, 07:49:40 AM
The beam engineering geometry features are now complete.  You can now add, move, delete or modify an unlimited number of supports, distributed loads and point loads.  If the beam itself is modified there is also a function to regenerate all of the engineering geometry to properly match the updated beam width and depth.

The next step will be to work on the actual engineering engine (FEA) and add in additional engineering (global) parameters.  Some of these parameters will be things like deflection limits etc...
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 11, 2020, 05:56:30 AM
Moving a distributed load:

(https://aws1.discourse-cdn.com/sketchup/original/3X/a/3/a351dc7a76b462ff91f19f84dacd2ab1e704cc0d.gif)

It may be more intuitive to select the distribute load and then select whether to move the start or end point, rather than just moving it by its center point.  Granted, one can modify the start and end locations within the edit menu.
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on March 14, 2021, 05:46:48 AM
Version 0.8.0 - 03.14.2021
- Created the Medeek Engineering Plugin, utilizing SketchUp's Ruby API (BETA release).

I haven't paid much attention to this plugin for about 8 months as I have been so busy updating all of the other plugins (Wall, Truss, Foundation and Electrical).  When I get some more time I will get back to work on the matrix analysis engine that is required for the calculation module.  For now you should be able to add loads and supports to beams created with the beam module of the Medeek Wall plugin.

The plugin is very much in BETA right now, however I wanted to at least get it out so people can start playing with the load and support tools and give me any feedback they might have.

The BETA/Trial version of the plugin can be downloaded here:

http://design.medeek.com/resources/medeekengineeringplugin.pl

Note, that you cannot purchase this plugin yet.  I will not enable purchasing until I have completed the calculation module and brought it out of BETA status.
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 28, 2025, 11:33:20 PM
Now that I have the shear, moment, slope and deflections algorithms in place for point loads it is just a matter of algebraically adding multiple loads for more complex loading scenarios (ie. multiple loads and load cases). Here is a very simple example of two point loads applied to a two span beam. Note that self weight of the beam is not yet being considered:

(https://global.discourse-cdn.com/sketchup/original/3X/3/8/385eeda4ba64af0c9c289b1de67bfaf7f2d6550e.jpeg)

(https://global.discourse-cdn.com/sketchup/optimized/3X/2/8/28146be6f9ba776dc1497dc8fe5571a7009be6d7_2_690x466.jpeg)

(https://global.discourse-cdn.com/sketchup/optimized/3X/4/c/4c769c6c2870a907eabc28cfdf1dcef507e95582_2_690x367.jpeg)

I need to add some formatting logic into the top beam diagram to account for shorter spans so the dimensions don't run into the supports as shown. This is why a lot of testing and debugging is necessary.

This beam engineering tool with its matrix analysis engine is probably the single most complicated piece of code I've ever written, it certainly rivals the truss calculator (2013) and the complex roof (2019) module. I will admit that I now freely use ChatGPT with some of my coding puzzles lately and surprisingly it even understands the context of what I'm coding and offers suggestions to improve the accuracy and efficiency of the engine itself.

The numerical integration (for the slope and deflection) was initially stymied by incorrect boundary condition constants and I had no easy way of analytically solving for them. At that point I was fully aware of the issue but I was stumped at how to arrive at the right solution. ChatGPT suggested a normalization algorithm which proved to be correct and was even an easy fix within the algorithm. It's like having a really smart graduate student looking over your shoulder pointing out what your doing wrong and how to make it all better.
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on August 29, 2025, 01:16:04 PM
I've been wanting to finish this beam calculator for some time now so I'm trying to dig deep and see if I can't get it out the door, even if it only has the capabilities to handle wood (sawn lumber, glulam, SCL, I-Joist) beams and joists initially..

Unlike my previous web based beam calculator this new tool will be completely open ended, there will be no limit on the number of supports or loads one can assign. Each load can have up to six different load types (dead, live, live roof, snow, wind, or seismic) So in a sense it is a general solver or engine which makes it quite powerful and much more useful in my opinion.

The one other harsh reality with engineering though is that the code is always changing. I will need to continually update the tool as future revisions to the ASCE7 and NDS are released as applicable. I've noticed as I review various copies of the ASCE7 (2005 - 2022) that the load cases are continually changing, which I find a bit odd, you would think that after years of refining the code we would slowly arrive at suitable load combinations and stick with them. This constant flux is rather annoying to be perfectly honest, and makes me really question the powers that be and why they can't iteratively arrive at a standard and eventually stick with it.

We all know how the (engineering) sausage is made. Why continually tweak the recipe? The technology and materials used in the building industry has not dramatically changed in my lifetime (50+ years). All of this continual tweaking and minor adjustments to the engineering code really does nothing to safety of the structure in my mind and simply adds to the cost of engineering since new software updates are required and additional training is imposed. Maybe the ASCE needs to keep itself relevant and the revenue from selling updated pricey copies of its signature standard (ASCE7) is a serious cash cow? I don't know what the story is with all of this but I feel I need to rant a bit when I just shelled out $260.00 for a paperback book that I will only crack open once every few months at best.

Here is another screenshot of a multi-load conditional with multiple spans:

(https://global.discourse-cdn.com/sketchup/original/3X/c/3/c36c6bf81b0ccd86711ce85b6de0236599b9972f.jpeg)
Title: Re: Engineering Plugin for SketchUp
Post by: Medeek on September 01, 2025, 05:14:26 AM
I am using the stiffness method per Ch. 15 of R.C. Hibbeler's book, Structural Analysis. For intermediate loads between supports I use (FEM) fixed end moments. I'm actually still working on the matrix analysis piece. I've got point loads pretty much in place I've just got to implement distributed loads next. I suppose I could have it generate the entire polynomial for both shear and the moments since I am generating them for each applied load, it is probably just matter of using superposition on them as well.

Here is a first look at the ability to switch between various load cases for the deflection graph:

(https://global.discourse-cdn.com/sketchup/original/3X/9/c/9cac2590ca91d276cadd8b83a675acb1d6ba4224.gif)