Machine Design

Lisp Program Calculates Sectional Properties

Raymond F. Gardner
Assistant Professor of Engineering
United States Merchant Marine Academy
Kings Point, N.Y.

In the mechanical design of equipment and systems, sectional properties, such as centroid and moment of inertia, are necessary for calculating stresses, deflections, and buckling. In fact, formulas for common cross sections like I-beams and other shapes are found in most mechanical design reference books. But when shapes are complex, more advanced methods are required to determine the necessary values. Programs can be written within CAD packages to find sectional properties for any cross section. One way to write such a program is with AutoCAD’s AutoLisp language, which directly accesses a drawing’s database. The challenge is writing a program to calculate sectional properties using standard AutoCAD hatching commands.

Because all other sectional properties can be determined once you find the area, centroid, and first and second moments of area, the task is to calculate these values first. An initial step is to let the CAD program crosshatch the area and then extract the hatch information in a form that’s useful for additional calculations.

After examining the random methods that AutoCAD uses to hatch areas, it becomes apparent that the classical method of summing square differential areas in an X and Y direction is impractical. This is because the differential areas are essentially impossible to identify from the hatch pattern and are not always square. Therefore, the approach does not use conventional square differential elements. Instead, the approach makes use of each hatch line as a completely independent entity. To quicken the execution, hatching is done in one direction only. This minimizes the number of hatch lines and reduces the number of program accesses to the drawing database during calculation.

The approach uses rectangular differential elements, a shape of known sectional properties, where height is the spacing between hatch lines and width is the length of the hatch line. By making the height of the differential element small enough, numerical integration meets accuracy requirements. Once all differential elements have been defined using the hatch command, the CAD program sums them as follows:

dA = Lhdy

A = ∑dA = ∑Lhdy

Next, the program finds the centroid and moment of inertia. The centroid is a sectional property used in bending stress calculations to help locate the neutral axis where normal (axial) stresses due to bending are zero. The moment of inertia is a measure of a shape’s ability to resist bending. Both values are found relative to the CAD program’s X axis, at Y = zero, using the equation:



While the same process can be applied to the Y axis, using the X-axis data to calculate Y-axis properties saves execution time. Since each differential element forms a rectangle, and formulas exist for determining rectangular sectional properties, these properties are determined about the centroid of each differential element. The differential rectangular properties are then referenced to the Y axis, at X = 0, using the parallel axis theorem. Sectional property formulas for a rectangle are:



This equation leads to:








The results from the numerical integration calculations are the CAD program’s global Cartesian coordinates for centroid and moment of inertia about the X and Y axes. The final output locates and draws the centroidal X and Y axes on the screen after transferring the moment of inertia from the X-Y axes to the centroid using the parallel axis theorem.

Once the moment of inertia is transferred to the centroid, the remaining properties are calculated using:

J = Ix + Iy








If the calculation finds a nonzero product of inertia, the program calculates the skew angle for the principal axes. It also calculates the sectional modulus, maximum and minimum moment of inertia, and radius of gyration. These values come from using sectional properties that the program calculated earlier. The radius of gyration is used when designing columns to resist buckling.

Initial calculated properties are area, centroid, first moment of area, and moment of inertia. Area is useful for estimating weight and calculating simple stresses, such as tension or compression, using the relation:

σ =



The first moment of area is the sum of all differential areas of a cross section multiplied by each differential area’s moment arm. The value is found using the equations:

Qx = ∫ydA

Qy = ∫xdA

The first moment of area is also used to calculate the distribution of shear stress due to bending with the equation:

t =



Once the first moment of area is calculated, the centroid is located with the equations:

In strength of materials, modulus of elasticity and moment of inertia define a beam’s stiffness. Modulus of elasticity, a measure of a material’s stiffness, is determined by testing, while moment of inertia is a function of the cross-sectional geometry. The value is found by multiplying the first moment of area by the moment arm a second time, like this:

Ix =∫y2dA

Iy = ∫x2dA

The moment of inertia multiplied by the modulus of elasticity gives a measure of a beam’s overall stiffness and allows quick comparison of bending stiffness of different beams. These properties are used to calculate stress and deflection as follows:

σ b=







(e.g., simply supported beam midspan load).

The moment of inertia about an arbitrary set of axes is not useful in most strength calculations. However, the moment of inertia is very useful when transferred to the centroid using the parallel axis theorem. The parallel axis theorem is:

Ip = I + Ad2

When the Lisp program calculates these fundamental sectional properties, they are used to find the product of inertia, polar moment of inertia, and radius of gyration. Formulas for these properties originally contain integrals but simplify to algebraic expressions when they’re referenced to the centroid.

When a beam is asymmetrical, the maximum and minimum moments of inertia are not around the X-Y axes. In this case, the product of inertia is used to calculate the maximum and minimum moments of inertia and the skew angle of the principal axes. If either the X or Y axis is symmetrical, the product of inertia is zero. When both reference axes are asymmetrical, the values are found using:

Ixy = ∫xydA

The polar moment of inertia is used in torsional strength and deflection problems. By definition:

J = ∫(x2+ y2)dA

Taking the polar moment of inertia about the centroid translates the formula into:

J = Ix + Iy

The polar moment of inertia is used to calculate shear stress and angular deflection:

t = Tr






When a column’s effective length is divided by the radius of gyration, the resulting number is called the slenderness ratio and is a measure of the column’s susceptibility to buckling. The radius of gyration is used in the formulas:

© 2010 Penton Media, Inc.

Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.