Documentation /  Structural Mechanics /

Table of ContentsCross-Sectional Properties

Chapter 1 Introduction to Structural Mechanics

1.1 About This Package

Structural Mechanics is a collection of Mathematica packages that address computational problems in analyzing elastic structural elements. The design of the package uses the symbolic capability of Mathematica so that the package functions can be used as an interactive engineering "handbook." While many results are given in closed form, Structural Machanics incorporates some inherently numerical techniques, such as the finite element method, by utilizing Mathematica's rich numerical facilities.

The functions contained in Structural Mechanics are designed for professional engineers, educators, and students of engineering mechanics in mechanical, civil, and aerospace engineering. In practice, the engineer can adopt Structural Mechanics to perform analyses of elastic structural elements along with other professional engineering analysis tools. Coupled with the seamless computational features of the Mathematica environment, Structural Mechanics provides a flexible hands-on computational environment in which to perform computational experiments without getting bogged down by the details of computer implementation. In this way, for example, engineering students could be introduced to fundamental concepts of parametric design, which is gaining momentum in design and analysis circles. Mathematica and the functions in this package are flexible problem-solving tools in which engineers and students examine computational and mathematical issues involved in problem solving. Using the functionality of Structural Mechanics, it is possible to implement many useful design methodologies in the Mathematica environment.

The main engineering mechanics topics covered in the Structural Mechanics package are as follows:

FilledSmallCircle cross-sectional properties of two-dimensional shapes

FilledSmallCircle bending of beams

FilledSmallCircle torsional analysis of beams

FilledSmallCircle two-dimensional finite element analysis

FilledSmallCircle analysisanalysis of stress at a point

FilledSmallCircle equations of elasticity theory

A complete set of mathematical definitions and the engineering concepts used in the Structural Mechanics package are beyond the scope of this document. For the formal definitions of the concepts and the theories underlying the functions in the Structural Mechanics package, consult the books given in the References Section.

In this manual, a basic knowledge of Mathematica is assumed. For further information on Mathematica, consult the standard Mathematica reference: Stephen Wolfram, The Mathematica Book, 4th ed., (Wolfram Media/Cambridge University Press, 1999). Full descriptions of the functions from the standard Mathematica packages are available in the manual Mathematica 4 Standard Add-on Packages, (Wolfram Media/Cambridge University Press, 1999).

1.2 Organization of This Manual

The Structural Mechanics manual presents a number of Mathematica packages that address topics in engineering mechanics. First, it introduces many symbolic and numerical functions for computing the area, centroid, and area moment of inertia. Next it demonstrates the use of these functions in beam and torsion analysis when structural topics are examined. Finally, it introduces the two-dimensional finite element method and the functions for the equations of the elasticity theory. Chapters 2 to 7 are organized as described in the following.

Chapter 2

In engineering analysis and design, the cross-sectional properties of two-dimensional objects are widely used. The cross-sectional properties are essential, for example, in the bending of beams and torsional analysis. Structural Mechanics utilizes both the numerical and the symbolic facilities of Mathematica in calculating the common cross-sectional attributes, such as the area, centroid, and moment of inertia of two-dimensional domain objects. You can also use these attributes for both basic domain objects and composite sections created by arranging the basic domain objects, which include rectangular, triangular, circular, and elliptical sections, and parallelograms. You can add basic objects to Structural Mechanics' SymCrossSectionProperties if a need occurs. A composite section consists of a number of basic domain objects. Structural Mechanics includes the well-known composite cross sections, such as T-sections, I-sections, and channel sections, as built-in domain objects. For other composite cross sections, such as L-sections and Z-sections, Structural Mechanics includes a simple procedure to create new cross sections from the basic domain with a number of examples. You can calculate the cross-sectional properties of these basic and composite sections both symbolically and numerically. More complex domains define the boundaries of a cross section by using polygons. You can also calculate, but only numerically, the same domain attributes for such complex domains using the functions in the package NumCrossSectionProperties. The numerical techniques are based on a triangulation schema and an integration-in-a-triangle routine. Chapter 2 also includes several examples of complex sections.

Chapter 3

In many engineering structures, such as automobiles, airplanes, buildings, and bridges, cantilever beams are widely used as a main structural element receiving bending forces. The package BeamAnalysis provides a number of computational and graphical tools in stress analysis of cantilever beams. BeamAnalysis enables numerical and symbolic calculation of bending functions, stress fields, and deflection of a beam. The solutions included in BeamAnalysis are based on Saint-Venant's semi-inverse method of calculating stress functions. Since some of the formulas used in beam analysis are in series form, the symbolic results are useful in examining the convergence of results, especially in stress computations. You can also use the two- and three-dimensional graphical functions to generate illustrative representations of deflected beams under bending loads.

Chapter 4

Like the bending of beams, torsional analysis has also been of practical interest to engineers for a long time. Structural elements subjected to twisting forces are used in many engineering applications, including engine shafts, airplane wings, and columns in buildings. In the package TorsionAnalysis, closed-form solutions for a number of cross sections are available. You can calculate the cross-sectional constants, such as twist and torsional rigidity, for these built-in cross sections. You can also generate the stress and displacement fields, as well as the torsion stress function, in closed-form. Structural Mechanics provides graphical tools to illustrate the visual aspects of the torsion analysis. You can see the lines on a twisted bar, for example, using the function TorsionPlot. Also, you can draw the rotation of a cross section at an arbitrary station point with respect to its original position. In addition to the TorsionAnalysis function, many built-in Mathematica graphical functions are adopted to demonstrate various aspects of Structural Mechanics in Chapter 4.

