Solve for dimensions of rectangular prism given inertia

  1. Dec 25, 2010 #1
    I am trying to solve something of an inverse problem for inertia, and having a real tough time with it. Any suggestions would be helpful.

    For a rectangular prism the mass and moments of inertia are:
    m = rho*A*B*C
    Ixx = m/12*(B^2 + C^2)
    Iyy = m/12*(A^2 + C^2)
    Izz = m/12*(A^2 + B^2)

    Where m is mass, rho density, A width, B length, C height, and Ixx, Iyy, Izz are the principal moments of inertia. My problem involves a hollow rectangular prism, with wall thickness t. So the equations then become:

    mOuter = rho*A*B*C
    mInner = rho*(A-2*t)*(B-2*t)*(C-2*t)
    m = mOuter - mInner
    Ixx = mOuter/12*(B^2 + C^2) - mInner/12*((B-2*t)^2 + (C-2*t)^2)
    Iyy = mOuter/12*(A^2 + C^2) - mInner/12*((A-2*t)^2 + (C-2*t)^2)
    Izz = mOuter/12*(A^2 + B^2) - mInner/12*((A-2*t)^2 + (B-2*t)^2)

    To see how these equations work imagine taking a rectangular prism and subtracting out a smaller rectangular prism from the inside. Given length (A), width (B), height(C), thickness (t), and density (rho) I can easily solve for the mass and moments of inertia. What I would like to do is given m, rho, Ixx, Iyy, and Izz solve for A,B,C, and t. I tried doing the hand-calc to solve the 4 equations for the 4 unknowns and quickly ran into a seemingly intractable 15th-degree polynomial in t with tons of unknown coefficients. If anyone has any ideas on how to solve this I would greatly appreciate it. It doesn't have to be a closed form solution (though that would be best), iterative or other methods would work as well.

    Any ideas?
  2. jcsd
  3. Dec 26, 2010 #2

    Filip Larsen

    User Avatar
    Gold Member

    Welcome to PF!

    If you want to pursue a numerical solution coded by yourself (as opposed to using a numerical solver in, say, Matlab or Mathematica), one of the standard tools in that toolbox would be to try solve it using Newton-Raphson [1] on your system of equations. If you want to try that, you should probably write it up as a system of equations of 4 unknowns and 4 knowns, as density is just a scale factor, and note that you can break symmetry in A, B and C by restricting the solution to [itex]A \geq B \geq C > 2t > 0[/itex] and make an initial guess that is asymmetric, like for instance [itex] B = A/2, C = A/4, t = A/16[/itex] which should give the initial guess [itex]A^3 = \frac{512}{43}\frac{m}{\rho}[/itex].

  4. Dec 27, 2010 #3
    Thanks for the reply! I finally did try a newton-rhapson method coded in c++, and it seems to work pretty well. I've been using the eigenvalues of the inertia tensor as the initial guess, with some fraction of the smallest value as the thickness. I have noticed that it will periodically converge to a non-physical value (i.e. A,B,C or t less than zero), but in this case taking the absolute value of the non-physical answer and putting that back into the iterative solver seems to come up with a different (and realistic) solution. Not sure if there is a better way to ensure that the solution lands in the positive quadrant...perhaps a boundary function of some sort?
  5. Dec 27, 2010 #4

    Filip Larsen

    User Avatar
    Gold Member

    I'm probably just stating the obvious here, but anyway:

    If the non-physical solutions pop up after a large jump in state (due to a small-magnitude Jacobian giving rise to a large state change) you could try limit the magnitude of the state change.

    If the non-physical solution appears during a normal "slow" convergence sequence, then your initial guess must belongs to the attraction basin of that solution and a different initial guess is (as you say) obviously needed, probably one where the value for A, B and C are more equal in magnitude. If non-physical solutions are a real problem a practical "work-around" may be to map out the attraction basins of different initial guesses to see if there is a class or pattern of initial guesses that always converge to the physical solution and then stick to those.

    If I recall correctly, there should also be a fair bit of convergence theory which may help you if you want to analyse convergence in a more theoretical way, although I'm not sure how well it will apply to your non-linear system.
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Similar Discussions: Solve for dimensions of rectangular prism given inertia