I'm trying to calculate the maximum deflection in a simply supported member with a uniformly distributed load. The trouble is this member does not have a constant area moment of inertia. I've drawn a simplified version of the specific problem I'm trying to solve: Example Model

I'd like to treat this problem like this case except I don't know how to account for the changing I. Simple Beam - Uniformly Distributed Load

So clearly the maximum deflection will occur at the center, but what methods can I use to account for the changing value of I?

I see that the problem could be broken up into chunks. The back plate and the first two inches of the rib are constant along the length, and then the part that changes could be broken up into three sections. First section would be the increasing slope of the rib, second section is the long constant portion of the rib, and the third section is the decreasing slope of the rib. I've found examples online about how to deal with connected beams of different I values, but the issue here is I changes as you go along the length for sections one and three.

I've found a guide here that gives the formula v"=M(x)/(EI(x)) and then you integrate and solve for boundary conditions, but my I value is more complicated than the first two examples on that site.

I've also tried to look into Castigliano's Theorem but I'm already a bit confused without even getting into the fact that M and I are both dependent on x.

The actual geometry of the part I'm working with is slightly more complicated than the example I've given, but I think I'd be able to adapt the solution for this problem to my actual problem. I'd like to solve this problem using Excel or MATLAB/Octave because there are other sizes I need to solve for. Ultimately, I need to use this solution process to optimize for an ideal rib length which is why I plan to use Excel or MATLAB/Octave. I have access to ANSYS Mechanical, but my intuition tells me once I figure out how to solve this, future calculations would be done much quicker in Excel or MATLAB/Octave instead of ANSYS.

Any tips or ideas of how to approach this would be very appreciated. Thank you.

  • $\begingroup$ Lets say that z is the vertical axis and y is the horizontal axis of the section. Use $I_y = \int(z^2)dA$, A is the area. $\endgroup$
    – Ben2014
    Oct 23, 2020 at 1:28
  • $\begingroup$ you've looked at the most commonly used analytical methods. However this is not a trivial problem (at least in terms of calculations). So you either need to dig a little deeper, or the other solution is use a numerical approximation like FEM. $\endgroup$
    – NMech
    Oct 23, 2020 at 3:20

2 Answers 2


There are two aspects to this problem that are each significantly more complicated than what you seem to have tried so far:

  • The angle of 45 degrees by which the cross section is changing dimension is just too much for the usual approximations to make sense. At such a large angle, plane section will not remain plane and the standard beam equations no longer apply. You can't use Navier's formula for the stresses in the cross section and the curvature will no longer equal M/EI. As a crude rule of thumb, you will get into trouble when the cross section changes in dimension by more than approximately 1:3 or about 18 degrees. If this was the only problem, you could probably do a pretty good approximation by notionally removing two triangles of material and calculating the moment of inertia as if the height changed by no more than 1:3.

  • The web is off-center relative to the flange. This means the principal axes of the cross section aren't parallel and perpendicular to the load but at a skew angle. So you have biaxial bending and need to consider deflections in two directions. For a beam with constant cross section this isn't too much of a bother — you calculate a deflection about each axis and do a vector-sum of the results afterwards ­— but you also have the angle of the principal axes varying along the length. This means the angle of the line of zero stress and thus the direction of curvature will vary along the length of the beam.

If you didn't have either of these two complications, the solution would be straightforward:

  • Divide the beam into a significantly large number of sections,

  • Calculate a moment of inertia for each cross section,

  • Calculate the bending moment at each cross section,

  • Integrate the differential equation $v"=\frac{M(x)}{EI(x)}$ twice and remember the two integration constants,

  • Find the value of the intregration constant that satisfy a deflection of zero at the ends (since the beam is simply supported there), and you would be done.

But I do not recommend attempted to solve this accurately by hand. Finite element analysis can get you a pretty good approximation, but otherwise the best you can do is to calculate a safe upper and lower bound of the deflection using simplified beam geometry.

  • $\begingroup$ Thanks very much for the detailed response. Given a max allowable deflection for each size, Im going to calculate a minimum constant area moment of inertia. I'll then test each actual size (with the chamfered corners) in ANSYS to see the actual deflection. I'll use the actual deflection to back calculate a constant moment of inertia that would produce that deflection. Doing this across multiple sizes and plotting the difference in moments of inertia may allow me to determine an approximate correction factor for the moment of inertia. The chamfer lengths are proportional to rib length $\endgroup$ Oct 23, 2020 at 20:41
  • $\begingroup$ The ingenord answer is right, though , there is a book called “Advanced Structural Analysis with Matlab” that have a problem like this in the first chapter using conjugated beam as theorem ! $\endgroup$ Nov 30, 2020 at 12:26

I know in SolidWorks, I would assume most other CAD packages as well, can give you that information from a model. It looks like you used SW for your drawing, so in the model go to Options -> Mass Properties and it'll give you the moment of inertia. No math required.

  • $\begingroup$ Thank you for your reply. I did make the model in SolidWorks, but the Moment of Inertia from the Mass Property window has the units lb*in^2. I need the Area Moment of Inertia which is a geometric property found in the Section Property window with units in^4. The area moment of inertia depends on the cross section of a member and the location of the axis of rotation. The cross section of my member changes along it's length which means the area moment of inertia does as well. I've taken two screen shots showing the Mass Property and Section Property windows: imgur.com/a/8tcIRaT $\endgroup$ Oct 23, 2020 at 15:42
  • $\begingroup$ My bad. If you have access to the FEA plugin just use that, saves a lot of time if your design goes through multiple iterations. I have no other useful input. $\endgroup$
    – jko
    Oct 23, 2020 at 16:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.