Although the main emphasis of Structural Mechanics is on the closed-form expressions for the torsion stress functions, and consequently on stress and displacements fields, a geometric method to obtain stress functions for a class of cross sections is also presented with some examples. This method is based on the polynomial form of solution to the torsional stress equations, a theorem originally proven by Saint-Venant. As a result of this theorem, torsion stress functions for many useful cross-sectional shapes are obtainable using a hybrid geometric-algebraic approach.

Chapter 5

Many engineering fields have adopted the finite element method as the major analysis and design tool. Structural Mechanics introduces a set of tools that you can use to explore the main techniques of the finite element method, such as construction interpolation functions. In addition, Structural Mechanics includes a finite element code to calculate nodal forces and displacements for two-dimensional problems. It also features a number of graphical tools to visualize the results. While this code is limited to plane stress and plane strain cases, material properties need not be isotropic.

You can use the functions to calculate one- and two-dimensional shape (interpolation) functions for Lagrange, Hermite, triangular, rectangular, and serendipity types of elements. You can generate almost all shape functions found in textbooks with these functions. Moreover, a general methodology for creating shape functions for new elements is also included. With this feature, you can design your own interpolation functions and elements, and test them against other elements using the functionality offered in Structural Mechanics. Such exercises in constructing user-defined interpolation functions can be invaluable to students of the finite element method as well as to practitioners. Structural Mechanics provides many graphical functions for drawing explanatory pictures of the locations of nodal points and the forms of shape functions.

In Chapter 5, solutions to a number of finite element problems from well-known textbooks are provided. The effect of meshing in finite element computations is discussed with many examples that solve the same problems using different meshes. Examples also demonstrate that the mesh can also be generated with the built-in Mathematica programming constructs and mappings, which are usually created by interpolation functions. The results obtained in a finite element analysis session are illustrated with the graphical functions presented in Chapter 5.

Chapter 6

The StressAnalysis package provides a number of tools to manipulate and illustrate the state of stress at a point in a continuum. The state of stress at a point in an elastic body is determined by six independent stress components. The stress state is specified by a second-order symmetric Cartesian tensor, which is also known as the stress tensor. The values of these stress components change with the orientation of the axis system in which each stress component is defined. The axis system can be rotated such that some practical issues about the stress state at a point can be studied. For example, certain stress components can be reduced to zero in a particular orientation of the axis system.

Using functions in the StressAnalysis package, you can obtain useful information about the stress state at a point. For instance, you can use the functions for computing the principal stress components and principal stress direction from a stress tensor. You can also compute maximum shear stress and its directions and use the graphical functions to plot the principal stress planes and directions. Mohr's circles can be drawn directly from the state tensor. A number of examples illustrating the use of these functions are provided in Chapter 6.

The state of stress is usually studied to determine a single failure criterion from the stress tensor. From a number of proposed theories in predicting material failure, three of the most commonly used are presented:

FilledSmallCircle maximum normal stress theory

FilledSmallCircle maximum shear stress theory

FilledSmallCircle distortion energy theory

Chapter 7

The equations of the linearized theory of elasticity, such as constitutive relation and equilibrium equations, are usually quite lengthy when they are expanded from their compact forms for an analysis. As a result, these equations are both difficult to remember and tedious to manipulate by hand except for overly simplified examples. The package GoverningEquations provides a systematic way to access these equations. The equations are formatted in two ways: text and indexed. In text form, the components are represented as Mathematica functions. For instance, sigma[x,y] represents the xy stress component, , in text form. In indexed form, the indices are used instead of the function brackets to specify the directions of stress, strain, and internal force components.

The package GoverningEquations provides equations in three different coordinate systems: Cartesian, polar, and spherical. You can generate symbols for stress and stress components in a desired coordinate system. There are functions for constitutive relation and equations for equilibrium and elastodynamics. A function for converting between various elastic coefficients is provided as well. Chapter 7 contains many examples on the use of these functions.

1.3 Functionality and Organization of Packages

In addition to a number of packages from the Mathematica 4 Standard Add-on Packages, Structural Mechanics contains the following twelve Mathematica packages.

Packages employed in Chapter 2 of this manual include SymCrossSectionProperties, NumCrossSectionProperties, and TriangulatePolygon from Structural Mechanics along with the packages Graphics`Arrow, Graphics`Graphics, and Miscellaneous`Units, from the Mathematica 4 Standard Add-on Packages.

Packages used in Chapter 2.

In Chapter 3, many functions from the packages BeamAnalysis and SymCrossSectionProperties are employed.

Packages used in Chapter 3.

Chapter 4 includes the functions in the following packages. The package Algebra`ReIm is from the Mathematica 4 Standard Add-on Packages.

Packages used in Chapter 4.

Chapter 5 includes the functions in the following packages.

Packages used in Chapter 5.

Chapter 6 includes the functions in the following packages. The packages Graphics`Graphics and Graphics`FilledPlot are from the Mathematica 4 Standard Add-on Packages.

Packages used in Chapter 6.

Chapter 7 uses the functions in the following package. The package Calculus`VectorAnalysis` is from the Mathematica 4 Standard Add-on Packages.

Packages used in Chapter 7.

1.4 Loading the Package

To access all of the functions in Structural Mechanics, all you need to do is load the file StructuralMechanics`init.m` by typing the following line in a Mathematica 4 notebook.


Once StructuralMechanics`init.m` is loaded, the appropriate package will load automatically when you call a function in that package from the Mathematica environment. So, in addition to the execution time of a function, some delay will occur when you first load a package.

Table of ContentsCross-Sectional Properties