Intro to FEM by Carlos Felippa.pdf

March 17, 2018 | Author: AhmedButt | Category: Finite Element Method, Partial Differential Equation, Mechanics, Pi, Computer Simulation


Comments



Description

INTRODUCTION toFINITE ELEMENT METHODS Carlos A. Felippa Department of Aerospace Engineering Sciences and Center for Aerospace Structures University of Colorado Boulder, Colorado 80309-0429, USA Last updated Fall 2004 Material assembled from Lecture Notes for the course Introduction to Finite Elements Methods (ASEN 5007) offered from 1986 to date at the Aerospace Engineering Sciences Department of the University of Colorado at Boulder. Preface This textbook presents an Introduction to the computer-based simulation of linear structures by the Finite Element Method (FEM). It assembles the “converged” lecture notes of Introduction to Finite Element Methods or IFEM. This is a core graduate course offered in the Department of Aerospace Engineering Sciences of the University of Colorado at Boulder. IFEM was first taught on the Fall Semester 1986 and has been repeated every year since. It is taken by both first-year graduate students as part of their M.S. or M.E. requirements, and by senior undergraduates as technical elective. Selected material in Chapters 1 through 3 is used to teach a twoweek introduction of Matrix Structural Analysis and Finite Element concepts to junior undergraduate students who are taking their first Mechanics of Materials course. Prerequisites for the graduate-level course are multivariate calculus, linear algebra, a basic knowledge of structural mechanics at the Mechanics of Materials level, and some familiarity with programming concepts learnt in undergraduate courses. The course originally used Fortran 77 as computer implementation language. This has been gradually changed to Mathematica since 1995. The changeover is now complete. No prior knowledge of Mathematica is required because that language, unlike Fortran or similar low-level programming languages, can be picked up while “going along.” Inasmuch as Mathematica supports both symbolic and numeric computation, as well as direct use of visualization tools, the use of the language is interspersed throughout the book. Book Objectives “In science there is only physics; all the rest is stamp collecting” (Lord Kelvin). The quote reflects the values of the mid-XIX century. Even now, at the dawn of the XXIth, progress and prestige in the natural sciences favors fundamental knowledge. By contrast, engineering knowledge consists of three components:1 1. Conceptual knowledge: understanding the framework of the physical world. 2. Operational knowledge: methods and strategies for formulating, analyzing and solving problems, or “which buttons to push.” 3. Integral knowledge: the synthesis of conceptual and operational knowledge for technology development. The language that connects conceptual and operational knowledge is mathematics, and in particular the use of mathematical models. Most engineering programs in the USA correctly emphasize both conceptual and operational components. They differ, however, in how well the two are integrated. The most successful curricula are those that address the tendency to “horizontal disconnection” that bedevils engineering students suddenly exposed to a vast array of subjects. Integral knowledge is unique to the engineering profession. Synthesis ability is a personal attribute that cannot be coerced, only encouraged and cultivated, the same as the best music programs do not 1 Extracted from: B. M. Argrow, Pro-active teaching and learning in the Aerospace Engineering Sciences Curriculum 2000, internal report, University of Colorado, February 2001. i automatically produce Mozarts. Studies indicate no correlation between good engineers and good students.2 The best that can be done is to provide an adequate (and integrated) base of conceptual and operational knowledge to potentially good engineers. Where does the Finite Element Method (FEM) fit in this framework? FEM was developed initially, and prospered, as a computer-based simulation method for the analysis of aerospace structures. Then it found its way into both design and analysis of complex structural systems, not only in Aerospace but in Civil and Mechanical Engineering. In the late 1960s it expanded to the simulation of non-structural problems in fluids, thermomechanics and electromagnetics. This “Physical FEM” is an operational tool, which fits primarily the operational knowledge component of engineering, and draws from the mathematical models of the real world. It is the form emphasized in the first part of this book. The success of FEM as a general-purpose simulation method attracted attention in the 1970s from two quarters beyond engineering: mathematicians and software entrepreneurs. The world of FEM eventually split into applications, mathematics, and commercial software products. The former two are largely housed in the comfortable obscurity of academia. There is little cross-talk between these communities. They have different perpectives. They have separate constituencies, conferences and publication media, which slows down technology transfer. As of this writing, the three-way split seems likely to continue, as long as there is no incentive to do otherwise. This book aims to keep a presentation balance: the physical and mathematical interpretations of FEM are used eclectically, with none overshadowing the other. Key steps of the computer implementation are presented in sufficient detail so that a student can understand what goes on behind the scenes of a “black box” commercial product. The goal is that students navigating this material can eventually feel comfortable with any of the three “FEM communities” they come in contact during their professional life, whether as engineers, managers, researchers or teachers. Book Organization The book is divided into four Parts. The first three are of roughly similar length. Part I: The Direct Stiffness Method. This part comprises Chapters 1 through 11. It covers major aspects of the Direct Stiffness Method (DSM). This is the most important realization of FEM, and the one implemented in general-purpose commercial finite element codes used by practicing engineers. Following a introductory first chapter, Chapters 2-4 present the fundamental steps of the DSM as a matrix method of structural analysis. A plane truss structure is used as motivating example. This is followed by Chapters 5-10 on programming, element formulation, modeling issues, and techniques for application of boundary conditions. Chapter 11 deals with relatively advanced topics including condensation and global-local analysis. Throughout these chapters the physical interpretation is emphasized for pedagogical convenience, as unifying vision of this “horizontal” framework. Part II: Formulation of Finite Elements. This part extends from Chapters 12 through 19. It is more focused than Part I. It covers the development of elements from the more general viewpoint of the variational (energy) formulation. The presentation is inductive, always focusing on specific elements and progressing from the simplest to more complex cases. Thus Chapter 12 rederives the 2 As evaluated by conventional academic metrics, which primarily test operational knowledge. One difficulty with teaching synthesis is that good engineers and designers are highly valued in industry but rarely comfortable in academia. ii plane truss (bar) element from a variational formulation, while Chapter 13 presents the plane beam element. Chapter 14 introduces the plane stress problem, which serves as a testbed for the derivation of two-dimensional isoparametric elements in Chapter 15 through 18. This part concludes with an overview of requirements for convergence. Part III: Computer Implementation. Chapters 20 through 29 deal with the computer implementation of the finite element method. Experience has indicated that students profit from doing computer homework early. This begins with Chapter 5, which contains an Introduction to Mathematica, and continues with homework assignments in Parts I and II. The emphasis changes in Part III to a systematic description of components of FEM programs, and the integration of those components to do problem solving. Part IV: Structural Dynamics. This part, which starts at Chapter 30, is under preparation. It is intended as a brief introduction to the use of FEM in structural dynamics and vibration analysis, and is by nature more advanced than the other Parts. Exercises Most Chapters are followed by a list of homework exercises that pose problems of varying difficulty. Each exercise is labeled by a tag of the form [type:rating] The type is indicated by letters A, C, D or N for exercises to be answered primarily by analytical work, computer programming, descriptive narration, and numerical calculations, respectively. Some exercises involve a combination of these traits, in which case a combination of letters separated by + is used; for example A+N indicates analytical derivation followed by numerical work. For some problems heavy analytical work may be helped by the use of a computer-algebra system, in which case the type is identified as A/C. The rating is a number between 5 and 50 that estimates the degree of difficulty of an Exercise, in the following “logarithmic” scale: 5 A simple question that can be answered in seconds, or is already answered in the text if the student has read and understood the material. 10 A straightforward question that can be answered in minutes. 15 A relatively simple question that requires some thinking, and may take on the order of half to one hour to answer. 20 Either a problem of moderate difficulty, or a straightforward one requiring lengthy computations or some programming, normally taking one to six hours of work. 25 A scaled up version of the above, estimated to require six hours to one day of work. 30 A problem of moderate difficulty that normally requires on the order of one or two days of work. Arriving at the answer may involve a combination of techniques, some background or reference material, or lenghty but straightforward programming. 40 A difficult problem that may be solvable only by gifted and well prepared individual students, or a team. Difficulties may be due to the need of correct formulation, advanced mathematics, or high level programming. With the proper preparation, background and tools these problems may be solved in days or weeks, while remaining inaccessible to unprepared or average students. 50 A research problem, worthy of publication if solved. iii Most Exercises have a rating of 15 or 20. Assigning three or four per week puts a load of roughly 5-10 hours of solution work, plus the time needed to prepare the answer material. Assignments of difficulty 25 or 30 are better handled by groups, or given in take-home exams. Assignments of difficulty beyond 30 are never assigned in the course, but listed as a challenge for an elite group. Occasionally an Exercise has two or more distinct but related parts identified as items. In that case a rating may be given for each item. For example: [A/C:15+20]. This does not mean that the exercise as a whole has a difficulty of 35, because the scale is roughly logarithmic; the numbers simply rate the expected effort per item. Selecting Course Material The number of chapters has been coordinated with the 28 lectures and two midterm exams of a typical 15-week semester course offered with two 75-minute lectures per week. The expectation is to cover one chapter per lecture. Midterm exams cover selective material in Parts I and II, whereas a final exam covers the entire course. It is recommended to make this final exam a one-week take-home to facilitate computer programming assignments. Alternatively a final term project may be considered. The experience of the writer, however, is that term projects are not useful at this level, since most first-year graduate students lack the synthesis ability that develops in subsequent years. The writer has assigned weekly homeworks by selecting exercises from the two Chapters covered in the week. Choices are often given. The rating may be used by graders to weight scores. Unlike exams, group homeworks with teams of two to four students are recommended. Teams are encouraged to consult other students, as well as the instructor and teaching assistants, to get over gaps and hurdles. This group activity also lessen schedule conflicts common to working graduate students. Feedback from course offerings as well as advances in topics such as programming languages resulted in new material being incorporated at various intervals. To keep within course coverage constraints, three courses of action were followed in revising the book. Deleted Topics. All advanced analysis material dealing with variational calculus and direct approximation methods such as Rayleigh-Ritz, Galerkin, least squares and collocation, was eliminated by 1990. The few results needed for Part II are stated therein as recipes. That material was found to be largely a waste of time for engineering students, who typically lack the mathematical background required to appreciate the meaning and use of these methods in an application-independent context.3 Furthermore, there is abundant literature that interested students may consult should they decide to further their knowledge in those topics for self-study or thesis work. Appendices. “Refresher” material on vector and matrix algebra has been placed on Appendices A through D. This is material that students are supposed to know as a prerequisite. Although most of it is covered by a vast literature, it was felt advisable to help students in collecting key results for quick reference in one place, and establishing a consistent notational system. Starred Material. Chapter-specific material that is not normally covered in class is presented in fine print sections marked with an asterisk. This material belong to two categories. One is extension to the basic topics, which suggest the way it would be covered in a more advanced FEM course. The other includes general exposition or proofs of techniques presented as recipes in class for expedience or time constraints. Starred material may be used as source for term projects or take-home exams. 3 This is a manifestation of the disconnection difficulty noted at the start of this Preface. iv The book organization presents flexibility to instructors in organizing the coverage for shorter courses, for example in a quarter system, as well as fitting a three-lectures-per-week format. For the latter case it is recommended to cover two Chapters per week, while maintaining weekly homework assignments. In a quarter system a more drastic condensation would be necessary; for example much of Part I may be left out if the curriculum includes a separate course in Matrix Structural Analysis, as is common in Civil and Architectural Engineering. Acknowledgements Thanks are due to students and colleagues who have provided valuable feedback on the original course Notes, and helped its gradual metamorphosis into a textbook. Two invigorating sabbaticals in 1993 and 2001 provided blocks of time to develop, reformat and integrate material. The hospitality of Dr. P˚al G. Bergan of Det Norske Veritas at Oslo, Norway and Professor Eugenio O˜nate of CIMNE/UPC at Barcelona, Spain, during those sabbaticals is gratefully acknowledged. v vi Chapter Contents Section 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 23 24 25 26 27 28 29 30 31 Overview . . . . . . . The Direct Stiffness Method: Breakdown . . The Direct Stiffness Method: Assembly and Solution The Direct Stiffness Method: Miscellaneous Topics Analysis of Example Truss by a CAS . . . Constructing MOM Members . . . . Finite Element Modeling: Introduction . . Finite Element Modeling: Mesh, Loads, BCs . . Multifreedom Constraints I . . . . Multifreedom Constraints II . . . . . Superelements and Global-Local Analysis . . The Bar Element . . . . . . . The Beam Element . . . . . . The Plane Stress Problem . . . . . The Linear Triangle . . . . . . The Isoparametric Representation . . . . Isoparametric Quadrilaterals . . . . Shape Function Magic . . . . . . FEM Convergence Requirements . . . (Moved to AFEM) . . . . . . Implementation of One-Dimensional Elements . FEM Programs for Plane Trusses and Frames . . Implementation of iso-P Quadrilateral Elements . Implementation of iso-P Triangular Elements . . The Assembly Procedure . . . . . FE Model Definition . . . . . . Solving FEM Equations . . . . . (under revision) . . . . . . . (under revision) . . . . . . Stress Recovery . . . . . . . (placeholder) . . . . . . . (under preparation) . . . . . . (under preparation) . . . . . . . . . 1-1 2-1 3-1 4-1 5-1 6-1 7-1 8-1 9-1 10-1 11-1 12-1 13-1 14-1 15-1 16-1 17-1 18-1 19-1 20-1 21-1 22-1 23-1 24-1 23-1 24-1 25-1 26-1 27-1 28-1 29-1 30-1 31-1 Matrix Algebra: Vectors . . . . . . . . . . . . . Matrix Algebra: Matrices . . . . . . . . . . . . . Matrix Algebra: Determinants, Inverses, Eigenvalues . . . . . . . . Matrix Calculus . . . . . . . . . . . . . . . History of Matrix Structural Analysis . . . . . . . . . . . A-1 B-1 C-1 D-1 H-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Appendices A B C D H vii R References . . . . . . . viii . . . . . . . . . R-1 ix 1 Overview 1–1 Chapter 1: OVERVIEW TABLE OF CONTENTS Page §1.1 §1.2 §1.3 §1.4 §1.5 §1.6 §1.7 §1.8 §1.9 §1. §1. §1. Book Scope . . . . . . . . . . . . . . . . . . . . . Where the Material Fits . . . . . . . . . . . . . . . . §1.2.1 Top Level Classification . . . . . . . . . . . . . . §1.2.2 Computational Mechanics . . . . . . . . . . . . . §1.2.3 Statics versus Dynamics . . . . . . . . . . . . . . §1.2.4 Linear versus Nonlinear . . . . . . . . . . . . . §1.2.5 Discretization Methods . . . . . . . . . . . . . . §1.2.6 FEM Formulation Levels . . . . . . . . . . . . . §1.2.7 FEM Choices . . . . . . . . . . . . . . . . . §1.2.8 Finally: What The Book Is About . . . . . . . . . . What Does a Finite Element Look Like? . . . . . . . . . . . The FEM Analysis Process . . . . . . . . . . . . . . . §1.4.1 The Physical FEM . . . . . . . . . . . . . . . . §1.4.2 The Mathematical FEM . . . . . . . . . . . . . §1.4.3 Synergy of Physical and Mathematical FEM . . . . . . . §1.4.4 Streamlined Idealization and Discretization . . . . . . . Method Interpretations . . . . . . . . . . . . . . . . . §1.5.1 Physical Interpretation . . . . . . . . . . . . . . §1.5.2 Mathematical Interpretation . . . . . . . . . . . . Keeping the Course . . . . . . . . . . . . . . . . . . *What is Not Covered . . . . . . . . . . . . . . . . . The Origins of the Finite Element Method . . . . . . . . . . Recommended Books for Linear FEM . . . . . . . . . . . . §1.9.1 Hasta la Vista, Fortran . . . . . . . . . . . . . . Notes and Bibliography . . . . . . . . . . . . . . . . . . . . . . References . . . . . . . . . . . . . . . . . . . . . . Exercises . . . . . . . . . . . . . . . . . . . . . . 1–2 1–3 1–3 1–3 1–3 1–5 1–5 1–5 1–6 1–7 1–7 1–7 1–9 1–9 1–11 1–11 1–13 1–13 1–13 1–14 1–15 1–15 1–16 1–16 1–16 1–17 1–18 1–19 §1.2 WHERE THE MATERIAL FITS §1.1. Book Scope This is a textbook about linear structural analysis using the Finite Element Method (FEM) as a discretization tool. It is intended to support an introductory course at the first-year level of graduate studies in Aerospace, Mechanical, or Civil Engineering. Basic prerequisites to understanding the material covered here are: (1) a working knowledge of matrix algebra, and (2) an undergraduate structures course at the Materials of Mechanics level. Helpful but not required are previous courses in continuum mechanics and advanced structures. This Chapter presents an overview of what the book covers, and what finite elements are. §1.2. Where the Material Fits This Section outlines where the book material fits within the vast scope of Mechanics. In the ensuing multilevel classification, topics addressed in some depth in this book are emphasized in bold typeface. §1.2.1. Top Level Classification Definitions of Mechanics in dictionaries usually state two flavors: • The branch of Physics that studies the effect of forces and energy on physical bodies.1 • The practical application of that science to the design, construction or operation of material systems or devices, such as machines, vehicles or structures. These flavors are science and engineering oriented, respectively. But dictionaries are notoriously archaic. For our objectives it will be convenient to distinguish four flavors:  Theoretical   Applied Mechanics   Computational Experimental (1.1) Theoretical mechanics deals with fundamental laws and principles studied for their intrinsic scientific value. Applied mechanics transfers this theoretical knowledge to scientific and engineering applications, especially as regards the construction of mathematical models of physical phenomena. Computational mechanics solves specific problems by model-based simulation through numerical methods implemented on digital computers. Experimental mechanics subjects the knowledge derived from theory, application and simulation to the ultimate test of observation. Remark 1.1. Paraphrasing an old joke about mathematicians, one may define a computational mechanician as a person who searches for solutions to given problems, an applied mechanician as a person who searches for problems that fit given solutions, and a theoretical mechanician as a person who can prove the existence of problems and solutions. As regards experimentalists, make up your own joke. 1 Here the term “bodies” includes all forms of matter, whether solid, liquid or gaseous; as well as all physical scales, from subatomic through cosmic. 1–3 2 This area is meant to include mechanical systems that transcend the classical boundaries of solid and fluid mechanics.2. using continuum models in which the microstructure is homogenized by phenomenological averaging. and combustion. atmospheric physics.1. Computational fluid mechanics deals with problems that involve the equilibrium and motion of liquid and gases. are fabricated with solids. §1. Well developed related subareas are hydrodynamics. for obvious reasons. propulsion. For example. Computational Mechanics Computational Mechanics represents the integration of several disciplines. aerodynamics. since structures. Continuum mechanics studies bodies at the macroscopic level. are older.Chapter 1: OVERVIEW COMPUTATIONAL MECHANICS Finite Element Methods Theoretical and Applied Mechanics Applied Mathematics & Numerical Analysis Computer & Information Sciences Figure 1. it is closely related to particle physics and chemistry. A key example is interaction 2 This unifying term is in fact missing from most dictionaries. Structural mechanics is a conjoint branch of solid mechanics. Multiphysics is a more recent newcomer. At the atomic scale it transitions to quantum mechanics. 1–4 . whereas computational structural mechanics emphasizes technological applications to the analysis and design of structures.1 Several branches of computational mechanics can be distinguished according to the physical scale of the focus of attention:  Nanomechanics        Micromechanics Computational Mechanics  Continuum mechanics       Systems  Solids and Structures Fluids Multiphysics (1. Several multiphysics problems.2) Nanomechanics deals with phenomena at the molecular and atomic levels. Micromechanics looks primarily at the crystallographic and granular levels of matter. The “pizza slide:” Computational Mechanics integrates aspects of four disciplines. Computational solid mechanics favors a applied-sciences approach. Its main technological application is the design and fabrication of materials and microdevices. as it was introduced by computational mechanicians in the 1970s. aircraft aeroelasticity emerged in the 1920s.2. The two traditional areas of application are solid and fluid mechanics. however. as depicted in the “pizza slice” Figure 1. As such. Thus there are tradeoff skills in deciding where to stop. Linear versus Nonlinear A classification of static problems that is particularly relevant to this book is  Statics Linear Nonlinear (1.3) Continuum mechanics Quasi-static  Dynamics In statics inertial forces are ignored or neglected. roller skates and garden sprinklers. 4 Thus in breaking down a car engine. creep flow. whether natural or artificial. such as a whale. For the former time need not be considered explicitly. astronomical and cosmological entities also form systems. building. Why does the universe go to all the bother of existing?” (Stephen Hawking). the displacements and internal stresses also double. radio telescopes. Examples of man-made systems are airplanes. Phase change problems such as ice melting and metal solidification fit into this category.2 WHERE THE MATERIAL FITS between fluids and structures.4. engines. Ecological. microchips. mechanical and electromagnetic systems.4) Linear static analysis deals with static problems in which the response is linear in the cause-andeffect sense. In quasi-static problems such as foundation settlements. These problems may be subclassified into time invariant and quasi-static.2. In dynamics the time dependence is explicitly considered because the calculation of inertial (and/or damping) forces requires derivatives respect to actual time to be taken. Statics versus Dynamics Continuum mechanics problems may be subdivided according to whether inertial effects are taken into account or not:   Time Invariant  Statics (1. rate-dependent plasticity or fatigue cycling. 1–5 . that perform a distinguishable function. §1. say. system is the most general concept. bridges. system identifies mechanical objects.3. virus or pine tree are included if studied from the viewpoint of biomechanics.4 §1. Components are broken down into subcomponents and so on. any time-like response-ordering parameter (should one be needed) will do. as do the interaction of control.§1. cars. Biological systems. For example: if the applied forces are doubled.3 In the progression of (1. which has important application subareas such as aeroelasticity and hydroelasticity. a more realistic estimation of time is required but inertial forces are ignored as long as motions remain slow.2). robots. the decomposition does not usually proceed beyond the components that may be bought at a automotive shop. but their interactions may get more complex. Problems outside this domain are classified as nonlinear. 3 Except that their function may not be clear to us. amoeba.2. “What is it that breathes fire into the equations and makes a universe for them to describe? The usual approach of science of constructing a mathematical model cannot answer the questions of why there should be a universe for the model to describe. As this hierarchical process continues the individual components become simple enough to be treated by individual disciplines. Finally. Systems are studied by decomposition: its behavior is that of its components plus the interaction between the components. 768] FEM has expanded like a tsunami.. notably thermomechanics. fluid dynaamics. These are finite different methods on arbitrary grids constructed using a subset of finite element techniques §1. and electromagnetics. This statement is not true. which focus on the direct discretization of conservation laws. The second level is characterized by two features: the use of standard work and energy 1–6 . Classical finite difference methods in solid and structural mechanics have virtually disappeared from practical use. where finite difference discretization methods are still important although their dominance has diminished over time. Since its emergence in the framework of the Direct Stiffness Method (DSM) over 1956–1964. i. For nonlinear problems the dominance of finite element methods is overwhelming.5) For linear problems finite element methods currently dominate the scene. This level is accesible to undergraduate students. one classificaation of particular relevance to this book is  Mechanics of Materials (MoM) Formulation   Conventional Variational Formulation FEM-CSSM Formulation Level   Advanced Variational Formulation Template Formulation (1. as only require some elementary knowledge of linear algebra and makes no use of variational calculus.6. Restricting ourselves to applications in computational solid and structural mechanics (CSSM). Spectral methods are based on global transformations.6) The MoM formulation is applicable to simple structural elements such as bars and beams. Discretization Methods A final classification of computational solid and structural mechanics (CSSM) for static analysis is based on the discretization method by which the continuum mathematical model is discretized in space. A recent newcomer to the scene are the mesh-free methods. surging from its origins in aerospace structures to cover a wide range of nonstructural applications.Chapter 1: OVERVIEW §1. converted to a discrete model of finite number of degrees of freedom:  Finite Element Method (FEM)     Boundary Element Method (BEM)   Finite Difference Method (FDM) CSSM spatial discretization  Finite Volume Method (FVM)      Spectral Method Mesh-Free Method (1.e.2. based on eigendecomposition of the governing equations. that map the physical computational domain to transform spaces where the problem can be efficiently solved. FEM Formulation Levels The term Finite Element Method actually identifies a broad spectrum of techniques that share common features. for fluid mechanics. with boundary element methods posting a strong second choice in selected application areas. Finite-volume methods. The continuously expanding range makes taxology difficult. [765.5. however. are favored in highly nonlinear problems of fluid mechanics. and does not require any knowledge of variational methods.2. 7) emphasis will be placed on the displacement PUV choice and stiffness solution. (1. The two lower levels were well established by 1970. It is possible. are those used in FEM non-structural applications. 1–7 .2. Dual or Equilibrium) PUV Choice   Mixed (a. to develop those completely outside a variational framework.8) Of the FEM variants listed in (1. if one works at the two middle levels of (1. or PUV.” Reaching it requires both mastery of advanced variational principles. 5 The alternative PUV terms: primal.1) through (1. §1. however. §1. as well as in more general computational methods.7) Here PUV Choice governs the variational framework chosen to develop the discrete equations.6). but exceptions are possible. just like in [257].k. as noted there.a. formulated at the two lowest levels of (1. and solution method:5  Displacement (a. dual or primal-dual.3 WHAT DOES A FINITE ELEMENT LOOK LIKE? methods (such as the Total Potential Energy principle). and are those used in the present book. interelement continuity). The third one requires a deeper exposure to variational methods in mechanics.a. Primal)   Force (a.a. The last level (templates) is the pinnacle “where the rivers of our wisdom flow into one another. Finally: What The Book Is About Using the classification of (1.§1.k. Primal-Dual) Hybrid  Solution Choice Stiffness Flexibility Combined (1. notably multifield and hybrid principles.7. FEM Choices A more down to earth classification considers two key selection attributes: Primary Unknown Variable(s).5) we can now state the book topic more precisely: The model-based simulation of linear static structures discretized by FEM.k.2. and focus on full compliance with the requirements of the classical Ritz-Galerkin direct variational methods (for example. The next two levels are covered in the Advanced Finite Element Methods book [255]. The solution choice is normally dictated by the PUV.6). This particular combination is called the Direct Stiffness Method or DSM. as well as the confidence and fortitude to discard them along the way to the top. with no major changes since.8. It is approriate for first year (master level) graduate students with basic exposure to variational methods. §1. . . this is equivalent to obtaining a numerical value for π. What Does a Finite Element Look Like? The subject of this book is FEM. Table 1.000000000000000 2.140331156954753 3. . the polygon perimeter is L n = n L i j .2(b). The element length is L i j = 2r sin(π/n). For now the underlying concept will be partly illustrated through a truly ancient problem: find the perimeter L of a circle of diameter d. as shown in Figure 1.136548490545939 3. Inscribe a regular polygon of n sides.121445152258052 3.828427124746190 3.141592653589793 Values of πn obtained for n = 1.414213562373096 3. say that joining nodes 4–5. (d) generic element. 256 and r = 1 are listed in the second column of Table 1.141277250932773 3. . whence the approximation to π is πn = L n /d = n sin(π/n). 6 A widely used lozenge extrapolation algorithm that speeds up the convergence of many sequences.1. e. [812]. .141513801144301 Extrapolated by Wynn- Exact π to 16 places 3.3.2. the term admits of two interpretations: physical and mathematical. Rename polygon sides as elements and vertices as nodes. Rectification of Circle by Inscribed Polygons (“Archimedes FEM”) n 1 2 4 8 16 32 64 128 256 πn = n sin(π/n) 0. Label nodes with integers 1.2(a). 4.141418327933211 3. (c) disconnected element. Since all elements have the same length. See. where n = 8 in Figure 1.Chapter 1: OVERVIEW (a) (b) (c) 3 2 4 4 2r sin(π/n) r d (d) 5 1 5 j i 2π/n r 8 6 7 Figure 1. Extract a typical element.000000000000000 2. 1–8 . Draw a circle of radius r and diameter d = 2r as in Figure 1. As can be seen the convergence to π is fairly slow. Since L = π d.2(d). However. .2(c). This is an instance of the generic element i– j pictured in Figure 1. But what is a finite element? As discussed later.141592658918053 3.141592653589786 3. The last value displays 15-place accuracy. the sequence can be transformed by Wynn’s  algorithm6 into that shown in the third column. 2. 8. (b) a discrete approximation by inscribed regular polygons.1.g. The “find π” problem treated with FEM concepts: (a) continuum object.061467458920718 3. §1. which delivers a discrete solution (or solutions).7 This example has been offered in the FEM literature. this step is useful.§1. as covered in following Chapters.3 also shows an ideal mathematical model. as well as Archimedes’ famous studies on circle rectification by 250 B. can be computed in the generic element independently of the others. Indeed Physical FEM discretizations may be constructed and adjusted without reference to mathematical models. It is guilty of circular reasoning: the compact formula π = limn→∞ n sin(π/n) uses the unknown π in the right hand side. started from 2α = π for which sin π = −1. The sides.8 Reasonable people would argue that a circle is a simpler object than. e. notably those well modeled by continuum fields.4. by the segment that connects two nodes i and j.C. The processes of idealization and discretization are carried out concurrently to produce the discrete model. a property called local support in the FEM. is replaced by polygons. a 128-sided polygon. a process called disassembly in the FEM. Elements can be separated by disconnecting nodes. For others. the corresponding steps in the FEM being assembly and solution.3. in [476]. this configuration is called the Physical FEM.1. The process is illustrated in Figure 1. may fail in three dimensions for evaluation of surface areas. Both are reviewed below to introduce terminology used in the sequel. This requires models of such systems. to aduce that finite element ideas can be traced to Egyptian mathematicians from circa 1800 B. This may be presented as a continuum limit or “continuification” of the discrete model. the same technique can be be used to rectify any smooth plane curve.g.. however. Those sequences take two canonical configurations. is obtained by reconnecting n elements and adding up their length. respectively. The centerpiece is the physical system to be modeled. The relevant element property: side length L i j . such as complex engineering systems (say. The example does not illustrate the concept of degrees of freedom.C.4. independently of the original circle. Figure 1. The target property: polygon perimeter. The FEM Analysis Process Processes that use FEM involve carrying out a sequence of steps in some way. viewed as a source mathematical object.4 THE FEM ANALYSIS PROCESS Some key ideas behind the FEM can be identified in this example. For some physical systems. These are discrete approximations to the circle. Consequenty the methodology is often called model-based simulation. 8 The circularity is bypassed if n is advanced as a power of two. or numerical approximation to mathematical problems. The Physical FEM A canonical use of FEM is simulation of physical systems. This is at the root of the simulation process described next. The circle. Accordingly. But comparison with the modern FEM. Upon disassembly a generic element can be defined. simply from experimental measurements. §1. The solution step is handled by an equation solver often customized to FEM.1. say. 7 A similar limit process. as in Table 1. depending on (i) the environment in which FEM is used and (ii) the main objective: model-based simulation of physical systems. are specified by their end nodes. conjugate quantities and local-global coordinates. There is of course nothing magic about the circle. Despite these flaws the example is useful in one respect: showing a fielder’s choice in the replacement of one mathematical object by another. by using the half-angle recursion objection √ 2 sin α = 1 − 1 − sin2 2α. renamed as elements. shows this to be a stretch. a flying aircraft) it makes no sense. 1–9 . Substitution in the ideal mathematical model in principle provides the discretization error. which combines modeling and solution errors. because there is no reason to expect that the continuum model exists. compilation) whereas dynamic testing is done by running the code. however. some are useful” (George Box) 1–10 . The concept of error arises in the Physical FEM in two ways. This error is not generally important. 9 10 Programming analogs: static and dynamic testing are called verification and validation.g.4.Chapter 1: OVERVIEW Ideal Mathematical model CONTINUIFICATION FEM Physical system occasionally relevant SOLUTION Discrete model IDEALIZATION & DISCRETIZATION Discrete solution VERIFICATION solution error simulation error: modeling & solution error VALIDATION Figure 1.3.9 Verification is done by replacing the discrete solution into the discrete model to get the solution error. Inasmuch as the minimization conditions are generally nonlinear (even if the model is linear) the updating process is inherently iterative. “All models are wrong. Model updating process in the Physical FEM. the simulation error in practice can be identified with the modeling error. As the latter is typically unimportant. The Physical FEM. that it is more physically relevant than the discrete model. The physical system (left box) is the source of the simulation process. This step is rarely useful in complex engineering systems. and even if it does. Validation tries to compare the discrete solution against observation by computing the simulation error. Static testing is carried at the source level (e.. The discrete model is given free parameters. The ideal mathematical model (should one go to the trouble of constructing it) is inessential. Physical system Experimental database FEM EXPERIMENTS Parametrized discrete model Discrete solution simulation error Figure 1.10 One way to adjust the discrete model so that it represents the physics better is called model updating. These are known as verification and validation. These are determined by comparing the discrete solution against experiments.4. code walkthroughs. respectively. as illustrated in Figure 1. In real-life applications this error overwhelms the others. respectively. A discrete finite element model is generated from a variational or weak form of the mathematical model. The physical system (left box) is the source of the simulation process. Historically the Physical FEM was the 11 12 13 The distinction between strong. which is the amount by which the discrete solution fails to satisfy the mathematical model. The ideal mathematical model (should one go to the trouble of constructing it) is inessential. however.3.2.g. they only collect and use.4. but transforms and digests it by a power of its own. the solution error is the amount by which the discrete solution fails to satisfy the discrete equations. This may be presented as a realization of the mathematical model. if the mathematical model is the Poisson’s PDE.” (Francis Bacon). This synergy13 is one of the reasons behind the power and acceptance of the method. because the ideal physical system is merely that: a figment of the imagination. Indeed Mathematical FEM discretizations may be constructed without any reference to physics. The spotlight now falls on the mathematical model. This replacement is generically called verification. In the present book such forms will be largely stated (and used) as recipes.4. The concept of error arises when the discrete solution is substituted in the “model” boxes. 1–11 . The FEM equations are solved as described for the Physical FEM. Such interplay is not exactly a new idea: “The men of experiment are like the ant. the reasoners resemble spiders. This error can be computed in several ways. In the Mathematical FEM this is largely irrelevant. But the bee takes the middle course: it gathers its material from the flowers of the garden and field.5.5 shows an ideal physical system. who make cobwebs out of their own substance. the mathematical model is said to be an idealization of this system. §1. This is often an ordinary differential equation (ODE). The Mathematical FEM The other canonical way of using FEM focuses on the mathematics. The Physical FEM. Synergy of Physical and Mathematical FEM The foregoing canonical sequences are not exclusive but complementary. or a partial differential equation (PDE) in space and time.5. Conversely. The process steps are illustrated in Figure 1. §1.11 This is the discretization step. On the left. This error is relatively unimportant when using computers. More relevant is the discretization error. weak and variational forms is discussed in advanced FEM courses. As in the Physical FEM. and in particular direct linear equation solvers.12 Replacing into the ideal physical system would in principle quantify modeling errors..4 Mathematical model IDEALIZATION THE FEM ANALYSIS PROCESS Discretization & solution error VERIFICATION FEM REALIZATION SOLUTION Ideal physical system Discrete model IDEALIZATION & DISCRETIZATION Discrete solution VERIFICATION solution error ocassionally relevant Figure 1. E. for the solution step. the details of which are of no importance here.§1. This step is inessential and may be left out. Figure 1. realizations may be heat conduction or an electrostatic charge-distribution problem. A glance at the schematics of a commercial jet aircraft makes obvious the reasons behind the Physical FEM. There is no reason for despair. 1036 interacting particles modeled by the Schr¨odinger equations. This system 14 Of course at the (sub)atomic level quantum mechanics works for everything. and so on.14 the structure. There is no simple differential equation that captures. cargo. consider the aircraft structure as built up of substructures (a part of a structure devoted to a specific function): wings. Take each substructure. fuel. ribs. among other things. Second. comes to the rescue. separate the structure out and view the rest as masses and forces. from landing gears to passengers. cover plates. Continue through as many levels as necessary. Eventually those components become sufficiently simple in geometry and connectivity that they can be reasonably well described by the mathematical models provided. except for certain phenomena of astronomical scale” [759. fuselage.7. stop. etc. Truesdell and Toupin correctly note that “Newtonian mechanics. and passengers eating dinner. say. spars. and continue to break it down into components: rings. actuators. At that point. as narrated in §1. avionics. Only two levels (system and component) are shown for simplicity. The system model is obtained by going through the reverse process: from component equations to substructure equations. More seriously. for instance. stabilizers. coupled with abstraction. landing gears. The time honored divide and conquer strategy. by Mechanics of Materials or the Theory of Elasticity. at a continuum mechanics level. Combining physical and mathematical modeling through multilevel FEM. 1–12 .6. The component level discrete equations are obtained from a FEM library based on the mathematical model.Chapter 1: OVERVIEW l a atic hem Matmodel FEM L ry ibra en pon e et Com r c s di del mo t NT ONE P COMEVEL L ent ponns o Com i t a equ TEM SYS EL LEV e plet Comution l so l sica Phy tem s y s em Systrete disc del mo Figure 1. But it would be slightly impractical to represent the aircraft by. agrees with experience when applied to the body as a whole. however. while not appropriate to the corpuscles making up a body. p. 228]. propulsion. and from those to the equations of the complete aircraft. The Mathematical FEM came later and. first one to be developed to model complex physical systems such as aircraft. First. engines. provided the necessary theoretical underpinnings to extend FEM beyond structural analysis. §1. . as illustrated for the truss roof structure shown in Figure 1.. The other focuses on the mathematical context. and the roof as a a substructure of a building. and is aligned with the Mathematical FEM. passing to a discrete model is carried out in a single idealization and discretization step. Method Interpretations Just like there are two complementary ways of using the FEM. §1.7. there are two complementary interpretations for explaining it. §1. The general technique.2. The physical system — here a conventional roof truss — is directly idealized by the mathematical model: a pin-jointed bar assembly.4.” The multilevel decomposition process is diagramed in Figure 1. 1–13 . in which intermediate levels are omitted for simplicity Remark 1. For this particular structure idealized and discrete models coalesce. assembly process is governed by the classical principles of Newtonian mechanics.4. a choice that obviously impacts teaching. The reason is that the level of detail can become overwhelming without adding relevant information. Remark 1. Further refinement of specific components is done by the so-called global-local analysis technique outlined in Chapter 10.7. . Streamlined Idealization and Discretization For sufficiently simple structures. which are characterized by a modular fabrication process. Idealized and Discrete System Figure 1.. Of course the truss may be viewed as a substructure of the roof.5. If so the multilevel process would be more appropriate. More intermediate decomposition levels are used in systems such as offshore and ship structures. They are outlined next. The idealization process for a simple structure. is discussed in Chapter 10. Other levels are unnecessary in such cases. In that case multilevel decomposition mimics the way the system is actually fabricated. Usually that point is reached when uncertainty impedes further progress.5 METHOD INTERPRETATIONS member Physical System support joint IDEALIZATION .3. .6. called superelements. This technique is an instance of multiscale analysis. There is no point in practice in going beyond a certain component level while considering the complete system. One interpretation stresses the physical significance and is aligned with the Physical FEM. which provide the necessary inter-component “glue. The breakdown-assembly concept occurs naturally when an engineer considers many artificial and natural systems.3.4. The unknown function (or functions) is locally approximated over each element by an interpolation formula expressed in terms of values taken by the function(s). The behavior of the total system is that of the individual elements plus their interaction.1. In the mathematical interpretation the emphasis is on the concept of local (piecewise) approx- imation. partition. The basic concept in the physical interpretation is the breakdown (≡ disassembly. The response of the original system is considered to be approximated by that of the discrete model constructed by connecting or assembling the collection of all elements. If the behavior of a system is too complex. least-squares or other weighted-residual minimization methods if the problem cannot be expressed in a standard variational form. The trial function space may be inserted into the governing equations and the unknown node values determined by the Ritz method (if the solution extremizes a variational principle) or by the Galerkin. and possibly their derivatives. The concept of element-by-element breakdown and assembly. separation. is not theoretically necessary. while convenient in the computer implementation. decomposition) of a complex mechanical system into simpler.5. aircraft or skeleton as being fabricated from simpler parts. §1. The FEM is viewed as a procedure for obtaining numerical approximations to the solution of boundary value problems (BVPs) posed over a domain . These degrees of freedoms are represented as the values of the unknown functions as a set of node points. bridge. If these subsystems are still too complex the subdivision process is continued until the behavior of each subsystem is simple enough to fit a mathematical model that represents well the knowledge level the analyst is interested in.” a terminology that carries over to non-structural applications.2. The element response is defined by algebraic equations constructed from mathematical or experimental arguments.3. tearing. The historical connection is reflected in the use of structural terms such as “stiffness matrix”. “force vector” and “degrees of freedom. The states of the assumed unknown function(s) determined by unit node values are called shape functions.4.5. In general the geometry of is only approximated by that of ∪ (e) . it is easy and natural to visualize an engine.5. The mathematical interpretation permits a general approach 1–14 . Remark 1. As discussed in §1. This interpretation has been shaped by the discovery and extensive use of the method in the field of structural mechanics. For example. This domain is replaced by the union ∪ of disjoint subdomains (e) called finite elements. at a set of node points generally located on the element boundaries. or simply elements.Chapter 1: OVERVIEW §1. A key factor in the initial acceptance of the FEM was that the element interaction could be physically interpreted and understood in terms that were eminently familiar to structural engineers. the recipe is to divide it into more manageable subsystems. Mathematical Interpretation This interpretation is closely aligned with the flowchart of Figure 1. In the finite element method such “primitive pieces” are called elements. The union of shape functions “patched” over adjacent elements form a trial function basis for which the node values represent the generalized coordinates. Physical Interpretation The physical interpretation focuses on the flowchart of Figure 1. The mechanical response of an element is characterized in terms of a finite number of degrees of freedom. the underlying theme is divide and conquer. disjoint components called finite elements. 3. and delta-wing aircraft. noted in §1. It is interesting to note some similarities in the development of Heaviside’s operational methods. This is not done for sentimental reasons. respectively) constructed to justify that success. Flexibility and mixed solution methods. Ingredients of the mathematical interpretation are called upon whenever it is felt proper and convenient to do so. This is done on account of its instructional advantages. Plate and shell elements. eccentricity. 4. E. In the case of the finite element method. and much of it is still in the making. etc. Buckling and stability analysis.7. §1. It also facilitates the application of FEM to classes of problems that are not so readily amenable to physical visualization as structures. Python. for example electromagnetics and heat conduction. error bounds. Keeping the Course The first Part of this book. Virtually all FEM commercial codes are now based on the DSM and the computer implementation has not essentially changed since the late 1960s. Java and Matlab “wrappers” are becoming more common. Dirac’s delta-function calculus.. In Chapters 2 and 3 the time is frozen at about 1965. Chapters 11 through 19 deal specifically with element formulations. 2. stresses the physical interpretation of FEM within the framework of the Direct Stiffness Method (DSM). anomalies. Variational methods in mechanics.7. the first mathematician to dwelve in the real FEM (the one created by engineers) was kind to the founders. 15 Oliver Heaviside took heavy criticism from the lotus eaters. Elements based on equilibrium.. changes at the implementation level have recently accelerated.16 What has greatly improved since is “marketing sugar”: user interaction and visualization.7. and the FEM. covered in Chapters 2 through 10.§1. 1–15 . 5. heresy. General mathematical theory of finite elements. although that happens to be the year in which the writer began thesis work on FEM under Ray Clough. quantum mechanics.g. which he returned with gusto. §1. Furthermore the computer implementation becomes more transparent because the sequence of operations can be placed in close correspondence with the DSM steps. C++. mixed and hybrid variational formulations. Structural optimization. Remark 1. hobbies and humors” (George Santayana). *What is Not Covered The following topics are not covered in this book: 1.7 *WHAT IS NOT COVERED to the questions of convergence. 6. the development of a formal mathematical theory started in the late 1960s. 7. These three methods appeared as ad-hoc computational devices created by engineers and physicists to deal with problems posed by new science and technology (electricity. trial and shape function requirements. which the physical approach leaves unanswered. Paul Dirac was luckier: he was shielded as member of the physics establishment and eventually received a Nobel Prize. Gilbert Strang. His legacy is a living proof that “England is the paradise of individuality. distribution theory and piecewise-approximation theory.6.5. 8. respectively) with little help from the mathematical establishment. General nonlinear response analysis.15 Only some time after the success of the new techniques became apparent were new branches of mathematics (operational calculus. 16 With the gradual disappearance of Fortran as a “live” programming language. and the DSM presented as an aerospace engineer of that time would have understood it. Nonetheless excessive entanglement with the mathematical theory is avoided if it may obfuscate the physics. §1. The Origins of the Finite Element Method This section moved to Appendix O to facilitate further expansion. Contains a fairly detailed coverage of substructuring. (It still survives in some Physics and 1–16 . Malkus and Plesha [149]. a practical topic missing from the other books. Intermediate level: Hughes [389].8. whereas 11 is an interdisciplinary topic that interweaves with computer science. Some recommendations for readers interested in further studies within linear FEM are offered below. Topics 8–10 fall into advanced applications.campusi. although outdated in several subjects. Hasta la Vista. as well as a comprehensive list of references.Chapter 1: OVERVIEW 9. which is covered in the book [255]. largely fixed in this one. 10. A fourth edition has appeared recently. Most fun (if you appreciate British “humor”): Irons and Ahmad [401]. Still the most readable mathematical treatment for engineers. Basic level (reference): Zienkiewicz and Taylor [837]. 11.g.95 (2003).9. check the metasearch engine in www3. Designing and building production-level FEM software and use of special hardware (e. Error estimates and problem-adaptive discretizations. Those face an uncertain future. A newcomer is www. A reprint of a 1966 McGraw-Hill book. Mathematically oriented: Strang and Fix [705]. vector and parallel computers) Topics 1–5 belong to what may be called “Advanced Linear FEM”. For buying out-of-print books through web services. Out of print.com (most comprehensive.amazon. covrede in other books in preparation. Prior editions suffered from loose mathematics.com §1. Topics 6–7 pertain to “Nonlinear FEM”. Recommended Books for Linear FEM The literature is voluminous: over 200 textbooks and monographs have appeared since 1967.com. The third edition is comprehensive in scope although the coverage is more superficial than Zienkiewicz and Taylor. Although woefully outdated in many respects (the word “finite element” does not appear except in post-1960 references). Comprehensive bibliography in Matrix Structural Analysis up to 1966. A three-volume fifth edition has appeared recently. Recently (2000) reprinted as Dover edition. Fortran Most FEM books that include programming samples or even complete programs use Fortran. Basic level (textbook): Cook. Not a textbook or monograph.9. which is covered in the book [258]. Out of print. list price $15. §1. Primarily an encyclopœdic reference work that gives a panoramic coverage of FEM applications. it is a valuable reference for programming simple elements. Fortran is gradually disappearing as a programming language taught in USA engineering undergraduate programs.addall. Non-structural and multiphysics applications of FEM. It requires substantial mathematical expertise on the part of the reader. This two-volume set is a comprehensive upgrade of the previous edition [835]. Since the mid-1990s.1. not a bookseller) as well as that of www. Best value for the $$$: Przemieniecki’s Dover edition [603]. I decided to take advantage of my MIT structural dynamics background by taking up the field of Earthquake Engineering.04% Simula 1 0.01% 6.01% Object Pascal 9 0. mid-level to Java.42% PHP 2020 PL/SQL 58 0. I was particularly fortunate in this choice of summer work at Boeing because the head of their structural dynamics unit was Mr. I seized on that as the best means of advancing my preparation for the earthquake engineering field.88% Vis Basic 15 YACC 11 0.14% Modula 7 Objective C 131 0. 1–17 . at least I learned what did not work. Low-level scientific programming17 is moving to C and C++.84% Pascal 38 0. Jon Turner asked me to work on the vibration analysis of a delta wing structure.§1.21% C++ 2443 Common Lisp 27 0. Because of its triangular plan form.01% 0.08% 0. (For further historical details. This conveys the relative importance of various languages (a mixed bag of newcomers.01% Rexx 7 0. When I arrived for the summer of 1952. Mathematica and their free-source Linux equivalents.02% ASP 25 Awk 40 0.15% 0. have-beens and never-was) in the present environment.26% 0.24% Haskell 28 JavaScript 236 1. here is a September-2003 snapshot of ongoing open source software projects listed in http://freshmeat.05% Dylan 2 0.02% PROGRESS 2 0. this problem could not be solved by procedures based on standard beam theory.01% Tcl 356 1.01% Total Projects: 19079 Lang Projects Perc Lang Projects APL 3 0.05% Other 160 0. Perl and Python. the results of deflection analyses based on this type of mathematical model were in very poor agreement with data obtained from laboratory tests of a scale model of a delta wing.08% Java 2332 12. 17 “A programming language is low level when its programs require attention to the irrelevant” (Alan Perlis). Notes and Bibliography Chemistry departments because of large amounts of legacy code. J.04% Python 1171 Ruby 127 0.10% 10.06% Zope 34 Perc 0.13% 0. Turner — a very capable man in dealing with problems of structural vibrations and flutter.20% Assembly 170 0. How attractive can a book teaching in a dead language be? To support this argument with some numbers.59% 0.21% Basic 15 C# 41 0.08% 12.80% 0.18% Notes and Bibliography Here is Ray Clough’s personal account of how FEM and DSM emerged at Boeing in the early 1950s. M.87% Xbasic 1 0.14% 0.10% Emacs-Lisp 33 Euler 1 0. My final conclusion was that my summer’s work was a total failure—however. the interested reader may consult Appendices H and O.01% Euphoria 2 Fortran 45 0. Lang Projects Perc Ada 38 0. However.34% 0.20% Pike 3 0.67% Scheme 76 Smalltalk 20 0.10% SQL 294 Unix Shell 550 2.) So one end of the pipeline is drying up.01% Erlang 11 0. high-level to Matlab.) “ My involvement with the FEM began when I was employed by the Boeing Airplane Company in Seattle during summer 1952 as a member of their summer faculty program.24% Lisp 64 ML 26 0.55% Cold Fusion 10 0. When I had joined the civil engineering faculty at Berkeley in 1949.04% 0.43% Perl 2752 14.54% 0. so I spent the summer of 1952 trying to formulate a delta wing model built up as an assemblage of one-dimensional beams and struts.17% 0.06% Forth 15 0.30% Pliant 1 Prolog 8 0.net.89% C 5447 28.22% Logo 2 0. going-strongs. So because the Boeing summer faculty program offered positions with their structural dynamics unit.69% Ocaml 20 Other Scripting Engines 82 0.40% 1.14% Delphi 49 Eiffel 20 0. So I developed stiffness matrices for plates of both shapes. During the winter. when I arrived in Norway all I could do was to outline the procedures for carrying out the analysis. and to do calculations for very small systems using a desk calculator because the Norwegian Institute of Technology did not yet have an automatic digital computer. Argyris during October 1954 to May 1955. The Argyris work came to my attention during my sabbatical leave in Norway. From my personal point of view. I stayed in touch with Jon Turner so I was able to rejoin the structural dynamics unit in June. Then the stiffness of the complete structure was obtained by appropriate addition of the contributions from the individual pieces. The Boeing group called this procedure the direct stiffness method. They were not concerned with stress analysis because that was the responsibility of the stress analysis unit. the stiffness properties of the individual triangular plates could be calculated easily based on assumptions of uniform states of normal stress in the X and the Y directions combined with an uniform state of shear stress. A much more significant application of the method was presented at the Symposium on the use of Computers in Civil Engineering. However. Then. I was not able to spend any significant time on the stress analysis question until I went on my sabbatical leave to Trondheim. John H. it was apparent that the model formed by the direct stiffness method could be used for stress analysis as well as for vibration analysis. held in Lisbon. Also. However. The conclusions drawn from that summer’s work were presented in a paper given by Jon Turner at the annual meeting of the Institute of Aeronautical Sciences in January 1954. but I decided the triangular form was much more useful because such plates could be assembled to approximate structures of any configuration. Portugal in 1962. However. which often is considered to be the first published description of the FEM.” References Referenced items have been moved to Appendix R. 1–18 . because of my other research responsibilities. Norway in September 1956. I credit that work for extending the scope of my understanding of structural theory to the level it eventually attained. and I made plans to investigate this stress analysis application as soon as possible. was not published until September 1956 — more than two years after the verbal presentation. Moreover. The name first appeared in a publication that was written to demonstrate the finite element procedure for the civil engineering profession. The most important development during the winter was that Jon suggested we try to formulate the stiffness property of the wing by assembling plane stress plates of either triangular or rectangular shapes. for reasons I never understood Jon did not submit the paper for publication until many months later. the rectangular element presented in those articles is only a minor part of that contribution. The presentation of the paper to the Institute of Aeronautical Sciences was the first introduction of the principles of the FEM to a technical audience. It is important to note that the basic purpose of the work done by Jon Turner’s structural dynamics unit was vibration and flutter analysis.Chapter 1: OVERVIEW Spurred by this disappointment. although some of the basic concepts of the method were stated a short time later in a series of articles published in Aircraft Engineering by Dr. I decided to return to Boeing for the summer faculty program in 1953. and I considered it then (as I still do now) to be the most important series of papers ever published in the field of Structural Mechanics. the next important event in finite element history was the coining of the name FEM. The remainder of the summer of 1953 was spent in demonstrating that deflections calculated for structures formed as assemblages of triangular elements agreed well with laboratory measurements on the actual physical models. However. So this paper. where it was used to evaluate the stress concentrations developed in a gravity dam that had cracked at its mid-section. it became apparent that the precision of the calculated results could be improved asymptotically by continued refinement of the finite element mesh. My purpose in choosing that name was to distinguish clearly the relatively large size pieces of the structure that make up a finite element assemblage as contrasted with the infinitesimal contributions that go into evaluation of the displacements of a structure in a typical virtual work analysis. or bicycle. There need be no approximation in the mathematical analysis of this structural system. a modified structural system is substituted for the actual continuum. . 256.2 [D:20] Select one of the following vehicles: truck. with n = 1. and of selected components of some substructures. 4. Draw a two level decomposition of the structure into substructures. 2. It should be noted that the approximation which is employed in this case is of physical nature.1 [A:15] Work out Archimedes’ problem using a circumscribed regular polygon. . motorcycle. Clough [139] writes: “When idealized as an assemblage of appropriately shaped two. an elastic continuum can be analyzed by standard methods of structural analysis. car.” Discuss critically the contents of this paragraph while placing it in the context of time of writing (early 1960s).Exercises Homework Exercises for Chapter 1 Overview EXERCISE 1. Does the sequence converge any faster? EXERCISE 1. Is the last sentence accurate? 1–19 . . This feature distinguishes the finite element technique from finite difference methods. EXERCISE 1. in which the exact equations of the actual physical system are solved by approximate mathematical procedures.and three-dimensional elements in this manner.3 [D:30] In one of the earliest articles on the FEM. 2 The Direct Stiffness Method I 2–1 Chapter 2: THE DIRECT STIFFNESS METHOD I TABLE OF CONTENTS Page §2.1 §2.2 §2.3 §2.4 §2.5 §2.6 §2.7 §2.8 §2.9 §2.10 §2. §2. §2. Foreword . . . . . . . . . . . . . . . . . . . . . . Why A Plane Truss? . . . . . . . . . . . . . . . . . Truss Structures . . . . . . . . . . . . . . . . . . . . Idealization . . . . . . . . . . . . . . . . . . . . . The Example Truss . . . . . . . . . . . . . . . . . . . Members, Joints, Forces and Displacements . . . . . . . . . The Master Stiffness Equations . . . . . . . . . . . . . . The DSM Steps . . . . . . . . . . . . . . . . . . . Breakdown Stage . . . . . . . . . . . . . . . . . . . §2.9.1 Disconnection . . . . . . . . . . . . . . . . §2.9.2 Localization . . . . . . . . . . . . . . . . . . §2.9.3 Member Stiffness Equations . . . . . . . . . . . . Assembly and Solution Stage: Globalization . . . . . . . . . . §2.10.1 Displacement and Force Transformations . . . . . . . . §2.10.2 Global Member Stiffness Equations . . . . . . . . . . Notes and Bibliography . . . . . . . . . . . . . . . . . References . . . . . . . . . . . . . . . . . . . . . . Exercises . . . . . . . . . . . . . . . . . . . . . . 2–2 2–3 2–3 2–3 2–4 2–5 2–6 2–7 2–8 2–10 2–10 2–11 2–11 2–12 2–12 2–14 2–15 2–15 2–16 §2.3 TRUSS STRUCTURES §2.1. Foreword This Chapter begins the exposition of the Direct Stiffness Method (DSM) of structural analysis. The DSM is by far the most common implementation of the Finite Element Method (FEM). In particular, all major commercial FEM codes are based on the DSM. The exposition is done by following the DSM steps applied to a simple plane truss structure. The method has two major stages: breakdown, and assembly+solution. This Chapter covers primarily the breakdown stage. §2.2. Why A Plane Truss? The simplest structural finite element is the two-node bar (also called linear spring) element, which is illustrated in Figure 2.1(a). A six-node triangle that models thin plates, shown in Figure 2.1(b) displays intermediate complexity. Perhaps the most geometrically complex finite element (at least as regards number of degrees of freedom) is the curved, three-dimensional, 64-node “brick” element depicted in Figure 2.1(c). Yet the remarkable fact is that, in the DSM, all elements, regardless of complexity, are treated alike! To illustrate the basic steps of this democratic method, it makes educational sense to keep it simple and use a structure composed of bar elements. (a) (b) (c) Figure 2.1. From the simplest through progressively more complex structural finite elements: (a) two-node bar element for trusses, (b) six-node triangle for thin plates, (b) 64-node tricubic, “brick” element for three-dimensional solid analysis. A simple yet nontrivial structure is the pin-jointed plane truss, whose members may be modeled as two-node bars.1 Using a plane truss to teach the stiffness method offers two additional advantages: (a) Computations can be entirely done by hand as long as the structure contains just a few elements. This allows various steps of the solution procedure to be carefully examined and understood (learning by doing) before passing to the computer implementation. Doing hand computations on more complex finite element systems rapidly becomes impossible. (b) The computer implementation on any programming language is relatively simple and can be assigned as preparatory computer homework before reaching Part III. 1 A one dimensional bar assembly would be even simpler. That kind of structure would not adequately illustrate some of the DSM steps, however, notably the back-and-forth transformations from global to local coordinates. 2–3 Chapter 2: THE DIRECT STIFFNESS METHOD I member support joint Figure 2.2. An actual plane truss structure. That shown is typical of a roof truss used in building construction for rather wide spans, say, over 10 meters. For shorter spans, as in residential buildings, trusses are simpler, with fewer bays. §2.3. Truss Structures Plane trusses, such as the one depicted in Figure 2.2, are often used in construction, particularly for roofing of residential and commercial buildings, and in short-span bridges. Trusses, whether two or three dimensional, belong to the class of skeletal structures. These structures consist of elongated structural components called members, connected at joints. Another important subclass of skeletal structures are frame structures or frameworks, which are common in reinforced concrete construction of buildings and bridges. Skeletal structures can be analyzed by a variety of hand-oriented methods of structural analysis taught in beginning Mechanics of Materials courses: the Displacement and Force methods. They can also be analyzed by the computer-oriented FEM. That versatility makes those structures a good choice to illustrate the transition from the hand-calculation methods taught in undergraduate courses, to the fully automated finite element analysis procedures available in commercial programs. §2.4. Idealization The first analysis step carried out by a structural engineer is to replace the actual physical structure by a mathematical model. This model represents an idealization of the actual structure. For truss structures, by far the most common idealization is the pin-jointed truss, which directly maps to a FEM model. See Figure 2.3. The replacement of true by idealized is at the core of the physical interpretation of the finite element method discussed in Chapter 1. The axially-carrying-load members and frictionless pins of the pin-jointed truss are only an approximation of the physical one. For example, building and bridge trusses usually have members joined to each other through the use of gusset plates, which are attached by nails, bolts, rivets or welds. Consequently members will carry some bending as well as direct axial loading. Experience has shown, however, that stresses and deformations calculated using the simple idealized model will often be satisfactory for preliminary design purposes; for example to select the cross section of the members. Hence the engineer turns to the pin-jointed assemblage of axial-forcecarrying elements and uses it to perform the structural analysis. 2–4 §2.5 (a) Physical System THE EXAMPLE TRUSS member support joint IDEALIZATION ;; ;; ;; ;; ;; ;; (b) Idealized Sytem: FEM-Discretized Mathematical Model Figure 2.3. Idealization of roof truss: (a) physical system, (b) idealization as FEM discretized mathematical model. In this and following Chapter we will go over the basic steps of the DSM in a “hand-computer” calculation mode. This means that although the steps are done by hand, whenever there is a procedural choice we shall either adopt the way that is better suited towards the computer implementation, or explain the difference between hand and computer computations. The actual computer implementation using a high-level programming language is presented in Chapter 4. §2.5. The Example Truss To keep hand computations manageable we will use just about the simplest structure that can be called a plane truss, namely the three-member truss illustrated in Figure 2.4(a). The idealized model of this physical truss as a pin-jointed assemblage of bars as shown in Figure 2.4(b), In this idealization truss members carry only axial loads, have no bending resistance, and are connected by frictionless pins. Geometric, material and fabrication properties of the idealized truss are given in Figure 2.4(c),2 while idealized loads and support conditions are provided in Figure 2.4(d). It should be noted that as a practical structure the example truss is not particularly useful — that shown in Figure 2.2 is more common in construction. But with the example truss we can go over the basic DSM steps without getting mired into too many members, joints and degrees of freedom. 2 Member mass densities are given in Figure 2.4(c) so that this truss can be used later for examples in vibration and dyamics analysis. 2–5 Chapter 2: THE DIRECT STIFFNESS METHOD I (a) 3 (b) 1 fy3 , uy3 3(10,10) (3) y fx1 , ux1 1(0,0) fy1 , uy1 45 o x 3 (d) f x3 = 2 45o E (2) = 50, A(2) = 1, (2) L = 10, ρ(2) = 1/5 (2) (1) E (1) = 50, A(1) = 2, (1) L = 10, ρ(1) = 1/5 (3) y fx2 , ux2 1 x 2(10,0) fy2 , uy2 (1) (2) 2 ; ; E (3) = 100, A(3) =  2 2, (3)  2, ρ(3) = 3/20 L = 10 2 f y3 = 1 fx3 , ux3 ; ; (c) ;; ;; ;; ;; Idealization as Pin-Jointed Truss and FEM Discretization Figure 2.4. The three-member example truss: (a) physical structure; (b) idealization as a pin-jointed bar assemblage; (c) geometric, material and fabrication properties; (d) support conditions and applied loads. §2.6. Members, Joints, Forces and Displacements The pin-jointed idealization of the example truss, pictured in Figure 2.4(b,c,d), has three joints, which are labeled 1, 2 and 3, and three members, which are labeled (1), (2) and (3). Those members connect joints 1–2, 2–3, and 1–3, respectively. The member lengths are denoted by L (1) , L (2) and L (3) , their elastic moduli by E (1) , E (2) and E (3) , and their cross-sectional areas by A(1) , A(2) and A(3) . Note that an element number superscript is enclosed in parenthesis to avoid confusion with exponents. Both E and A are assumed to be constant along each member. Members are generically identified by index e (because of their close relation to finite elements, as explained below). This index is placed as superscript of member properties. For example, the cross-section area of a generic member is Ae . The member superscript is not enclosed in parentheses in this case because no confusion with exponents can arise. But the area of member 3 is written A(3) and not A3 . Joints are generically identified by indices such as i, j or n. In the general FEM, the names “joint” and “member” are replaced by node and element, respectively. This dual nomenclature is used in the initial Chapters to stress the physical interpretation of the FEM. The geometry of the structure is referred to a common Cartesian coordinate system {x, y}, which will be called the global coordinate system. Other names for it in the literature are structure coordinate system and overall coordinate system. For the example truss its origin is at joint 1. 2–6 §2.7 THE MASTER STIFFNESS EQUATIONS The key ingredients of the stiffness method of analysis are the forces and displacements at the joints. In a idealized pin-jointed truss, externally applied forces as well as reactions can act only at the joints. All member axial forces can be characterized by the x and y components of these forces, denoted by f x and f y , respectively. The components at joint i will be identified as f xi and f yi , respectively. The set of all joint forces can be arranged as a 6-component column vector called f. The other key ingredient is the displacement field. Classical structural mechanics tells us that the displacements of the truss are completely defined by the displacements of the joints. This statement is a particular case of the more general finite element theory. The x and y displacement components will be denoted by u x and u y , respectively. The values of u x and u y at joint i will be called u xi and u yi . Like joint forces, they are arranged into a 6-component vector called u. Here are the two vectors of nodal forces and nodal displacements, shown side by side:     u x1 f x1  u y1   f y1       u x2   f x2  u= (2.1) f= , .  u y2   f y2      f x3 u x3 f y3 u y3 In the DSM these six displacements are the primary unknowns. They are also called the degrees of freedom or state variables of the system.3 How about the displacement boundary conditions, popularly called support conditions? This data will tell us which components of f and u are actual unknowns and which ones are known a priori. In pre-computer structural analysis such information was used immediately by the analyst to discard unnecessary variables and thus reduce the amount of hand-carried bookkeeping. The computer oriented philosophy is radically different: boundary conditions can wait until the last moment. This may seem strange, but on the computer the sheer volume of data may not be so important as the efficiency with which the data is organized, accessed and processed. The strategy “save the boundary conditions for last” will be followed here also for the hand computations. Remark 2.1. Often column vectors such as (2.1) will be displayed in row form to save space, with a transpose symbol at the end. For example, f = [ f x1 f y1 f x2 f y2 f x3 f y3 ]T and u = [ u x1 u y1 u x2 u y2 u x3 u y3 ]T . §2.7. The Master Stiffness Equations The master stiffness equations relate the joint forces f of the complete structure to the joint displacements u of the complete structure before specification of support conditions. Because the assumed behavior of the truss is linear, these equations must be linear relations that connect the components of the two vectors. Furthermore it will be assumed that if all displacements vanish, so do the forces.4 If both assumptions hold the relation must be homogeneous and 3 Primary unknowns is the correct mathematical term whereas degrees of freedom has a mechanics flavor: “any of a limited number of ways in which a body may move or in which a dynamic system may change” (Merrian-Webster). The term state variables is used more often in nonlinear analysis, material sciences and statistics. 4 This assumption implies that the so-called initial strain effects, also known as prestress or initial stress effects, are neglected. Such effects are produced by actions such as temperature changes or lack-of-fit fabrication, and are studied in Chapter 29. 2–7 Chapter 2: THE DIRECT STIFFNESS METHOD I Globalization Breakdown (Section 2.9) Disconnection Localization Element Formation Merge Assembly & Solution Application of BCs (Secs 2.10, 3.2-3.4) Solution Recovery of Derived Quantities conceptual steps processing steps post-processing steps Figure 2.5. The Direct Stiffness Method steps. expressable in component form as    K x1x1 K x1y1 f x1  f y1   K y1x1 K y1y1     f x2   K x2x1 K x2y1 =   f y2   K y2x1 K y2y1    f x3 K x3x1 K x3y1 f y3 K y3x1 K y3y1 K x1x2 K y1x2 K x2x2 K y2x2 K x3x2 K y3x2 K x1y2 K y1y2 K x2y2 K y2y2 K x3y2 K y3y2 K x1x3 K y1x3 K x2x3 K y2x3 K x3x3 K y3x3   K x1y3 u x1 K y1y3   u y1    K x2y3   u x2   . K y2y3   u y2    K x3y3 u x3 K y3y3 u y3 (2.2) In matrix notation: f = K u. (2.3) Here K is the master stiffness matrix, also called global stiffness matrix, assembled stiffness matrix, or overall stiffness matrix. It is a 6 × 6 square matrix that happens to be symmetric, although this attribute has not been emphasized in the written-out form (2.2). The entries of the stiffness matrix are often called stiffness coefficients and have a physical interpretation discussed below. The qualifiers (“master”, “global”, “assembled” and “overall”) convey the impression that there is another level of stiffness equations lurking underneath. And indeed there is a member level or element level, into which we plunge in the Breakdown section. Remark 2.2. Interpretation of Stiffness Coefficients. The following interpretation of the entries of K is valuable for visualization and checking. Choose a displacement vector u such that all components are zero except the i th one, which is one. Then f is simply the i th column of K. For instance if in (2.3) we choose u x2 as unit displacement, u = [ 0 0 1 0 0 0 ]T , f = [ K x1x2 K y1x2 K x2x2 K y2x2 K x3x2 K y3x2 ]T . (2.4) Thus K y1x2 , say, represents the y-force at joint 1 that would arise on prescribing a unit x-displacement at joint 2, while all other displacements vanish. In structural mechanics this property is called interpretation of stiffness coefficients as displacement influence coefficients. It extends unchanged to the general finite element method. §2.8. The DSM Steps The DSM steps, major and minor, are summarized in Figure 2.5 for the convenience of the reader. The two major stages are Breakdown, followed by Assembly & Solution. A postprocessing step may follow, although this is not part of the DSM proper. 2–8 §2.8 THE DSM STEPS ;; ;; FEM model: Remove loads & supports: Disassemble: battens Localize: longerons diagonals longerons Generic element: Figure 2.6. Visualization of the DSM breakdown stage. Form elements: battens longerons diagonals longerons Globalize: Merge: ;; ; ;; ; ;; ; ;; ; Apply loads and supports: Solve for joint displacements: Figure 2.7. Visualization of the DSM assembly-and-solution stage. 2–9 Chapter 2: THE DIRECT STIFFNESS METHOD I The first three DSM steps are: (1) disconnection, (2) localization, and (3) computation of member stiffness equations. Collectively these form the breakdown stage. The first two are flagged as conceptual in Figure 2.5 because they are not actually programmed as such: they are implicitly carried out either through the user-provided problem definition, or produced by separate preprocessing programs such as CAD front ends. DSM processing actually begins at the element-stiffness-equation forming step. Before starting with the detailed, step by step description of the DSM, it is convenient to exhibit the whole process through a graphic sequence. This is done in Figures 2.6 and 2.7, which are shown to students as animated slides. The sequence starts with the FEM model of the typical roof truss displayed in Figure 2.3(b). Thus the idealization step pictured there is assumed to have been carried out.5 §2.9. Breakdown Stage The three breadown steps: disconnection, localization and formation of the element stiffness equations, are covered next. (a) 3 (b) 3 Remove loads and supports, _ and disconnect pins y (3) _ x (3) _ x (2) (3) y (2) _ y (2) _ y (1) 1 2 ; ; ; ; ; 1 _ x (1) x (1) 2 Figure 2.8. Disconnection step: (a) idealized example truss; (b) removal of loads and support, disconnection into members (1), (2) and (3), and selection of local coordinate systems. The latter are drawn offset from member axes for visualization convenience. §2.9.1. Disconnection To carry out the first breakdown step we begin by discarding all loads and supports (the so-called boundary conditions). Next we disconnect or disassemble the structure into its components. For a pin-jointed truss disconnection can be visualized as removing the pin connectors. This is illustrated for the example truss in Figure 2.8. To each member e = 1, 2, 3 assign a Cartesian system {x¯ e , y¯ e }. Axis x¯ e is aligned along the axis of the eth member. Actually x¯ e runs along the member longitudinal axis; it is drawn offset in Figure 2.8 (b) for clarity. By convention the positive direction of x¯ e runs from joint i to joint j, where i < j. The angle formed by x¯ e and x is the orientation angle ϕ e , positive CCW. The axes origin is arbitrary and may be placed at the member midpoint or at one of the end joints for convenience. 5 The sequence depicted in Figures 2.6 and 2.7 uses the typical roof truss of Figures 2.2 and 2.3, rather than the 3-member example truss. Reason: those pictures are more representative of actual truss structures, as seen often by students. 2–10 §2.9 Equivalent spring stiffness (a) _ _ fyi, u yi _ _ fxi , uxi _ y k s = EA / L _ _ fyj, u yj _ _ fxj , uxj _ x (b) i j −F j i BREAKDOWN STAGE F L d Figure 2.9. Generic truss member referred to its local coordinate system {x, ¯ y¯ }: (a) idealization as 2-node bar element, (b) interpretation as equivalent spring. Element identification number e dropped to reduce clutter. Systems {x¯ e , y¯ e } are called local coordinate systems or member-attached coordinate systems. In the general finite element method they also receive the name element coordinate systems. §2.9.2. Localization To reduce clutter we drop the member identifier e so we are effectively dealing with a generic truss member, as illustrated in Figure 2.9(a). The local coordinate system is {x, ¯ y¯ }. The two end joints are labelled i and j. As shown in that figure, a generic plane truss member has four joint force components and four joint displacement components (the member degrees of freedom). The member properties are length L, elastic modulus E and cross-section area A. §2.9.3. Member Stiffness Equations The force and displacement components of the generic truss member shown in Figure 2.9(a) are linked by the member stiffness relations ¯f = K u, ¯ (2.5) which written out in full become  ¯   K¯ xi xi f xi K¯ yi xi  f¯yi    ¯ =  K¯ fx j x j xi f¯y j K¯ y j xi K¯ xi yi K¯ yi yi K¯ x j yi K¯ y j yi K¯ xi x j K¯ yi x j K¯ x j x j K¯ y j x j  K¯ xi y j  u¯ xi  K¯ yi y j  u¯ yi   .   ¯ u¯ x j Kx jyj u¯ y j K¯ y j y j (2.6) Vectors ¯f and u¯ are called the member joint forces and member joint displacements, respectively, ¯ is the member stiffness matrix or local stiffness matrix. When these relations are whereas K interpreted from the standpoint of the general FEM, “member” is replaced by “element” and “joint” by ”node.” ¯ in terms of L, E and A. The most There are several ways to construct the stiffness matrix K straightforward technique relies on the Mechanics of Materials approach covered in undergraduate courses. Think of the truss member in Figure 2.9(a) as a linear spring of equivalent stiffness ks , an 2–11 Chapter 2: THE DIRECT STIFFNESS METHOD I interpretation illustrated in Figure 2.9(b). If the member properties are uniform along its length, Mechanics of Materials bar theory tells us that6 EA , L ks = (2.7) Consequently the force-displacement equation is EA d, L F = ks d = (2.8) where F is the internal axial force and d the relative axial displacement, which physically is the bar elongation. The axial force and elongation can be immediately expressed in terms of the joint forces and displacements as F = f¯x j = − f¯xi , d = u¯ x j − u¯ xi , (2.9) which express force equilibrium7 and kinematic compatibility, respectively. Combining (2.8) and (2.9) we obtain the matrix relation8  ¯   f xi 1 ¯yi  E A 0 f   ¯f =  =  ¯ fx j −1 L f¯y j 0 Hence  −1 0 1 0 0 0 0 0 1 E A  0 ¯ = K  −1 L 0 0 0 0 0   0 u¯ xi 0   u¯ yi  ¯ u, ¯ =K  u¯ x j 0 u¯ y j 0 −1 0 1 0  0 0 . 0 0 (2.10) (2.11) This is the truss stiffness matrix in local coordinates. Two other methods for deriving the local force-displacement relation (2.8) are covered in Exercises 2.6 and 2.7. §2.10. Assembly and Solution Stage: Globalization The first step in the assembly & solution stage, as shown in Figure 2.5, is globalization. This operation is done member by member. It refers the member stiffness equations to the global system {x, y} so it can be merged into the master stiffness. Before entering into details we must establish relations that connect joint displacements and forces in the global and local coordinate systems. These are given in terms of transformation matrices. 6 7 8 See for example, Chapter 2 of [68]. Equations F = f¯x j = − f¯xi follow by considering the free body diagram (FBD) of each joint. For example, take joint i as a FBD. Equilibrium along x requires −F − f¯xi = 0 whence F = − f¯xi . Doing the same on joint j yields F = f¯x j . The matrix derivation of (2.10) is the subject of Exercise 2.3. 2–12 §2.10 ASSEMBLY AND SOLUTION STAGE: GLOBALIZATION (a) Displacement transformation _ uyj uyj (b) Force transformation _ _ fyj fyj uxj _ _ y _ uyi u yi x _ ϕ uxi i j _ fxj _ uxj _ y _ fyi fyi y uxi x x _ fxj ϕ fxi i j fxi Figure 2.10. The transformation of node displacement and force components from the local system {x, ¯ y¯ } to the global system {x, y}. §2.10.1. Displacement and Force Transformations The necessary transformations are easily obtained by inspection of Figure 2.10. For the displacements u¯ xi = u xi c + u yi s, u¯ yi = −u xi s + u yi c, (2.12) u¯ x j = u x j c + u y j s, u¯ y j = −u x j s + u y j c, in which c = cos ϕ, s = sin ϕ and ϕ is the angle formed by x¯ and x, measured positive CCW from x. The matrix form that collects these relations is      u¯ xi c s 0 0 u xi  u¯ yi   −s c 0 0   u yi  (2.13)  = .  u¯ x j ux j 0 0 c s u¯ y j uyj 0 0 −s c The 4 × 4 matrix that appears above is called a displacement transformation matrix and is denoted9 by T. The node forces transform as f xi = f¯xi c − f¯yi s, etc., which in matrix form become    f xi c f  yi   s  = fx j 0 fyj 0 −s c 0 0 0 0 c s  0 0   −s  c  f¯xi f¯yi  . f¯x j  f¯y j (2.14) The 4 × 4 matrix that appears above is called a force transformation matrix. A comparison of (2.13) and (2.14) reveals that the force transformation matrix is the transpose TT of the displacement transformation matrix T. This relation is not accidental and can be proved to hold generally.10 9 10 This matrix will be called Td when its association with displacements is to be emphasized, as in Exercise 2.5. A simple proof that relies on the invariance of external work is given in Exercise 2.5. However this invariance was only checked by explicit computation for a truss member in Exercise 2.4. The general proof relies on the Principle of Virtual Work, which is discussed later. 2–13 Chapter 2: THE DIRECT STIFFNESS METHOD I Remark 2.3. Note that in (2.13) the local system (barred) quantities appear on the left-hand side, whereas in (2.14) they show up on the right-hand side. The expressions (2.13) and and (2.14) are discrete counterparts of what are called covariant and contravariant transformations, respectively, in continuum mechanics. The continuum counterpart of the transposition relation is called adjointness. Colectively these relations, whether discrete or continuous, pertain to the subject of duality. Remark 2.4. For this particular structural element T is square and orthogonal, that is, TT = T−1 . But this property does not extend to more general elements. Furthermore in the general case T is not even a square matrix, and consequently does not possess an ordinary inverse. However the congruent transformation relations (2.15)–(2.17) given below do hold generally. §2.10.2. Global Member Stiffness Equations From now on we reintroduce the member (element) index, e. The member stiffness equations in global coordinates will be written f e = K e ue . (2.15) The compact form of (2.13) and (2.14) for the eth member is e fe = (Te )T ¯f . u¯ e = Te ue , (2.16) e e Inserting these matrix expressions into ¯f = K u¯ e and comparing with (2.15) we find that the ¯ e in the member stiffness in the global system {x, y} can be computed from the member stiffness K local system {x, ¯ y¯ } through the congruent transformation11 ¯ e Te . Ke = (Te )T K (2.17) Carrying out the matrix multiplications in closed form (Exercise 2.8) we get  c2 e e E A  sc Ke =  2 −c Le −sc sc s2 −sc −s 2 −c2 −sc c2 sc  −sc −s 2  , sc s2 (2.18) in which c = cos ϕ e , s = sin ϕ e , with e superscripts of c and s suppressed to reduce clutter. If the orientation angle ϕ e is zero we recover (2.10), as may be expected. Ke is called a member stiffness matrix in global coordinates. The proof of (2.17) and verification of (2.18) is left as Exercise 2.8. The globalized member stiffness equations for the example truss can now be easily obtained by inserting appropriate values provided in Figure 2.4(c). into (2.18). For member (1), with end joints 1–2, E (1) A(1) = 100, L (1) = 10, and ϕ (1) = 0◦ :  f (1)   x1 1 (1)  f y1   0    f (1)  = 10  −1 x2 (1) 0 f y2 11 0 0 0 0 −1 0 1 0    u (1) x1 0  u (1) 0 y1  .  (1)  0 u x2  0 u (1) y2 Also known as congruential transformation and congruence transformation in linear algebra books. 2–14 (2.19) Force and displacement transformation matrices for structural analysis were introduced by G. In particular. Trusses. L (3) = 10 2. and ϕ (2) = 90◦ :  f (2)   x2 0 (2)  f y2  0    f (2)  = 5  0 x3 (2) 0 f y3 0 1 0 −1 0 0 0 0 √    u (2) x2 0  u (2) −1   y2  . and is the procedure followed by all major commercial codes in current use.   (2)  0 u x3  1 u (2) (2. E (2) A(2) = 50. of which Chapter 5 of Przemieniecki [603] is a good example.20) y3 √ For member (3). are usually the first structures treated in Mechanics of Materials books written for undergraduate courses in Aerospace. and ϕ (3) = 45◦ :  f (3)      u (3) x1 x1 0. with end joints 2–3.5   y1    = 20      f (3)  . the Force Method. with end joints 1–3. Kron [428]. and solving for the unknown forces and displacements. through the leadership of Jon Turner [766.5 (3)  f y1   u (3) 0.5 0.5 0.5  u (3) x3 x3 (3) −0. L (2) = 10.5 0.5 −0. also called bar assemblies.768]. E (3) A(3) = 200 2.§2. although the procedural steps are sometimes not clearly delineated.5 0.5 f y3 u (3) y3 (2.5 −0. and had defeated its main competitor. Two widely used textbooks at this level are [68] and [595]. Notes and Bibliography The Direct Stiffness Method has been the dominant FEM version since the mid-1960s. Notes and Bibliography For member (2).5 −0.21) In the following Chapter we complete the DSM steps by putting the truss back together through the merge step. by 1970 [240].5 0. the textbooks recommended in §1.5 −0. The general DSM was developed at Boeing in the mid and late 1950s. 2–15 . Civil and Mechanical Engineering.5 −0.5 0. Steps in the derivation of stiffness matrices for truss elements are well covered in a number of early treatment of finite element books. References Referenced items have been moved to Appendix R.5 −0.9 offer adequate expositions. −0. All applications-oriented FEM books cover the DSM. 7 [A:20] Derive the equivalent spring formula F = (E A/L) d of (2. Or in words: the displacement transformation matrix and the force transformation matrix are the transpose of each other.6 [A:20] Derive the equivalent spring formula F = (E A/L) d of (2.] Does the property hold also for the columns of that matrix? EXERCISE 2. (E2.1 [D:10] Explain why arbitrarily oriented mechanical loads on an idealized pin-jointed truss structure must be applied at the joints. Then check by hand that using that formula you get (2.2 [A:15] Show that the sum of the entries of each row of the master stiffness matrix K of any plane truss. is verified for all x¯ if A is constant along the bar.15) and (2. EXERCISE 2.Chapter 2: THE DIRECT STIFFNESS METHOD I Homework Exercises for Chapter 2 The Direct Stiffness Method I EXERCISE 2.2) u( ¯ x) ¯ = u¯ xi 1 − L L Justify that (E2. [Hint: apply translational rigid body motions at nodes. (Hint: what is a force times displacement in the direction of the force?) EXERCISE 2. show that T f = TdT .2).8 [A:20] Derive (2. u( ¯ x) ¯ denotes the axial displacement of the cross section at a distance x¯ from node i.8) by the Theory of Elasticity relations e = d u( ¯ x)/d ¯ x¯ (strain-displacement equation). must be zero. Falk’s K scheme is recommended for the multiplications.1) where Td is 1 × 4 and T f is 4 × 1.9).17). which is linearly interpolated as  x¯ x¯ + u¯ x j (E2. ¯ Finally. Here e is the axial strain (independent of x) ¯ and σ the axial stress (also independent of x). the strain-displacement equation e = d u/d ¯ x¯ and Hooke’s law σ = Ee to express as a function (d) of the relative displacement d only. (2.2 of Appendix B. Starting from the identity ¯f u¯ = F d proven in the previous exercise. and using compact matrix notation.8) and (2. ¯f u¯ = F d. ¯f = F T f .10) from (2. Then apply MPE by requiring that ∂ /∂d = 0. Deriving the final form with scalar algebra and rewriting it in matrix form gets no credit. σ = Ee (Hooke’s law) and F = Aσ (axial force definition). Note: Place all equations in matrix form first and eliminate d and F by matrix multiplication. T Intepret this result physically. (Hint: premultiply both sides of EXERCISE 2. 1 2 (E2.5 [A:20] The transformation equations between the 1-DOF spring and the 4-DOF generic truss member may be written in compact matrix form as ¯ d = Td u.] How about actual trusses: can they take loads applied between joints? EXERCISE 2.18).12 12 This scheme is useful to do matrix multiplication by hand. 2–16 . Use the displacement interpolation (E2. before application of any support conditions. (This can be extended to general systems) T EXERCISE 2.17) from K ¯ e u¯ e = f¯e by an appropriate matrix).3. It is explained in §B.2) is correct since the bar differential equilibrium equation: d[A(dσ/d x)]/d ¯ x¯ = 0.9(a).3 [A:15] Using matrix algebra derive (2.3) 0 where symbols have the same meaning as the previous Exercise.8) by the principle of Minimum Potential Energy (MPE). [Hint: idealized truss members have no bending resistance.4 [A:15] By direct multiplication verify that for the truss member of Figure 2. EXERCISE 2. ¯ e u¯ e = ¯fe . In Mechanics of Materials it is shown that the total potential energy of the axially loaded bar is = L A σ e d x¯ − Fd. 4) Interpret this relation physically as a chain of global-to-local-to-global matrix operations: global displacements → axial strain.5? EXERCISE 2.18) of the globalized bar stiffness matrix may be factored as  c2 e e E A  sc Ke =  −c2 Le −sc sc s2 −sc −s 2 −c2 −sc c2 sc    −sc −c −s 2   −s  E e Ae = [ −c sc   c  L e s2 s −s c s] (E2. axial strain → axial force. 2–17 .10 [C:20] (Requires thinking) Notice that the expression (2. and axial force → global node forces.Exercises EXERCISE 2.9 [D:5] Why are disconnection and localization labeled as “conceptual steps” in Figure 2. 3 The Direct Stiffness Method II 3–1 . 1 Applying Boundary Conditions by Reduction . . . Notes and Bibliography . . . .4 §3. . . . . . . §3. .1 Governing Rules . . .1 *Assembly by Freedom Pointers . . . . . *Computer Oriented Assembly and Solution . . . . . . . . . References . . . . . .4. . . . . . . . . . . . . .3. . . §3. . . . . . . . . . . PostProcessing . . . . . . . . . . . . . . .2 §3. . . . . . . .2. . . Prescribed Nonzero Displacements . . . .1 §3. . . . . . . . . . . . . . . . . . .5. . .3. . . . §3. §3. §3. . . . . .3 *Reaction Recovery: General Case . . .3 §3. . . . The Remaining DSM Steps . . . . . . . . . . . . . . . . . §3. . . . . . . . . . §3. §3.6. Assembly: Merge . §3. .2 Solving for Displacements . . .2 *Application of Nonzero-DBCs by Modification . .1 Recovery of Reaction Forces . . . . §3. . . 3–2 3–3 3–3 3–3 3–4 3–6 3–6 3–7 3–7 3–7 3–8 3–9 3–10 3–10 3–11 3–11 3–11 3–13 3–14 3–14 3–15 3–16 .1 Application of Nonzero-DBCs by Reduction . . . . §3. . . . . . . .2 Assembly by Hand Using Augment-and-Add . . . . . Exercises . . .Chapter 3: THE DIRECT STIFFNESS METHOD II TABLE OF CONTENTS Page §3. . . . . . . .6. . . . .2. . . . . . . . . . . .6. . . .2 Recovery of Internal Forces and Stresses . . . . . . . . . . . §3.5. . .2 *Applying DBC by Modification . . . . .5 §3. . . . . . . . . . . . . . .3 *Matrix Forms of Nonzero-DBC Application Methods . . . . . . . . . . Solution . . §3.6 §3. . . . . . . . . . .4. . .4. §3. . . . . §3. on some FEM implementations — especially programs written in the 1960s and 1970s — one or more of the foregoing operations are done concurrently. Assembly involves merging the stiffness equations of each member into the global stiffness equations. On the computer the formation. The process is technically called merge of individual members. (b) reconnected truss with the pins put back into the joints. Application of BC is done by modifying the freefree master stiffness equations to take into account which components of the joint displacements and forces are given and which are unknown. globalization and merge steps are done concurrently. Next comes the solution. The modified equations are submitted to a linear equation solver. Assembly: Merge (a) 3 (b) 3 Reconnect the pins (3) y 1 (2) y x 1 (1) 2 x 2 Figure 3. This is done through the globalization process covered in §2. This process embodies two steps: applying boundary conditions (BC). which for a plane truss is the global Cartesian system {x. Postprocessing steps may follow.1.10. member by member. The three breakdown steps: disconnection. which returns the unknown joint (node) displacements. The solution step completes the DSM proper. localization and formation of member stiffness take us down all the way to the generic truss element: the highest level of fragmentation. As discussed under Notes and Bibliography.1. y}. Governing Rules The key operation of the assembly process is the “placement” of the contribution of each member to the master stiffness equations. Physical meaning of merge operation: (a) disconnected example truss after globalization. The Remaining DSM Steps Chapter 2 covered the initial steps of the DSM.1. After all members are processed we have the free-free master stiffness equations. For this to make sense. the member equations must be referred to a common coordinate system. and solving for the unknown joint displacements.2. §3. The merge operation can be physically interpreted as reconnecting that member in the process of 3–3 .§3. in which derived quantities such as internal forces and stresses are recovered from the displacement solution.2 ASSEMBLY: MERGE §3.2. This is followed by the assembly and solution stage. Notational conventions to this effect are explained in Figure 3. although some care is required in the separation of external and internal forces. (3. of (3. Thus the forces applied by the members on the joint (3) are −f(2) 3 and −f3 . The second one can be visualized by doing the free body diagram (FBD) of the joint.2. For a pin-jointed (model of a) truss structure. (3. fabricating the complete structure. depicted as an FBD in (a). changes nothing because The addition of f x3 member (1) is not connected to joint 3. The force equilibrium of joint 3 of the example truss. f = f(1) + f(2) + f(3) . We are simply adding zeros. respectively.3) . as illustrated in (b). at which members (2) and (3) meet. Here (3) f3 is the known external joint force applied on the joint.2). The free-body equilibrium statement is f3 − f(2) 3 − f3 = 0 or f3 = f3 + f3 . See Figure 3.Chapter 3: THE DIRECT STIFFNESS METHOD II (a) − f(3) 3 f3 3 (b) 3 f(3) 3 − f(2) 3 (3) f(2) 3 (2) Figure 3.2) (1) (2) (3) (1) (2) (3) to f x3 + f x3 and of f y3 to f y3 + f y3 . 3–4 (3. 2. Merge logic is mathematically governed by two rules of structural mechanics: 1. This (2) (3) (2) (3) translates into the two component equations: f x3 = f x3 + f x3 and f y3 = f y3 + f y3 .1) The first rule is physically obvious: reconnected joints must move as one entity. These forces would act in the directions shown in (a) if members (2) and (3) (3) (2) (3) were in tension.1. Force equilibrium: The sum of internal forces exerted by all members that meet at a joint balances the external force applied to that joint. and their signs.2 for joint 3 of the example truss. reconnection means inserting the pins back into the joints. Application of the foregoing rules at that particular joint gives Rule 1: (3) u (2) x3 = u x3 . (2) (3) (1) (2) (3) f y3 = f y3 + f y3 = f y3 + f y3 + f y3 . Internal forces f(2) 3 and f3 are applied by the joint on the members. Compatibility of displacements: The displacements of all members that meet at a joint are the same. But appending those terms enables us to write the compact matrix relation for the complete structure: Rule 2: (2) (3) (1) (2) (3) f x3 = f x3 + f x3 = f x3 + f x3 + f x3 . (3) u (2) y3 = u y3 . 4) (3.6)  .  0 0 0 0 0   u y2   f y2   0  (1)     u x3 0 0 0 0 0 0 f  x3 u y3 0 0 0 0 0 0 (1) f y3  (2)  f x1    0 0 0 0 0 0 u x1 (2)  f y1    0 0 0 0 0 0   u y1      f (2)    x2   0 0 0 0 0 0   u x2  (3.2 ASSEMBLY: MERGE §3.   (2)  =   f y2   0 0 0 5 0 −5   u y2   (2)     u x3 0 0 0 0 0 0 f  x3 u y3 0 0 0 −5 0 5 (2) f y3  3–5 .8) .7)  (1)  =  .1) translate to merging logic. we can drop the member identifier in the displacement vectors that appear in the foregoing matrix equations.2. we first augment the global stiffness equations listed in §2. −5   u (2)  y2   (2)  0 u  x3 5 u (2) y3 (3. For member (1):          For member (2): (1)  f x1  10 (1)  f y1   0 (1)   f x2   −10 =  (1)    0 f y2   (1)  0 f x3 0 (1) f y3          For member (3): (2)  f x1  0 (2)  f y1   0 (2)   f x2  0 =   (2)  0 f y2   (2)  0 f x3 0 (2) f y3 −10 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 −5 0 0 0 0 0 0  u (1) x1 0  (1)  0   u y1    (1)  0   u x2   . Hence the reconnected member equations are  (1)  f x1    10 0 −10 0 0 0 u x1 (1)   f y1 0 0 0 0 0   u y1     0  f (1)     −10 0 10 0 0 0   u x2   x2   (3.  (3)   0 0 0 0 0   u (3)   f y2   0 y2   (3)    −10 −10 0 0 10 10  u (3)  f  x3 x3 −10 −10 0 0 10 10 (3) f y3 u (3) y3 According to the first rule. Assembly by Hand Using Augment-and-Add To directly visualize how the two rules (3.2 by adding zero rows and columns as appropriate to complete the force and displacement vectors.5)  (3)  (3)  f x1  u x1  10 10 0 0 −10 −10 (3)   (3)   f y1 10 0 0 −10 −10   u y1    10    (3)   f (3)   0 0 0 0 0   u x2   x2   0 = (3.10.2.§3. 0   u (1)  y2   (1)  0 u  x3 0 u (1) y3    (2)   u x1 0  (2)  0   u y1    (2)  0   u x2   . 1. (3.3. In this Section a technique suitable for hand computation is described.1 below). f(2) = K(2) u. Solution Having formed the master stiffness equations we can proceed to the solution phase. The mathematical interpretation of this behavior is that rows and columns of K are linear combinations of each other (see Remark 3. To eliminate rigid body motions and render the system nonsingular we must apply the physical support conditions as displacement boundary conditions. §3. and we arrive at the master stiffness equations:      f x1 20 10 −10 0 −10 −10 u x1 10 0 0 −10 −10   u y1   f y1   10      0 10 0 0 0   u x2   f x2   −10 (3.13) .3). It is virtually foolproof for hand computations.4(d) we observe that the support conditions for the example truss are u x1 = u y1 = u y2 = 0. expressed in matrix form as (3. However. y} plane.10) (3.7) through (3.  (3)  =   0 0 0 0 0   u y2   f y2   0  (3)     u x3 −10 −10 0 0 10 10 f  x3 u y3 −10 −10 0 0 10 10 (3) f y3 These three equations can be represented in compact matrix notation as f(1) = K(1) u. According to the second rule.9).12) =     . Applying Boundary Conditions by Reduction If one attempts to solve the system (3. f(3) = K(3) u.11) so all we have to do is add the three stiffness matrices that appear in (3. surprise! The solution “blows up” because the coefficient matrix (the master stiffness matrix) is singular.Chapter 3: THE DIRECT STIFFNESS METHOD II  (3)  f x1    10 10 0 0 −10 −10 u x1 (3)   f y1 10 0 0 −10 −10   u y1     10   f (3)    0 0 0 0 0 0   u x2   x2   . §3.9) (3. To prepare the equations for a linear solver we need to separate known and unknown components of f and u. The physical interpretation of singularity is that there are unsuppressed rigid body motions: the truss still “floats” in the {x.12) numerically for the displacements.5. 0 0 5 0 −5   u y2   f y2   0      f x3 u x3 −10 −10 0 0 10 10 f y3 u y3 −10 −10 0 −5 10 15 Using this technique member merging becomes simply matrix addition. From Figure 2. A computer-oriented procedure is discussed in §3.3. we have  f = f(1) + f(2) + f(3) = K(1) + K(2) + K(3) u = K u. this is not the way the process is carried out on the computer because it would be enormously wasteful of storage for large systems. This explanation of the assembly process is conceptually the easiest to follow and understand. 3–6 (3. This solution vector is expanded to six components by including the three specified values (3.2.4 .4 POSTPROCESSING whereas the known applied forces are f x2 = 0. Remark 3.13) in the appropiate slots:    0 u x1  u y1   0      u   0  u =  x2  =  .12) has order N = 6. The reduced three-equation system is 10 0 0 0 10 10 0 10 15 u x2 u x3 u y3 = f x2 f x3 f y3 0 = 2 . In mathematical terms. namely specified zero displacements.16) This is called a partial displacement solution (also reduced displacement solution) because it excludes known displacement components. Conditions (3.3. via Gauss elimination) yields u x2 u x3 u y3 = 0 0. such as prescribed nonzero displacements and multifreedom constraints.13) represent the simplest type of support conditions.15) is called the reduced master stiffness system. More general constraint forms. 2 and 4 from K and the corresponding components from f and u. f y3 = 1.17) .2 (3. (3.) The dimension of the null space of K is d = 3. The coefficient matrix of this system is no longer singular. the simplest way to account for support conditions is to remove equations associated with known zero joint displacements from the master system. 3–7 (3.14) When solving the overall stiffness equations by hand.2  This is the complete displacement solution. This space is spanned by three independent rigid body motions: the two rigid translations along x and y and the rigid rotation about z. This can be systematically accomplished by deleting or “striking out” rows and columns number 1. −0. rank r = 3 and a rank deficiency of d = N − r = 6 − 3 = 3 (these concepts are summarized in Appendix C. Solving for Displacements Solving the reduced system by hand (for example. 2 and 4.6 and Chapters 8–9. Remark 3. respectively.  u y2   0      u x3 0. f x3 = 2.2.§3. To apply (3. the free-free master stiffness matrix K in (3. are handled as described in §3. §3. or simply the displacement solution.15) Equation (3.4 u y3 −0.13) we have to remove equations 1.1. 1 (3. 2 1 −10 −10 0 −5 10 15 (3. Then recover local joint displacements from u¯ e = Te ue .3.4. Two such steps are described below. for example the reaction forces at the supports.Chapter 3: THE DIRECT STIFFNESS METHOD II §3.2  0 −0.4.1.4   −0. The recovery of derived quantities is part of the so-called postprocessing steps of the DSM. are depicted in Figure 3. Recovery of Internal Forces and Stresses Often the structural engineer is not so much interested in displacements as in internal forces and stresses.2 −0. Furthermore we get three reaction forces: f x1 = f y1 = −2 and f y2 = 1 that are associated with the support conditions (3. this is the topic of Exercise 3.1.13).4 −0.17): u(2) = [ u x2 u y2 u x3 u y3 ]T = [ 0 0 0. PostProcessing The last processing step of the DSM is the solution for joint displacements.3. Extract the global displacements of the member from (3. It is easy to check that the complete force system is in self equilibrium for the free-free structure. Fe = E e Ae e d . But often the analyst needs information on other mechanical quantities. Recovery of Reaction Forces Premultiplying the complete displacement solution (3. The average axial stress σ e is obtained on dividing F e by the cross-sectional area of the member. or the internal member forces. §3. Convert to local displacements using u¯ (2) = T(2) u(2) :       u¯ x2 cos 90◦ sin 90◦ 0 0 u x2 0 0 0   u y2   −1  u¯ y2   − sin 90◦ cos 90◦ =  u¯  =  0 0 cos 90◦ sin 90◦   u x3   0 x3 u¯ y3 0 0 − sin 90◦ cos 90◦ u y3 0 3–8 1 0 0 0 0 0 0 −1     0 0 0 0 0   0  = .19) Note that u¯ eyi and u¯ ey j are not needed in computing d e . 1   0.4. §3. These are in fact the most important quantities for preliminary structural design. study §3. denoted by F (1) .14). F (2) and F (3) .2 ]T . Such quantities are said to be derived because they are recovered from the displacement solution.4 (3. For a deeper look at reaction recovery.4.4 2 −10 −10 0 0 10 10 −0. For the example truss these forces.18) This vector recovers the known applied forces (3. In pinjointed trusses the only internal forces are the axial member forces. The axial force F e in member e can be obtained as follows.1. as can be expected.20) . Example 3.2. Member (2) goes from node 2 to node 3 and ϕ (2) = 90◦ . Extract the displacements of member e from the complete displacement solution u to form ue . Recover F (2) in example truss.17) by K we get      0 −2 20 10 −10 0 −10 −10 10 0 0 −10 −10   0   −2   10      0 10 0 0 0 0   0  −10 f = Ku =   =  0 0 5 0 −5   0   1   0      0. Le (3. Compute the member elongation d e (relative axial displacement) and recover the axial force from the equivalent spring constitutive relation: d e = u¯ ex j − u¯ exi . 3. The three x node displacements u 1 = u x1 . a reinterpretation is in order. It is discretized by two equal-size elements as shown in Figure 3. To cover it. (b) details of computation for member (2).19) is to regard ee = d e /L e as the (average) member axial strain. consider f as the superposition of applied and reaction forces: K u = f = fa + fr. (3. and F (3) = 2 2 = 2. §3. √ Follwing his procedure for all members provides F (1) = 0. Remark 3.       2 1 2 1 (3.3.3.22). a compressive axial force. and F e = Ae σ e as the axial force. f y1 = f y1 and f y2 = f y2 as reactions. The bar has length L. u 2 = u x2 and u 3 = u x3 are taken as 3–9 . The fixed-free prismatic bar pictured in Figure 3.4 POSTPROCESSING uy3 =−0.4.4. The member elongation is d (2) = u¯ x3 − u¯ x2 = −0. which are known before solving. it oversimplifies the general case. *Reaction Recovery: General Case Node forces at supports recovered from f = Ku. This is more in tune with the Theory of Elasticity viewpoint discussed in Exercise 2. σ e = E e ee as (average) axial stress. Entries of f r that are not constrained are set to zero.1.4(a) is subjected to a uniformly line load q per unit length. Every nonzero entry in f comes from either f a or f r . upon assembly ⇒  f  0  x1 f  y1   0    0  0      f=  f y2  =  0  +       2 1 2 1  f x1 f y1  0   f y2   0 0  −2  upon recovery ⇒ 0  −2   −2   0   −2   0  0  0       f=  1  = 0 +  1 . elastic modulus E and cross-section area A. An alternative interpretation of (3. Internal force recovery for example truss: (a) member axial forces F (1) .82843.6. Although the statement is correct for the example truss.§3. were called reactions in §3. where u is the complete displacement solution.4. This often occurs when distributed loads such as pressure or own weight are lumped to the nodes. whereas f r collects unknown reaction forces to be recovered in post-processing.2 (a) (3) F (3) ux3 =0. For the example truss. F (2) and F (3) . however.2) = −1. whence F (2) = (50/10) × (−0.21) Here f a collects applied forces. F (2) = −1. with arrow directions pertaining to tension.4 (b) 3 3 (2) (2) F (2) F (2) Disconnect F (1) 1 0 2 2 (1) 0 Figure 3. If nonzero applied forces act directly on supported interpret f x1 = f x1 freedoms. The adjustment can be more easily understood by following the simple example illustrated in Figure 3. This allows us to r r r .2.22) 0 0 There is a clean separation in (3.2 − 0 = −0.4(b). 5. (a) bar under distributed load.23) Applying the displacement BC u 1 = 0 and solving gives u 2 = 3q L 2 /(8E A) and u 3 = q L 2 /(2E A). For the example truss the freedom-pointer technique expresses the entries of K as the sum K pq = 3 . f 2a = 12 q L and f 3a = 14 q L at nodes 1. Their entries are directly merged into those of K through the use of a “freedom pointer array” called the Element Freedom Table or EFT. (3. *Computer Oriented Assembly and Solution §3. 2 and 3.. The master stiffness equations configured as per (3. qL fr = f − fa = 4 −3 2 1 qL − 4 1 2 1 = −q L 0 0 .2.1.2. and study only (I). *Assembly by Freedom Pointers The practical computer implementation of the DSM assembly process departs significantly from the “augment and add” technique described in §3.24) The fixed-end reaction emerges as f 1r = −q L. (II) The master stiffness matrix K is stored using a special format that takes advantage of symmetry and sparseness..5.Chapter 3: THE DIRECT STIFFNESS METHOD II (c) qL 1 qL/4 (b) . (c) free body diagram showing applied node forces in blue and support reaction in red. (b) two-element FEM idealization. A simple problem to illustrate reaction recovery of support reactions when nonzero applied loads act on supports. . . (3.4(c). A constant q (uniform) x L 1 qL/4 1 2 qL/2 L/2 L/2 3 qL/4 2 2 qL/2 3 qL/4 Figure 3. For simplicity we shall assume here that K is stored as a full square matrix. (a) E.21) are 2E A L 1 −1 0 −1 2 −1 0 −1 1 u1 u2 u3 qL = f = fa + fr = 4 1 2 1 + f 1r 0 0 . the correctness of which may be verified on examining the FBD of Figure 3. This general recovery procedure should always be followed when reaction values are used in the design of structural supports. §3. respectively. Note that taking f 1 = −3q L/4 as reaction would be in error by 25%..4. degrees of freedom. The line load is converted to node forces f 1a = 14 q L. There are two major differences: (I) Member stiffness matrices are not expanded. using the EbE method discussed in Chapter 7. Force recovery yields qL f = Ku = 4 −3 2 1 . Difference (II) is a more advanced topic that is deferred to the last part of the book. 7) through (3. (3. EFTe denotes the Element Freedom Table for member e. For the example truss these tables are EFT(1) = {1. . p = EFTe (i). 2. . . 3. K iej for i = 1. .25) e=1 Here K iej denote the entries of the 4 × 4 globalized member stiffness matrices in (3.9).26) . 6}. 3–10 EFT(3) = {1. . j = 1. 4. 4. 4}. EFT(2) = {3. . Entries K pq that do not get any contributions from the right hand side remain zero. 5. (3. 6}. 5. 4. q = EFTe ( j). 2. 2. This happens. Note that (3. for example u y2 = 0.§3. such intelligence cannot be expected.6 PRESCRIBED NONZERO DISPLACEMENTS Physically these tables map local freedom indices to global ones. say. There are cases.5 follows the scheme (3. §3. Advantage may be taken of the symmetry of Ke and K to roughly halve the number of additions. Prescribed Nonzero Displacements The support conditions considered in the example truss resulted in the specification of zero displacement components. reading a floating-point number from memory at a random address takes 100 to 1000 times as long as performing a floating-point arithmetic operation on numbers that are already in registers. §3. 3–11 .1 the support conditions (3. consequently EFT(2) (3) = 5.25) involves three nested loops: over e (outermost). where the known value is nonzero. in the study of settlement of foundations of ground structures such as buildings and bridges.17) directly. over i. and the modified system must be set up explicitly. It was previously noted that on the computer the number of equations is not the only important consideration.1 To apply support conditions without rearranging the equations we clear (set to zero) rows and columns corresponding to prescribed zero displacements as well as the corresponding force components.4.5.12) to (3. The ordering of the last two is irrelevant. For the example truss this approach yields 1 0 0 0 0 1 0 0  0 0 10 0  0 0 0 1  0 0 0 0 0 0 0 0 0 0 0 0 10 10     0 u x1 0 0   u y1   0      0    u x2  =  0  .15).  0  u y2   0      u x3 10 2 u y3 15 1 (3.3. Remark 3. particularly if the coefficient matrix is stored in sparse form or on secondary storage. The resulting system is called the modified set of master stiffness equations. a library of scientific routines or a commercial program such as Matlab or Mathematica. But it has a serious flaw for computer implementation: the equations must be rearranged. 2 and 4 have been cleared. Solving this modified system produces the complete displacement solution (3. The treatment of this generalization of the FEM equations is studied in the following subsections.25) by hand. Rearrangement can be as or more expensive than solving the equations. The assembly process for general structures using this technique is studied in Chapter 25. and over j. However. if one is using a standard solver from. 1 On most modern computers. For example.13) were applied by reducing (3. The solver is then programmed to skip those equations. It is sufficient to mark the equations that correspond to displacement BCs. Mathematically these are called non-homogenous boundary conditions. and place ones on the diagonal to maintain non-singularity. *Applying DBC by Modification In §3.27) in which rows and columns for equations 1. freedom number 3 of member (2) is u x3 . which is number 5 in the master equations. In a “smart” stiffness equation solver the modified system need not be explicitly constructed by storing zeros and ones. for example. Reduction is convenient for hand computations because it cuts down on the number of equations to solve. Exercise 3. and in the analysis of motion-driven machinery components.6. however. 4 (3. leaving only   0  −0..1. which is suitable for hand computations.28)   =  0 0 5 0 −5   u y2   f y2   0      −10 −10 0 0 10 10 u x3 f x3 −10 −10 0 −5 10 15 u y3 f y3 Suppose that the applied forces are again (3. u y1 = −0. analogous to that used in §3. Application of Nonzero-DBCs by Reduction We describe first a matrix reduction technique.5.30) are removed.4 going up u y1 = −0.5   f y1   10      0 10 0 0 0   u x2   0   −10 (3.5  −10 0 10 0 0 0  0   u  −10 −10 0 0 10 10  x2  = 2  0. second and fourth rows of (3.31) .14) but the prescribed displacements change to u x1 = 0.28) we get      20 10 −10 0 −10 −10 0 f x1 10 0 0 −10 −10   −0. .5.Chapter 3: THE DIRECT STIFFNESS METHOD II fy3 = 1 3 fx3 = 2 u y2 = +0. .3. u y2 = 0.4   f y2   0      −10 −10 0 0 10 10 u x3 2 −10 −10 0 −5 10 15 u y3 1 The first. 2 ux1 = 0 no horizontal motion Figure 3.12) for the example truss:      u x1 20 10 −10 0 −10 −10 f x1 10 0 0 −10 −10   u y1   f y1   10      0 10 0 0 0   u x2   f x2   −10 (3. §3...29) This means that joint 1 goes down vertically whereas joint 2 goes up vertically..30) =      0 0 5 0 −5   0. Recall the master stiffness equations (3.1.6.4  −10 −10 0 −5 10 15  1  u x3 u y3 3–12 (3. The example truss with prescribed nonzero vertical displacements at joints 1 and 2. as depicted in Figure 3.5.5 going down 1 . Inserting the known data into (3. . 36) As before.32) These are the reduced stiffness equations.4.4  u x3 10 −3 u y3 15 −2 (3. columns 1. It consists of the applied joint forces modified by the effect of known nonzero displacements. 2 and 4 of the coefficient matrix are cleared by transferring all known terms to the right hand side.2.2 ]T .5 0 −0. the main objective is to avoid rearranging the master stiffness equations. u y3 0.34) Taking the solution (3.2. we can find that reaction forces and internal member forces do not change.5) + 0 × 0.33). as illustrated for the example truss and the displacement boundary conditions (3.2 Filling the missing entries with the known values (3. 2 and 4 are removed by transferring all known terms from the left to the right hand side: 10 0 0 u x2 0 (−10) × 0 + 0 × (−0.6.34).4 0. 2 and 4 are modified so that they become trivial equations. the fourth equation is simply 1×u y2 = 0.6 PRESCRIBED NONZERO DISPLACEMENTS Columns 1. §3. 3–13 .5) + 0 × 0.4 u x3 = 2 − 0 10 15 u y3 1 (−10) × 0 + (−10) × (−0.27) as may be expected.5.4).30) by construction (for example. As there. If all prescribed displacements are zero.§3. These are called the modified node forces or effective node forces. *Application of Nonzero-DBCs by Modification The computer-oriented modification approach follows the same idea outlined in §3. Note that (3. forces on the right hand side are not modified. The right hand side. We thus arrive at 1 0 0 0 0 1 0 0  0 0 10 0  0 0 0 1  0 0 0 0 0 0 0 0 0 0 0 0 10 10     0 u x1 0 0   u x2   −0. Solving the reduced system yields 0 u x2 (3.5      0    u x2  =  0       0   u y2   0.29):      1 0 0 0 0 0 u x1 0 1 0 0 0 0   u x2   −0.4       u x3 −10 −10 0 0 10 10 2 u y3 −10 −10 0 −5 10 15 1 The solution of this system recovers (3.5 0. To understand the process it is useful to think of being done in two stages. 0 10 10 (−10) × 0 + (−10) × (−0.32) is exactly the same as in the reduced system (3.5 .4 0 = −3 .35)  0 0 0 1 0 0   u y2   0. This is a consequence of the fact that the example truss is statically determinate. First equations 1. however. following the same procedure explained in (3. and one would get (3. The force systems (internal and external) in such structures are insensitive to movements such as foundation settlements.4 −2 (3. In the next stage. (3.34) and going through the postprocessing steps discussed in §3. these are called the modified master stiffness equations.29) yields the complete displacement solution (listed as row vector to save space): u = [0 −0.5   0  −10     0 10 0 0 0    u x2  =  0  (3.15) for prescribed zero displacements. Solving this system yields the complete displacement solution (3.36) retains the original number and order as well as matrix symmetry. Note that its coefficient matrix of (3.5) + (−5) × 0.33) u x3 = −0. is different. u2 = 0. If the support B. (3. On transferring the known terms to the right hand side the first matrix equation becomes K11 u1 = f1 − K12 u2 . matrix operations such as K12 u2 involve indirect (pointer) addressing so as to avoid explicit array rearrangement. This system is often denoted as  Ku = ˆf.38) through the following rearrangement:    K11 0 u1 f − K12 u2 = 1 . that are known. It is essential that the procedural steps be executed in the indicated order. because stiffness terms must be used to modify forces before they are zeroed out.38) This is the reduced master equation system.39) are (3. First. This is called the force modification step.37) In this matrix equation. 3–14 . and the prescribed displacements stored in the reaction-force slots. The modification is not actually programmed as discussed above. consequently f2 is called the reaction vector. Thus.38) and (3.27). and we do not need to change the right-hand side: K11 u1 = f1 . (3. *Matrix Forms of Nonzero-DBC Application Methods The reduction and modification techniques for applying DBCs can be presented in compact matrix form. The computer-oriented modification technique retains the same joint displacement vector as in (3.3. subvectors u2 and f1 collect displacement and force components. u2 = u x2 u x3 u y3 ≡ DOF #3 DOF #5 DOF #6 .39) Examples that illustrate (3. respectively. rows and columns of the stiffness matrix are cleared as appropriate and ones stored in the diagonal positions.42) The example shows that u1 and u2 are generally interspersed throughout u. given or prescribed. (3. Second.40) u2 u2 0 I This modified system is simply the reduced equation (3. respectively. For the computer implementation it is important to note that the partitioned form (3. First the applied forces in the right-hand side are modified for the effect of nonzero prescribed displacements. that are unknown.37) is only used to allow use of compact matrix notation. (3. For instance. in the example truss u1 = u x1 u y1 u y2 ≡ DOF #1 DOF #2 DOF #4 . §3.32) and (3. Subvectors u1 and f2 collect force and displacement components. Forces in f2 represent reactions on supports.s are homogeneous (that is.41) yields the complete displacement solution.C. (3.41) Solving (3.6. respectively. the free-free master stiffness equations Ku = f are partitioned as follows: K11 K21  K12 K22 u1 u2  =  f1 . In actual programming the equations are not explicitly rearranged: they retain their original numbers. f2 (3. This is called the stiffness modification step. all prescribed displacements are zero).Chapter 3: THE DIRECT STIFFNESS METHOD II Remark 3.38) augmented by the trivial equation Iu2 = u2 . including the specified displacements u2 .5. 15) is a reduced stiffness whereas that in (3. students were allocated 2 CPU hours per semester. 3 As an illustration. They were motivated by computer resource limitations of the time: memory was scarce and computing time expensive. along with globalization and application of BCs. allows the use of built-in solvers.3 On the negative side. References Referenced items have been moved to Appendix R. More precisely. Or as input to a model reduction process. The output of the assembly process is what is called here a reduced stiffness matrix. and was as fast as an IBM PC of the mid 1980s. 3–15 . served the whole Berkeley campus. The most common variations arise in two contexts: (1) Some treatments apply support conditions during merge. as elements are formed and merged.§3. interweaving leads to unmodular programming (which easily becomes “spaghetti code” in lowlevel languages such as Fortran).3. the first computer used by the writer. as described in §3. although the latter is still considered an advanced topic. These priority changes reflect economic reality: human time is nowadays far more expensive than computer time. displacement boundary conditions are applied. The general-case recovery of reactions. which simplifies scripting in higher order languages such as Matlab is desirable because it increases “plug-in” operational flexibility. In those cases the solution stage can wait. Martin [474].2 MB). Authors have introduced “quirks” although the overall concepts are not affected.4. they are important from a instructional standpoint. for example in dynamics. and Gauss elimination and reduction of the right hand side starts once the assembler senses (by tracking an “element wavefront”) that no more elements contribute to a certain node. Both variants appeared in FEM programs written during the 1960s and 1970s. and reduces the chance for errors. the coefficient matrix in (3. Getting a moderately complex FE model through involved heavy use of slower secondary storage such as disk (or magnetic tape) in batch jobs.401]. Modularity. the “classical mainframe” IBM 7094.D. vibration or stability analysis. Both the hand-oriented and computer-oriented application of boundary conditions have been presented here. The augment-and-add procedure for hand assembly of the master stiffness matrix is due to H.2 (2) In the frontal solution method of Irons [399. which is typically the largest component of a general-purpose FEM program. Notes and Bibliography Notes and Bibliography The coverage of the assembly and solution steps of the DSM. it has to know how to pass and receive information about each element. explicitly eliminating known displacement freedoms as the elements are processed and merged into K. with the processing power of an iPhone. Ph.768 36-bit words (≈ 0. is not covered in any FEM textbook. 2 For the example truss. A minor change deep down the element library can propagate and break the solver. assembly and solution are done concurrently.27) is a modified one. While hand computations become unfeasible beyond fairly trivial models. Squeezing storage and CPU savings on present computers is of less significance. Since a frontal solver has to access the element library. is not uniform across the wide spectrum of FEM books. One mainframe. A side benefit of modular assembly-solution separation is that often the master stiffness must be used in a different way than just solving Ku = f. had a magnetic-core memory of 32. Any method: augment-and-add.. Verify that this system cannot be solved for the joint displacements u y2 .2 compute the axial forces in the three members EXERCISE 3. EXERCISE 3.3 [A:20] Describe an alternative method that recovers the axial member forces of the example truss from consideration of joint equilibrium. (d) Recover the axial forces in the two members. or the more advanced “freedom pointer” technique explained in §3.01758. 2. §C. in §3. A(2) Figure E3. u x3 and u y3 because the reduced stiffness matrix is singular. Note: start from K initialized to the null matrix.15) for this case.13) is u x2 = 0 instead of u y2 = 0.Chapter 3: THE DIRECT STIFFNESS METHOD II Homework Exercises for Chapter 3 The Direct Stiffness Method II EXERCISE 3.2 of Appendix C for a “refresher” in that topic. Partial answer: F (3) = 2 2.6 [N:25] Consider the two-member arch-truss structure shown in Figure E3. and verify that this force system satisfies translational and rotational (moment) equilibrium. Rederive the reduced system (3. and horizontal crown force P = f x2 = 12.25). Partial result: u x2 = 9/512 = 0.1. 4 A matrix is singular if its determinant is zero. cross section areas A(1) = 2 and A(2) = 4.4 [A:20] Suppose that the third support condition in (3. Verify that overall force equilibrium (x forces. Result should be F (1) = −F (2) = 15/2. without going through the computation of member deformations. f x2 = P u x2 2 (2) y 1 S/2 S . EXERCISE 3. 3.4. then cycle over e = 1.12) using the freedom- pointer technique (3. Using the DSM carry out the following steps: (a) Assemble the master stiffness equations.7.5. Can this method be extended to arbitrary trusses? EXERCISE 3. y forces.1.18) acting on the free-free truss structure. is acceptable.5 [N:20] Construct by hand the free-free master stiffness matrix of (3. Truss structure for Exercises 3. cf.6 and 3.1 [A:15] Draw a free body diagram of the nodal forces (3. 3 x S/2 E. height H = 3. elastic modulus E = 1000. and moments about any point) is satisfied.2 [A:15] Using the method presented √ of the example truss. (c) Recover the node forces at all joints including reactions. A(1) (1) H . EXERCISE 3. f y2 = 0 u y2 E. (b) Apply the displacement BCs and solve the reduced system for the crown displacements u x2 and u y2 . 3–16 ..4 Offer a physical interpretation of this failure. Take span S = 8.1. 0      0   u y3   0       c2 s u x4 0 u y4 c3 0 (E3.. Why do F (1) and F (3) “blow up” if H = 0 and α → 0? 3–17 .6 if the vertical right support “sinks” so that the displacement u y3 is now prescribed to be −0. this structure is statically indeterminate as long as α = 0. are to be kept as variables.1 to apply the displacement BCs. Truss structure for Exercise 3.. Partial answer: F (3) = −H/(2s) + Pc2 /(1 + 2c3 ). . Show that the master stiffness equations are  2cs 2    EA   L     0 1 + 2c3 −cs 2 c2 s cs 2 c2 s −c3 −c2 s c3 0 0 0 −1 0 0 0 0 0 0 1 symm −cs 2 −c2 s 0 0 0 0 cs 2     −c2 s u x1 H 3 −c   u y1   −P      0    u x2   0      0   u y2   0    u x3  =  0  . α. This truss has 8 degrees of freedom.2. omitting (d) — of the problem of Exercise 3. Why does u x1 “blow up” if H = 0 and α → 0? (d) Recover the axial forces in the three members. with six of them removable by the fixed-displacement conditions at nodes 2. . (c) Solve for the displacements u x1 and u y1 .8. Explain from physics why the 5th row and column contain only zeros.5..1) in which c = cos α and s = sin α. Use the matrix reduction scheme of §3.2. All geometric and material properties: L.Exercises EXERCISE 3. E and A. (a) y . (b) Apply the BCs and show the 2-equation modified stiffness system. Everything else is the same. x 3 2 (2) L (1) α 4 α (3) E and A same for all three bars 1 H P Figure E3. 3 and 4. Check that the solution makes physical sense for the limit cases α → 0 and α → π/2. Unlike previous examples.6. as well as the applied forces P and H .7 [N:20] Resolve items (a) through (c) — EXERCISE 3.8 [A/C:25] Consider the truss problem defined in Figure E3. 4 Analysis of Example Truss by a CAS 4–1 . . . . . . . . . . . . . . . . . . . . . . . References . §4. . . .5 §4. . . . Putting the Pieces Together . . . . . . . . . . §4. . . §4. The Element Stiffness Module . . . . . .1 Why Mathematica? . . . . .2 Is All of This Worthwhile? . . . . . .3 Programming Style and Prerequisites . . . . . . . . . . . . . .4 Testing the Member Stiffness Module . . . . . . . . . . . . . . . .1. . Exercises . . .8. §4. Program Organization . . .1. . . .3.8 §4. . . . . .1. . . . . . . §4. Assembling the Master Stiffness . . . §4. . . . . §4. . . . . . . . . . . .2 Programming Remarks . .3. §4. . . . . . Merging a Member into the Master Stiffness . . . . . . . . . . . . . . . . . . . . .Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS TABLE OF CONTENTS Page §4. . §4. 4–2 4–3 4–3 4–3 4–4 4–5 4–6 4–7 4–7 4–8 4–9 4–9 4–9 4–11 4–11 4–13 4–14 4–14 4–15 4–17 4–17 4–18 . . .1. . Notes and Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . .2 §4. .1 Module Description . Modifying the Master System . . . .3 §4. . . . . . . . . . . . . . . .8. . . . . . . . . . . . . . . .3. . . . . . . . . . . . . . . . Recovering Internal Forces . . . . . . §4. . . . . . . . . . . . . .3 Case Sensitivity . . . . . . .3. . . . . . . . . . . . . . .1 §4. . .4 Class Demo Scripts . . . .2 How to Get It . . . . . . . . Computer Algebra Systems . . . . . . . §4. . . . . . .6 §4. . .1 The Driver Script .7 §4. . . . . .4 §4. . . §4. . See Notes and Bibliography at the end of the Chapter. and Mathematica is no exception.§4. As of now. At CU Boulder. It provides professional typesetting for results. On all machines Mathematica offers a graphics user interface called the Notebook front-end. Historical notes: Macsyma died as a commercial product in 1999. only humans can do mathematics.” It is more appropriate to regard such programs as enabling tools that help humans with complicated and error-prone manipulations.1 COMPUTER ALGEBRA SYSTEMS §4.1. called Macsyma (an acronym for Project Mac Symbolic Manipulator) — was developed using the programming language Lisp at MIT’s famous Artificial Intelligence Laboratory over the period 1967 to 1980.1. was purchased in 2009 by the Japanese software retailer Cybernet Systems. C or Fortran. some of which are available free or at very reasonable cost.wolfram. 2.1). 4. Good documentation and abundance of application books at all levels. for instance. As of this writing the leading general-purpose contenders are Maple and Mathematica. §4. The first comprehensive system — the “granddaddy” of them all. is computational inefficiency in numerical calculations compared with a low-level implementation in. also known as Maplesoft. This means the ability to get FEM programs up and running in very short time. 2 Another commonly used program for engineering computations: Matlab. The version used to construct the code fragments presented in this Chapter is 4. with capabilities for symbolic manipulation and graphics as a bonus. Mettle and metal.com. For instructional use. known by the acronym CAS. the Matlab symbolic toolbox is likely to be replaced. The relative penalty can reach several orders of magnitude. 1 Some CAS vendors call that kind of activity “doing mathematics by computer. Why Mathematica? In the present book Mathematica will be used for Chapters and Exercises that develop symbolic and numerical computation for matrix structural analysis and FEM implementations. however. As a result.2 In addition there are a dozen or so more specialized programs. This is mandatory for serious work. although the Lisp source code of some versions is freely available.. web site: http://www. released in 2011. (Update: The latest version is 8. The Maple developer company Waterloo Maple Inc. Mathematica is a commercial product developed by Wolfram Research. the penalty is acceptable when compared to human efficiency. The number and quality of symbolic-manipulation programs has expanded dramatically since the availability of graphical workstations and personal computers has encouraged interactive and experimental programming. 3. it is available through a free campus license (see §4. are programs designed to perform symbolic and numeric manipulations following the rules of mathematics. Up-to-date user interface. Computer Algebra Systems Computer algebra systems.) The main advantages of Mathematica for technical computing are: 1. A powerful programming language. 4–3 . One common disadvantage of CAS.1.1.1 The development of such programs began in the mid 1960s. does only numerical computations although a [poorly done] interface to Maple can be purchased as a toolbox. Availability on a wide range of platforms that range from PCs and Macs through Unix workstations. which was commercially released in 2001. a free one-year license from CU’s Information Technology Services (ITS) is available. 3) A password (unique to your computer) will be forwarded to you via email from Site Licensing ITS Support Question & tech support problems: send email to sitelic@colorado. One correction: the CD version is no longer available. Figure 4. When approaching that level you may notice that functions in Mathematica display many aspects similar 3 This was written in 2001.Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS Eligibility: students. With the Notebook interface and a good primer it takes only a few hours. AIX. or are willing to learn to be one. Solaris. How to Get It Starting 1 August 2007. HP-UX How to Get It 1) Download and install software as per instructions at http://oit.edu/software-hardware/site-licenses/mathematica or request an installation CD from the Site Licensing office: [email protected]. 303-492-8995 2) Register your copy online at http://register. See Figure 4.1.edu. Linux.colorado. Windows.1 for the “How to Get It” instructions. this option does not seem to exist anymore. Instructions to get Mathematica for free from CU-OIT (Office of Information Technology). If you plan to keep Mathematica for a longer time.edu Periodic hands-on workshops are available for those new to the software. staff and departments of all CU campuses Platforms: Mac OSX. Practice with the program until you reach the level of writing functions. Programming Style and Prerequisites The following material assumes that you are a moderately experienced user of Mathematica. §4.com/ using campus license number L2437-5121 plus your computer MathID number. Students may renew this license as long as they are registered.1. faculty. modules and scripts with relative ease.wolfram. Be sure to use your CU mail address. See Notes and Bibliography for a brief discussion of tutorial and reference materials in case you are interested.1.2. Details (for example: what is a MathID?) about licensing & support are posted at the above web site. an academic version is available. it won’t launch if the disk is erased or replaced.) §4. (For example. it cannot be transferred to another computer since the license is forever keyed to the disk identification. click on Workshops on the Web page given above.3 One word of caution about the campus-licensed free copy: once installed on your laptop or desktop. The best way to learn it from scratch is trying it as a calculator and using online help as needed. 4–4 . But such precise levels of interface control are rarely needed in symbolic languages. The programming style enforced here outlaws output arguments and a function can only return its name. Modula. 5 In Mathematica everything is a function. and the fact that internal variables are global unless otherwise made local. §4.8 The code presented in §4. for instance DotProduct[x . 4 Simple functions can be implemented in Mathematica directly.2 and 4. 6 Such restrictions on arguments and function returns are closer in spirit to C than Fortran although you can of course modify C-function arguments using pointers — exceedingly dangerous but often unavoidable. 4–5 . Class Demo Scripts The cell scripts shown in Figures 4. such as matching arguments by pattern.y. 7 The name Module should not be taken too seriously: it is far away from the concept of modules in Ada. The program will rely heavily on the development and use of functions implemented using the Module construct of Mathematica. But since the name can be a list of arbitrary objects the restriction is not serious.3 will be used to illustrate the organization of a Notebook file and the “look and feel” of some basic Mathematica commands. Thus the style will be one of procedural programming. Example: in C for is a loop-opening keyword. more complicated functions are handled by the Module construct. These constructs are called rules by computer scientists. But Mathematica functions do have some unique aspects.5 Modification of function arguments should be avoided because it may be difficult to trace side effects. including programming constructs.§4. 8 Indeed none of the CAS packages in popular use is designed for strong modularity because of historical and interactivity constraints.y ]:=x. and these are briefly noted in the text so that appropriate reference to the Mathematica reference manual can be made.6 Our objective is to develop a symbolic program written in Mathematica that solves the example plane truss as well as some symbolic versions thereof.2 through §4.1. These scripts will be demonstrated in class from a laptop.7 The program will not be particularly modular (in the computer science sense) because Mathematica is not suitable for that programming style.4 You can exploit this similarity if you are proficient in that language. Oberon or Fortran 90. whereas in Mathematica For is a function that runs a loop according to its arguments.1 COMPUTER ALGEBRA SYSTEMS to C.4.8 uses a few language constructs that may be deemed as advanced. Fa=Integrate[f[z.Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS Integration example f[x_.2.0.-1.2].3. F=Integrate[f[x.5.1. (Note: displayed results were obtained with Mathematica version 4. Example cell for class demo. F=NIntegrate[f[x.044522437723455 Figure 4.) 4–6 .0445 F=13. (* very slow but you get *) Print["Fa=".{a. Result after Simplify[ .2.. Integration answers from versions 5 and up are quite different.5}].] 50 0 -50 10 1 5 0 0 -5 -1 Result after FullSimplify[ .{x.0.-1..b].-1.2].F//InputForm]. F=Simplify[F]. Fa=Simplify[Fa].5}. Print[F].Fa].{x.a.ViewPoint->{-1.-1.{b. Print["Fa=".10}.Fa]. Fa=FullSimplify[Fa]. Plot3D[Fa.-10.5}]. Print[N[F]]. ] -10 Figure 4.1}].β_]:=(1+β*x^2)/(1+α*x+x^2).{z. Print["F=". 10 + Log[21] 13. Another example cell for class demo.0.α_.5}]. gives the output shown in the bottom box. §4. It displays the names of the module that implement the functional tasks and the cells where they reside. An important example of a level-two list is a matrix. §4. 4–7 . Such descriptive names are permitted by the language.y1 } is a list of two items.3. by clicking on it and hitting an appropriate key (<Enter> on a Mac). The Element Stiffness Module As our first FEM code segment. are described in the sections below. On the other hand. (b) organization by cell and module names. the top box of Figure 4.3. which in turn calls two functions: form bar stiffness and merge into master stiffness.§4. Executing the cell. This kind of functional division would be provided by any programming language. The text in that box of that figure is supposed to be placed on a Notebook cell. Figure 4. Example truss program: (a) organization by function. §4. The contents of the figure is described in further detail below. Program Organization The overall organization of the example truss program is flowcharted in Figure 4.2.y1 }.{ x2.y2 } } 9 A two-level list9 containing the {x.5 shows a module that evaluates and returns the 4 × 4 stiffness matrix of a plane truss member (two-node bar) in global coordinates.4(b). Module Description The stiffness module is called ElemStiff2DTwoNodeBar.4(a) illustrates the program as divided into functional tasks. one by one.4. For example: { x1. from left to right and bottom to top.4. This reduces the need for detailed comments. y} coordinates of the bar end A level-one list is a sequence of items enclosed in curly braces. Figure 4.3 (a) Stiffness Assembler Problem Driver Application of Support BCs (b) User prepared script Built in Equation Solver Driver script (not a module) Cell 7 Internal Force Recovery Merge of Bar Stiffness Bar Stiffness THE ELEMENT STIFFNESS MODULE AssembleMasterStiffOfExampleTruss ModifiedMasterStiffForDBC Cell 3 Cell 4 Built in Equation Solver IntForcesOfExampleTruss Cell 6 MergeElemIntoMasterStiff Cell 2 Derived in Chapter 2 Bar Internal Force IntForces2DTwoNodeBar ElemStiff2DTwoNodeBar Cell 5 Cell 1 Element Library Element Library Figure 4. (Those program objects: modules and cells. going cell by cell.1. A level-two list is a list of level-one lists.4(b) is Mathematica specific. that is. For example the driver program calls the stiffness assembler. The module takes two arguments: { { x1. For tutorial purposes this is done in a “bottom up” fashion.) The following sections describe the code segments of Figure 4. Print[Ke//MatrixForm]. s*c. j of previous Chapters.{100.{Em_. c*s. but we must live with the rules of the language. The use of the underscore after argument item names in the declaration of the Module is a requirement for pattern-matching in Mathematica.{x2_.5 uses several intermediate variables with short names: dx.L}}. The module name returns the 4 × 4 member stiffness matrix internally called Ke.A } A one-level list containing the bar elastic modulus. 11 The “global by default” choice is the worst one. {-s*c. This is a common FEM programming practice.Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS ElemStiff2DTwoNodeBar[{{x1_. 4–8 .{Em. however. Print["Symbolic elem stiff matrix:"].dx=x2-x1.-s^2}.A}].0}. c and L. Module ElemStiff2DTwoNodeBar to form the element stiffness of a 2D 2-node truss element in global coordinates.3 as to why name E cannot be used.5.L. {-c^2.A_}] := Module[{c. you have learned functions and modules this language-specific feature should not come as a surprise. Ke=(Em*A/L)* {{ c^2.-s*c.] construct this is done by listing those names in a list immediately 10 These are called the local node numbers. s=dy/L. See §4. Return[Ke] ].-s*c. E and the member cross section area. The specification format in fact closely matches the mathematical expression given as (2. s*c}. the elegant direct declaration of the matrix Ke as a level-two list.{10. It is strongly advisable to make these symbols local to avoid potential names clashes somewhere else. Ke=Simplify[Ke. §4.18) in Chapter 2.-s^2.dy=y2-y1.-c*s}. c=dx/L.3. Note.10 { Em.10}}. The logic that leads to the formation of that matrix is straightforward and need not be explained in detail. L=Sqrt[dx^2+dy^2].11 In the Module[ .y1_}.-c^2. Numerical elem stiff matrix: 10 10 −10 −10 10 10 −10 −10 −10 −10 10 10 −10 −10 10 10 Symbolic elem stiff matrix: A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L A Em 2 2 L Figure 4. dy. Print["Numerical elem stiff matrix:"]. as recommended. { c*s..s.2*Sqrt[2]}]. Print[Ke//MatrixForm]. which eliminates the fiddling around with array indices typical of low-level programming languages. s^2. c^2. A.0}. Ke= ElemStiff2DTwoNodeBar[{{0. Ke= ElemStiff2DTwoNodeBar[{{0.y2_}}.2. If.L>0]. and replace the i. nodes labelled as 1 and 2..3.{L. s^2}}. s. Programming Remarks The function in Figure 4. Test statements (in blue) and test output.Ke}. 3. using all-numerical values. The first test returns the member stiffness matrix (?).§4. Mathematica issues a warning message. defined in §3.4 MERGING A MEMBER INTO THE MASTER STIFFNESS after the opening bracket. listed in Figure 4. This script calls the module and prints returned results. Em is used for the elastic modulus instead of E because (as noted above) the latter is a reserved symbol. This follows established usage in Mechanics. modulus of elasticity. Module MergeElemIntoMasterStiff receives the 4 × 4 element stiffness matrix formed by FormElemStiff2DNodeBar and “merges” it into the master stiffness. The Return statement fulfills the same purpose as in C or Fortran 90. This is fine. identifiers beginning with upper case are used for objects such as stiffness matrices. The writer strongly disagrees: the Return statement makes clear what the Module gives back to its invoker and is self-documenting. which is taken to be located at { L. the elastic module is given as Em instead of 100 as in the foregoing test.12 In the code fragments presented throughout this book.5. Two cases are tested. For example you cannot use E because of its built-in meaning as the base of natural logarithms. which is the elastic modulus. The second test returns a symbolic form in which three symbols appear: the coordinates of end node 2. appropriate to the member being merged. The print output of the test is shown in the lower portion of Figure 4. additional lower case letters are used. and the main reason for which such programs are used. if an attempt to redefine a “protected symbol” is made. 10}. is case sensitive so that for instance E is not the same as e.1. Note that the returning matrix Ke is subject to a Simplify step before printing it. namely x = x2 − x1 . It takes three arguments: 12 Ke The 4 × 4 member stiffness matrix to be merged. the reason for which is the subject of an Exercise. for example on entry to the module dx=x2-x1 initializes variable dx to be the difference of x node coordinates. Local variables may be initialized when they are constants or simple functions of the argument items. First. Next.3. Merging a Member into the Master Stiffness The next code fragment.6.4. §4. But the language designer decided that names of system-defined objects such as built-in functions and constants must begin with a capital letter. §4. System defined names should have been identified by a reserved prefix or postfix to avoid surprises. 4–9 . For example. some of the input arguments for the same member are given symbolic names so they stand for variables. Recall that the EFT lists the global equation numbers In retrospect this appears to have been a highly questionable decision. When there is danger of clashing with a protected system symbol. the stiffness of member (3) of the example truss.L } instead of {10. Consequently the liberal use of names beginning with a capital letter may run into clashes. which is the cross-section area and Em. and cross section area. The ability to carry along variables is of course a fundamental capability of any CAS.3.4. §4. This is a level-two list. as may be expected. Testing the Member Stiffness Module Following the definition of ElemStiff2DTwoNodeBar in Figure 4.5. like most recent computer languages. For example. eftab The column of the Element Freedom Table or EFT. however. Case Sensitivity Mathematica. is used in the assembly step of the DSM. A.5 there are several statements that constitute the module test script. Mathematica guides and textbooks advise against the use of that and other C-like constructs. as done in Macsyma or Maple. Because a formal argument cannot be modified.0}.{1. the updated master stiffness matrix internally called K with the member stiffness merged in. For [i=1. MergeElemIntoMasterStiff returns. Before the first call to this function. cf. The EFT is { 1. K=MergeElemIntoMasterStiff[Ke.2. i++. K[[jj.5.2.26) in Chapter 3.{6}].10}}.4 map into global freedoms 1.K]. Print[K//MatrixForm]. Kinp The incoming 6 × 6 master stiffness matrix.2. the situation is handled by copying the incoming Kinp into K (a local variable declared in the list that follows the Module name) on entry. i<=4. This is done in the first test statement using the Table function.Kin_]:=Module[ {i.K=Kin}. K=Table[0. Return[K] ].3. The test member stiffness matrix is that of member (3) of the example truss.{10.j]] ] ].2*Sqrt[2]}]. j++. Test statements (in blue) and test output. The statements after the module provide a simple test.5. For [j=i. for the four member degrees of freedom.ii]]=K[[ii.6. and is obtained by calling ElemStiff2DTwoNodeBar.6}. ii=eftab[[i]]. We encounter here a novelty: an input-output argument. Running the test statements yields the listing 4–10 .6.{100. Print["Master stiffness after member merge:"].5.jj. nested Do loops could have been used as well. Because the iterators are very simple. This is a level-two list. Print["Member stiffness matrix:"].ii. The implementation has a strong C flavor with two nested For loops. j<=4. Module MergeElemIntoMasterStiff to merge a 4 × 4 bar element stiffness into the master stiffness matrix. (3. Print[K//MatrixForm] Ke=ElemStiff2DTwoNodeBar[{{0. This is a level-one list consisting of 4 integers.eftab_. Print[Ke//MatrixForm]. Initialized master stiffness matrix: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Member stiffness matrix: 10 10 −10 −10 10 10 −10 −10 −10 −10 10 10 −10 −10 10 10 Master stiffness after member merge: 10 10 0 0 −10 −10 10 10 0 0 −10 −10 0 0 0 0 0 0 0 −10 −10 0 −10 −10 0 0 0 0 0 0 0 10 10 0 10 10 Figure 4.{6}.jj]]+=Ke[[i.2. the master stiffness matrix must be initialized to a zero 6×6 array. Print["Initialized master stiffness matrix:"].Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS MergeElemIntoMasterStiff[Ke_. as module name.6 } since element freedoms 1.j. That is the copy updated and returned via the Return statement. jj=eftab[[j]]. 5. which is handy for initializing lists. Return[K] ]. These two modules are listed in the top box of Figure 4. Test statements (in blue) and test output.{100. given in Figure 4. K= MergeElemIntoMasterStiff[Ke. That is.6}.{3. Master 20 10 −10 0 −10 −10 stiffness of example truss: 10 −10 0 −10 −10 10 0 0 −10 −10 0 10 0 0 0 0 0 5 0 −5 −10 0 0 10 10 −10 0 −5 10 15 Figure 4. the BCs are homogeneous.§4.7.2. Module AssembleMasterStiffOfExampleTruss that forms the 6 × 6 master stiffness matrix of the example truss.10}}. Print[K//MatrixForm].0}. Module ModifiedMasterStiffForDBC and ModifiedMasterForcesForDBC carry out this modification for K and f. as can be expected if all code fragments used so far work correctly.{10. K= MergeElemIntoMasterStiff[Ke. 4–11 .5. (The more general case of nonzero prescribed values is treated in Part III of the book.2.4}. K= MergeElemIntoMasterStiff[Ke.K].K].0}.7. The remaining statements are self explanatory.{6}. The output stiffness matches that in Equation (3.1/2}].6 MODIFYING THE MASTER SYSTEM AssembleMasterStiffOfExampleTruss[]:= Module[{Ke. Assembling the Master Stiffness The module AssembleMasterStiffOfExampleTruss.K=Table[0. This is done through the computer-oriented equation modification process outlined in §3.{10. listed in the top box of Figure 4. makes use of the foregoing two modules: ElemStiff2DTwoNodeBar and MergeElemIntoMasterStiff.5. The initialization of the stiffness matrix array in K to zero is done by the Table function of Mathematica.{10.2*Sqrt[2]}].0}}. The module is similar in style to C functions with no arguments.{100.{1.8.4. Ke=ElemStiff2DTwoNodeBar[{{0.7. Ke=ElemStiff2DTwoNodeBar[{{10. The output is as expected. For the example truss this list contains three entries: {1.3.10}}.6. Print["Master stiffness of example truss:"]. respectively.) The module has two arguments: pdof A list of the prescribed degrees of freedom identified by their global number.6}.{100. 4}. Modifying the Master System Following the assembly process the master stiffness equations Ku = f must be modified to account for single-freedom displacement boundary conditions. along with test statements.0}.12). to form the master stiffness matrix of the example truss.{6}]}. Ke=ElemStiff2DTwoNodeBar[{{0. The logic of both functions is considerably simplified by assuming that all prescribed displacements are zero. §4. All the example truss data is “wired in.6. §4.1}].K].2.” The output from the test script is shown in the lower box of Figure 4. K=AssembleMasterStiffOfExampleTruss[].{1. 2.5. K The master stiffness matrix K produced by the assembly process. Kij 3. Similarly nk=Length[K] assigns 6 to nk. 2 Kij 6. Print["Force vector:"]. For [k=1. Kmod[[i. For [j=1. 1 Kij 3.i]]=0]. 3. 3. Kij 5. 3 0 Kij 5. 4–12 . Modules ModifiedMasterStiffForDBC and ModifiedMasterForceForDBC that modify the master stiffness matrix and force vector of a truss to impose displacement BCs.np=Length[pdof]. This is because stiffness coefficients that are cleared in the latter are needed for modifying the force vector.{6. Print["Assembled master stiffness:"].:"]. 5 5 5 5 5 5 Kij Kij Kij Kij Kij Kij 1.2.: 0. Print["Master stiffness modified for displacement B.K_] := Module[ {i.fmod=f}. Print[K//MatrixForm]. fi 6 Figure 4. Print[f].4}.k. fi 3 . 5.K]. K=ModifiedMasterStiffForDBC[{1.{6}]. 6 0 0 0 1 0 0 0 0 Kij 5. Kij 6. Kij 4. 1 Kij 4. Print[f]. 2.k. 4.Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS ModifiedMasterStiffForDBC[pdof_.f]. 5 Kij 5.j<=nk.k++. 4.2.i]]=1]. fi 2 .k++.f_] := Module[ {i.k<=np. K=Array[Kij.4}.C. 1 Kij 1. 4. which is the length of the list pdof. 4 4 4 4 4 4 Kij Kij Kij Kij Kij Kij 1. if there were nonzero prescribed displacements present the force modification must be done before the stiffness modification. 3 0 Kij 3. fi 5 . Test statements (in blue) and test output.6}]. and returns the modified K as function value. places ones on the diagonal. On the other hand. For [k=1.8. 3 3 3 3 3 3 Kij Kij Kij Kij Kij Kij 1. 3 0 Kij 6. i=pdof[[k]]. 3.j. 6 0 0 Kij 6.Kmod=K}. Although for the example truss these values are known a priori. Module ModifiedMasterForcesForDBC has similar structure and logic and need not be described in detail.k<=np. 0.j++.C.np=Length[pdof]. Kmod[[i. 5. 2 Kij 5. Return[Kmod] ]. 1 Kij 2. f=Array[fi. 1 Kij 5. Print[K//MatrixForm]. Assembled master stiffness: Kij 1. fi 6 Force vector modified for displacement B. Return[fmod] ]. 2 Kij 2. 6 Force vector: fi 1 .:"]. fi 4 . 1 Kij 6.nk=Length[K]. It is important to note that for homogeneous BCs the modules are independent of each other and may be called in any order.C. ModifiedMasterForcesForDBC[pdof_. 5 Kij 3. fi 5 . 2 Kij 1. i=pdof[[k]]. fmod[[i]]=0]. fi 3 . Kij 2. 2 Kij 4.: 1 0 0 0 0 0 0 1 0 0 0 0 0 0 Kij 3. 6. The function clears appropriate rows and columns of K.j]]=Kmod[[j. 2 Kij 3. Print["Force vector modified for displacement B. 2. which is the order of matrix K. 6. the use of Length serves to illustrate a technique that is heavily used in more general code. 5 Kij 6. 6 6 6 6 6 6 Master stiffness modified for displacement B. 2. 0.C. f=ModifiedMasterForcesForDBC[{1. 5. The only slightly fancy thing in this module is the use of the Mathematica function Length to extract the number of prescribed displacement components: Length[pdof] here will return the value 3. 6. A}. p =IntForce2DTwoNodeBar[{{0.{Em_.jy}=eftab. c=dx/L.ux3. Print["Member int force (symbolic):"].L}}.2*Sqrt[2]}.0.-s*u[[jx]]+c*u[[jy]]}.2.8.0. Module IntForce2DTwoNodeBar for computing the internal force in a bar element.4.L. The test statements are purposedly chosen to illustrate another feature of Mathematica: the use of the Array function to generate subscripted symbolic arrays of one and two dimensions. Test statements (in blue) and test output. {1.A_}. The force vector and its modified form are printed as row vectors to save space.u_]:= Module[ {c. {1.ubar. is the vector of computed node displacements.0. {ix. Member int force (numerical): 2.2.jx. Print[Simplify[p]]. but were kept to illustrate the general backtransformation of global to local displacements.{L.{100.1.0.0}. L=Sqrt[dx^2+dy^2]. Function IntForce2DTwoNodeBar listed in the top box of Figure 4.17).10}}. and for the recovery of nodal forces as f = Ku.uy3}].eftab_.{10. The logic of IntForce2DTwoNodeBar is straightforward and follows the method outlined in §3. The test output is shown in the bottom box of Figure 4. As coded the function contains redundant operations because entries 2 and 4 of ubar (that is.9.y1_}. Consequently.-s*u[[ix]]+c*u[[iy]].{x2_.dx=x2-x1.2}]. longitudinal strain e = (u¯ x j − u¯ xi )/L and the internal (axial) force p = E Ae is returned as function value.y2_}}. which should be self explanatory.2.{0.9 computes the internal force in an individual bar element. Argument eftab provides the Element Freedom Table array for the element. Recovering Internal Forces Since Mathematica provides built-in matrix operations for solving a linear system of equations and multiplying matrices by vectors.7. e=(ubar[[3]]-ubar[[1]])/L. Print[N[p]]. ¯ y¯ } are recovered in array ubar. p =IntForce2DTwoNodeBar[{{0. The second test does a symbolic calculation in which several argument values are fed in variable form. The first two arguments are identical. the last application functions we need are those for internal force recovery. components u¯ yi and u¯ y j ) are not actually needed to get p. ubar={c*u[[ix]]+s*u[[iy]]. The first test is for member (3) of the example truss using the actual nodal displacements (3.7 RECOVERING INTERNAL FORCES IntForce2DTwoNodeBar[{{x1_.iy.0.0}.5.82843 Member int force (symbolic): A Em ( ux3 + uy3) 2L Figure 4.s. Return[Em*A*e] ].9. u. It also illustrates the use of the Mathematica built in function N to produce output in floating-point form.dy=y2-y1.5.0. we do not need to write application functions for the solution of the modified stiffness equations.§4. It is somewhat similar in argument sequence and logic to ElemStiff2DTwoNodeBar of Figure 4.6}.-0.e}.jy. then the Member joint displacements u¯ (e) in local coordinates {x.5. 4–13 .jx.6}.ix. §4. The last argument.0. Print["Member int force (numerical):"]. c*u[[jx]]+s*u[[jy]].iy.{Em.{0. Running this function with the test statements shown after the module produces the output shown in the bottom box of Figure 4. s=dy/L. -0.0. It uses the seven previously described modules ElemStiff2DTwoNodeBar MergeElemIntoMasterStiff AssembleMasterStiffOfExampleTruss ModifiedMasterStiffForDBC ModifiedMasterForcesForDBC IntForce2DTwoNodeTruss IntForcesOfExampleTruss (4. f[[1]]=IntForce2DTwoNodeBar[{{0.u].0.{1.1/2}.1).4.{10. see the last CAETE slide.Print[N[f]]. A simple way to making sure that all of them are defined is to put all these functions in the same Notebook file and to mark them as initialization cells.0}. there is an initialization shortcut. f[[2]]=IntForce2DTwoNodeBar[{{10.{100.2}]..{10.2. Test statements (in blue) and test output. which has a single argument: u.5..0}}.6}. f=IntForcesOfExampleTruss[{0.8. but that would make placing separate test statements messy.2.82843. The top box of Figure 4. Running the test produces the output √ shown in the lower box of Figure 4. Return[f] ].{3}]}.0}.10.{100.3.Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS IntForcesOfExampleTruss[u_]:= Module[{f=Table[0.0. in agreement with the values found in §3.13 (An even simpler scheme would to group them all in one cell.82843} Figure 4. we are ready to make use of all these bits and pieces of code to analyze the example plane truss.{100. The (1) (2) (3) internal forces are F = 0. {1.4}. Putting the Pieces Together After all this development and testing effort. This function calls IntForce2DTwoNodeBar three times. 2. and returns the three member internal forces thus computed as a 3-component list.11.6}. Print["Internal member forces in example truss:"]. This is the complete 6-vector of joint displacements u.2*Sqrt[2]}.10.5. §4.10 lists a higher-level function. Note that it is not a Module.1}.5 through 4. These cells may be executed by picking up Kernel → Initialize → Execute Initialization. F = −1 and F = 2 2 = 2. documented in Figures 4. f[[3]]=IntForce2DTwoNodeBar[{{0.{10.4. -1.{3. 13 In Mathematica versions 6 and higher.) For a hierarchical version of (4.4.1) These functions must have been defined (”compiled”) at the time the driver scripts described below are run.0}.24) to the module. once for each member of the example truss. The test statements listed after IntForcesOfExampleTruss feed the displacement solution (3.0. 4–14 .2. Module IntForceOfExampleTruss that computes internal forces in the 3 members of the example truss.10. IntForceOfExampleTruss. Internal member forces in example truss: {0. This is actually done with the logic shown in Figure 4.10}}.u]. This particular piece of code is called the driver script.u].10}}. 4–15 .11 simplifies the expression of vector u in case of symbolic calculations.2. matrix-vector multiply. Print["Computed nodal displacements:"]. -1. 0. (4. Note that the modified stiffness matrix is placed into Kmod rather than K to save the original form of the master stiffness for the reaction force recovery later. 1} Internal member forces: {0.11. f and p as row vectors to save space. It is done here for simplicity.8. Print[p]. Running the script of the top box of Figure 4.2) This statement takes advantage of two built-in Mathematica functions.2.f]. The Driver Script The code listed in the top box of Figure 4. Next.4}. §4. Typing and debugging the Mathematica fragments displayed here took the writer about six hours (although about two thirds of this was spent in editing and getting the fragment listings into the Chapter. Kmod=ModifiedMasterStiffForDBC[{1. it applies the displacement boundary conditions through ModifiedMasterStiffForDBC and ModifiedMasterForcesForDBC.1. Print[u]. 2 2} Figure 4.2. §4.8.K]. 0. it is actually redundant if all computations are numerical.) For larger problems.2.4}. Driver script for numerical analysis of example truss and its output.u (recall that K contains the unmodified master stiffness matrix) and the member internal forces p through IntForcesOfExampleTruss. Computed nodal displacements: {0.§4. 0.fmod. u=Simplify[Inverse[Kmod]. Is All of This Worthwhile? At this point you may wonder whether all of this work is worth the trouble.0.0.− 51 } External node forces including reactions: {-2.14 The dot operator denotes matrix multiplication (here. Mathematica would certainly beat hand-plus-calculator 14 This is a highly inefficient way to solve Ku = f if the linear system becomes large.) The enclosing Simplify function in Figure 4. Inverse returns the inverse of its matrix argument. 1. however. The results confirm the hand calculations of Chapter 3. p=Simplify[IntForcesOfExampleTruss[u]].11 produces the output shown in the bottom box of that figure. After all. K=AssembleMasterStiffOfExampleTruss[]. 25 . -2. Print["External node forces including reactions:"]. fmod=ModifiedMasterForcesForDBC[{1. The complete displacement vector is obtained by the matrix calculation u=Inverse[Kmod]. Print["Internal member forces:"]. The code prints u.u].0. Print[f].8 PUTTING THE PIECES TOGETHER f={0. a hand calculation (typically helped by a programable calculator) would be quicker in terms of flow time. 0. 2. The remaining statements recover the node vector including reactions via the matrix-vector multiply f = K.1}.fmod]. f=Simplify[K.11 first assembles the master stiffness matrix through AssembleMasterStiffOfExampleTruss. 0. Although one may try to undertake such studies by hand. Computed nodal displacements: 1 1 {0. For up to about 500 equations and using floating-point arithmetic.12.12. You replace the last two components of array p as shown in the top box of Figure 4. 10 (3 fx3 . fmod=ModifiedMasterForcesForDBC[{1. the likelyhood of errors grows rapidly with the complexity of the system. Kmod=ModifiedMasterStiffForDBC[{1.1.f]. Fluid mechanics problems with over 500 million equations have been solved.4}. would be most efficient in terms of computer time.2. 0. 2 fx3} Figure 4. as long as the algebra “does not explode” because of combinatorial complexity.0. Print[u].4}.0. execute the cell and shortly get the symbolic answer shown in the bottom box of that figure.2 fy3). Driver script for symbolic analysis of example truss and its output. 0. the cross-over typically appearing for 10 to 20 equations. Symbolic manipulation systems can amplify human abilities in this regard. -fx3 + fy3. Print[p]. 0. Examples of such nontrivial calculations will appear throughout the following Chapters.. fx3. done on a massively parallel supercomputer (ASCI Red at SNL). computations.0.fmod]. fy3} Internal member forces: {0.Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS f={0. Matlab. 15 The current record for FEM structural applications is about 100 million equations. 4–16 .. but barely .fy3}. Print["External node forces including reactions:"]. But the symbolic adjoint will have 48! = 12413915592536072670862289047373375038521486354677760000000000 terms.fy3.15 One distinct advantage of computer algebra systems emerges when you need to parametrize a small problem by leaving one or more problem quantities as variables. K=AssembleMasterStiffOfExampleTruss[]. p=Simplify[IntForcesOfExampleTruss[u]].2. would be the best compromise between human and computer flow time. (-fx3 + fy3)} 5 External node forces including reactions: {-fx3. -fx3. For example. Beyond 50000 equations a program in a low-level language. the numerical inversion of a N × N matrix is a O(N 3 ) process. fx3 . Mathematica gives answers within minutes on a fast PC or Mac with sufficient memory but eventually runs out of steam at about 1000 equations. Remark 4.u]. using built-in sparse solvers. or O(1061 ). such as C or Fortran. There may be enough electrons in our Universe to store that. Print[f].fx3.K]. For example suppose that the applied forces on node 3 are to be left as f x3 and f y3 . For N = 48 the floating-point numerical inverse will be typically done in a fraction of a second. Print["Computed nodal displacements:"]. whereas symbolic inversion goes as O(N !). Print["Internal member forces:"]. u=Simplify[Inverse[Kmod]. The “combinatorial explosion” danger of symbolic computations should be always kept in mind. f=Simplify[K. This is the answer to an infinite number of numerical problems. For a range of 1000 to about 50000 equations. is being reviewed as of this writing. on-line version of his Encyclopœdia of Mathematics [796].g. some under $2. Other CASs are. REDUCE. numerical calculations with very high precision. but there are other. should take only a few hours. It’s a pain to use this interface: if you want Maple. Mathematica is a powerful CAS (though quite expensive). lists for $49.com. Since the contents are available online (click on Help in topbar). There is a another nice tutorial by Glynn and Gray [310]. One example is Matlab. There are no printed manual versions for versions 6 and higher. Matlab can do a limited amount of formula manipulations using its “symbolic toolbox.com hit 150 book titles containing Mathematica. This one covers more advaanced programmin techniques that are not needed for this course.. it is possible to do some numerical calculations (e. use Matlab. MuPAD <. it will be placed in the reference list.0. In all of these systems. A google search (August 2005) hits 3.” References Referenced items have been moved to Appendix R. There are also quite powerful free CASs: Maxima and Axiom.g. Beyond these. Can be inexpensively purchased from Amazon at www. buying the printed book makes little sense.. Weisstein. The recently appeared Mathematica Cookbook by S. list: $35.. In some special cases (e. posted on the Usenet: “Computer Algebra Systems (CASs) are programs [that] operate with formulas. which is sufficient for this course.658]. But it is a very bad idea to do large-scale numerical work in such systems: performance will suffer. Covers up to version 7. here is a nice summary by A. McGraw-Hill.000. compared to 111 for Maple and 148 for Matlab. impossible at the double-precision level).820. to evaluate the formula you have derived at some numerical values of all parameters). 16 The fifth edition. Learning that level.wolfram.95 but older editions are heavily discounted on the web. A web search on September 2003 done on www3. use Mathematica or some other CAS.g. but here Matlab wins with 4. It is essentially a hyperlinked. just use Maple. (Theodore Gray invented the Notebook front-end that appeared in version 2. More up to date and comprehensive is the recent appeared Mathematica Navigator in two volumes [657. Scilab.amazon.>.000 pages containing Mathematica. down to about $20. Notes and Bibliography Notes and Bibliography The hefty Mathematica Book [814] is a reference manual. e.com. covering version 5.. Matlab is very good and fast in doing numerical linear algebra: if you want to solve a system of 100 linear equations whose coefficients are all numbers. Mangano.16 The best available tutorial to learn the basic (procedural) level of Mathematica is Schaum’s Outlines: Mathematica. maintained by Eric W.g. there are many books at all levels that expound on the use of Mathematica for various applications ranging from pure mathematics to physics and engineering. 4–17 .) It has the disadvantage of covering only up to fersion 3.130.95 but used copies are discounted.addall. you can use Mathematica to do what you need. .0 and may be difficult to find as used book. Grozin. published by O’Reilly.§4. e. New York. There are a number of programs to do numerical calculations with usual double-precision numbers. Maple. Contains 750 exercises with answers. dated 1999. if coefficients contain letters (symbolic quantities) and you want the solution as formulas... there are similar free programs.. second edition 2009. list: $69. Wolfram Research hosts the MathWorld web site at http://mathworld.. faster ways to do such things. if useful. Octave.2.” which is an interface to a cut-down Maple. R. To close the topic of symbolic versus numerical computation. 1.6.Chapter 4: ANALYSIS OF EXAMPLE TRUSS BY A CAS Homework Exercises for Chapter 4 Analysis of Example Truss by a CAS Before doing any of these Exercises.10}}.) EXERCISE 4. to solve numerically the three-node.ui=unode[[i]].6 [C:25] Expand the logic of ModifiedMasterForcesForDBC to permit specified nonzero displacements. two can be used only for the example truss. p={}.t=t+1/5. <Shift-Enter> on a Windows PC. xynode={{0. (One way to figure this out is to just say Ke=Simplify[Ke] and look at the output. three can be used for any plane truss. all of this should be easy. Procedural recommendation: modify cells but keep a copy of the original Notebook handy in case things go wrong.11.0}.{3.{10.11. which contains a list of prescribed values paired with pdof. Verify that the output reproduces the solution given for that problem.2}. and two can be used for other structures analyzed by the DSM.-1/5}}.uj=unode[[j]].nb from the course web site.e++.1 or later one. xyi=xynode[[i]]. ]. Then execute the driver script in Cell 7 by clicking on the cell and pressing the appropriate key: <Enter> on a Mac.0}.3}.10.6.Axes->False. unode={{0.1 [C:10] Explain why the Simplify command in the test statements of Figure 4.AspectRatio->Automatic]. These six are marked as initialization cells.1}}.1).xyj=xynode[[j]].0}.5 through 4. Why not simply set nk and np to 6 and 3. For [t=0. twomember truss of Exercise 3.6. If the output checks out.10. respectively? EXERCISE 4.5 says L>0.{2/5.t<=1. amp=5. they should be executed by picking up Kernel → Evaluation → Execute Initialization (or equivalent in newer versions).5 through 4.{0. Verify that the output of those six cells agrees with that shown in the bottom boxes of those figures. and the driver script of Figure 4. you may proceed to the Exercises. Show[p.Graphics[Line[{xyi+amp*t*ui. IntForcesOfExampleTruss.3 [C:10] Explain the reason behind the use of Length in the modules of Figure 4.xyj+amp*t*uj}]]]. Mystery scriptfor Exercise 4.{2. The first six cells contain the modules and test statements listed in the top boxes of Figures 4. and briefly state the reasons for your classification. p=AppendTo[p. EXERCISE 4.2 [C:10] Explain the logic of the For loops in the merge function MergeElemIntoMasterStiff of Figure 4. elenod={{1.4 [C:15] Of the seven modules listed in Figures 4.e<=Length[elenod]. Open this Notebook file using version 4. {i.5 [C:20] Modify the modules AssembleMasterStiffOfExampleTruss.{10.j}=elenod[[e]]. Identify which ones. EXERCISE 4. Before running driver scripts. Figure E4. What does the operator += do? (If you are a C programmer. Compare the output with that shown in 4. (Go to Chapter 4 Index and click on the link). ]. EXERCISE 4. Specify these in a second argument called pval. 4–18 . with names collected in (4. download the Mathematica Notebook file ExampleTruss. For [e=1.7.0}. Related question: why does Mathematica refuse to simplify Sqrt[Lexp2] to L unless one specifies the sign of L in the Simplify command? EXERCISE 4. and the logic behind what it does. (You may want to put it in a cell and execute it.Exercises EXERCISE 4.7 [C:20] Explain what the program of Figure E4.1 does.) What modifications would be needed so it can be used for any plane struss? 4–19 . 5 Constructing MoM Members 5–1 . . . . . . . . . . . . . . . . . . . . .1 §5.1 The Bar Element Revisited . . . *Non-Simplex MoM Members . . . . . .3 The Shaft Element . . . . . .1 What They Look Like . Tonti Diagram . . . Joint Forces .3 §5. §5. Introduction . References . . . . . . . . . . . . . . . . . . . . .4. . . . . Formulation of MoM Members . . . . . . . .2 §5. . . . . . . . . . . . . .2.2 *Examples .3. .4. . . . . §5. §5. . . §5. . . . . . . Exercises . . . . . . . . . . Degrees of Freedom. . . . . . . . . . . . . . . . . . . . . . .3 Internal Quantities . . . . . . . Simplex MoM Members . . . . §5. . . . . . . . . . . . . . . . . . .2 The Spar Element . . . . §5. . . . .2 End Quantities. . . . . . . . . . . . . . . . . . . . §5. . . .1 *Formulation Rules . 5–2 5–3 5–3 5–3 5–4 5–4 5–5 5–6 5–7 5–8 5–9 5–11 5–11 5–12 5–13 5–13 5–14 . . . . . .3. . §5. . . §5. . . . . .4 Discrete Field Equations. . . . . §5. . . . . . . . . . .2. .2. .Chapter 5: CONSTRUCTING MOM MEMBERS TABLE OF CONTENTS Page §5. . . §5.2. . . . . . . . . Notes and Bibliography . .3. . . . . . . .4 §5. . . . . . . Focus is on simplex elements. shafts and spars. For truss (bar) and spar members those freedoms are translational components of the joint displacements. See Figure 5. torsion forces for shafts. Formulation of MoM Members §5.2. Plane arch elements are studied in Chapter 13.” These came about as the byproduct of two centuries of structural engineering practice. A similar acronym (MOM) is used in Electrical Engineering for something completely different: the Method of Moments. What They Look Like MoM-based formulations are largely restricted to intrinsically one-dimensional members. Such elements may be formulated directly using concepts and modeling techniques developed in Mechanics of Materials (MoM).2. It covers bars. These are structural components one of whose dimensions.or three-dimensional structure. z}. 1 Mechanics of Materials was called Strength of Materials in older texts. These simplified equations come in handy for a surprisingly large number of applications.§5. which may be formed directly as a sequence of matrix operations.1. axial compression and bending for beam-columns. beam-columns. Consequently we continue to speak of structures built up of members (elements) connected at joints (nodes). justified by success.2 FORMULATION OF MOM MEMBERS §5. such as variational principles. beams.1. arches. For other types. is significantly larger than the other two. particularly in skeletal structures. This Chapter presents an overview of the technique to construct the element stiffness equations of “MoM members” using simple matrix operations. nodal rotations are chosen as additional degrees of freedom. Two-dimensional idealizations are useful simplifications should the nature of the geometry and loading allow the reduction of the structural model to one plane of symmetry. bending and shear forces for beams. which is chosen to be the {x. the names distinguish the main type of internal forces the member resists and transmits: axial forces for bars. The physical interpretation of the FEM is still emphasized. shafts. Members are connected at their end joints by displacement degrees of freedom. Structures fabricated with MoM members are generally three-dimensional. This Chapter covers only straight members with geometry defined by the two end joints. Although geometrically similar. 2 Advanced Mechanics of Materials includes curved members.1 The construction does not involve more advanced tools. y. y} plane. and shear forces for spars. MoM involves ab initio phenomenological assumptions such as “plane sections remain plane” or “shear effects can be neglected in thin beams. This class of structural components embodies bars. called longitudinal. thin plates and shells. which are required for the continuum-based finite elements that appear in Part II. Plane trusses and plane frameworks are examples of such simplifications. beams. §5.1. Note that although the individual member will be idealized as being one-dimensional in its intrinsic or local coordinate system. notably beams and shafts.2 The member cross sections are defined by the intersection of planes normal to the longitudinal dimension with the member. Non-simplex elements are presented as a recipe because their proper formulation requires work theorems not yet studied. Introduction The truss member used as example in Chapters 2–4 is an instance of a structural element. Such members are amenable to the simplified structural theories developed in MoM textbooks. called the transverse dimensions. 5–3 . but only one-dimensional models are considered in introductory undergraduate courses. it often functions as component of a two. Their geometry is defined with respect to a global Cartesian coordinate system {x. ¯ f xi at i. ¯ In this Chapter we study generic structural members that fit the preceding class. For example. If the rotation about ¯ the corresponding entry in ¯f is the z-moment m¯ z j . This may include translations only. Although the depicted member is prismatic.Chapter 5: CONSTRUCTING MOM MEMBERS y¯ z x y x¯ z¯ Figure 5. chosen in one-to one correspondence with internal member forces. Member deformations form a finite set of quantities. An individual member is identified by e but this superscript will be usually suppressed in the equations below to reduce clutter. For example if the x-translation ¯ ¯ ¯ ¯ the corresponding entry in f is the x-force at joint i: u¯ xi appears in u. ¯ y¯ . and thus are also called generalized stresses in structural mechanics. A Mechanics of Materials (MoM) member is a structural element one of whose dimensions (the longitudinal dimension) is significantly larger than the other two. the cross section of which varies as a function of x. pairs must be conjugate in the sense of the Principle of Virtual Work. This set characterizes the deformations experienced by the material.2. §5. Strains at any point in the member can be recovered if v is known. Internal Quantities Internal quantities are mechanical actions that take place within the member.2. As in the case of end quantities.2. In the Direct Stiffness Method (DSM) these are joint displacements (the degrees of freedom) and the joint forces. Joint Forces The set of mathematical variables used to link members are called end quantities or connectors. See Figure 5. The mathematical model of a MoM member is obtained by an idealization process. with x¯ along the longitudinal direction. The model represents the member as a line segment that connects the two end joints. ¯ The degrees of freedom at the end joints i and j are collected in the joint displacement vector u. Local axes {x. or a combination of translations and rotations. ¯ y¯ . as depicted in Figure 5. ¯ Component The vector of joint forces f¯ groups components in one to one correspondence with u. These quantities are related by the member stiffness equations.2. Stresses at any point in a section may be recovered if p is known. End Quantities. They are obtained by integrating stresses over each cross section.3. z¯ at joint j: θ¯z j appears in u.1. some applications utilize tapered or stepped members. This set characterizes the forces resisted by the material. Accordingly two types of internal quantities appear: Internal member forces form a finite set of stress-resultant quantities collected in an array p. and collected in an array v. §5. Those actions involve stresses and deformations. rotations only. Degrees of Freedom. z¯ } are chosen as indicated. z¯ }. They are also called generalized strains in structural theory. the axial force in a bar member must be paired either with an average 5–4 . The local axes are denoted by {x. internal forces and deformations are paired in one to one correspondence.1. 4. three of them. 5–5 . (5. Discrete Field Equations.3 The foregoing equations can be presented graphically as shown in Figure 5. §5. There are The matrix equations that connect u. p and ¯f are called the discrete field equations.2.4.3.3) the transpose of A is used for convenience. that interconnect members. The model is one-dimensional in x.2 FORMULATION OF MOM MEMBERS End quantities (connectors) are defined at the joints i. Internal quantities characterize internal forces. ¯ The two end joints are the site of end quantities: joint forces and displacements. Pairs that mutually correspond in the sense of the Principle of Virtual Work are called conjugate. Tonti Diagram ¯ v. 3 If p is a function of x¯ the relation is of differential type.3) In (5.2) Finally. axial deformation. which represent governing equations as arrows linking boxes containing kinematic and static quantities. This is a discrete version of the so-called Tonti diagrams. also called the deformation-displacement or strain-displacement equations: ¯ v = B u. This form is studied in §5.§5. In the absence of initial strain effects those equations are homogeneous: p = S v. ¯ y Figure 5. If the internal forces p are constant over the member. Tonti diagrams for field (continuum) equations are introduced in Chapter 11.2. The member deformations v are linked to the joint displacements u¯ by the kinematic compatibility conditions. Unlike the case of end quantities. the internal member forces are linked to the joint forces by the equilibrium equations. stresses and deformations in the member. the relation is simply ¯f = AT p.1) The internal member forces are linked to the member deformations by the constitutive equations. or with the total elongation. conjugacy of internal quantities is not a mandatory requirement although it simplifies some expressions. (5. (5. j y¯ z (e) i z¯ x j x¯ Internal quantities are defined within the member and may depend on x. The FE mathematical idealization of a MoM member. elimination of the interior quantities p and v from (5. constitutive4 Compatibility.5) whence the element stiffness matrix is ¯ are conjugate in the sense of the Principle of Virtual Work.3. 4 The name rigidity matrix for S is preferable.3) and the stiffness equation (5. If the construction requires more advanced tools. Symmetry is computationally desirable for reasons outlined in Part III. Such members are called simplex elements. as in §5. Tonti diagram of the three discrete field equations (5. respectively. For simplex elements the derivation of the element stiffness equations reduces to a straightforward sequence of matrix multiplications.6) is a symmetric matrix. v} and {¯f. recourse to the general methodology of finite elements and variational principles is necessary. K (5. the determination of these three matrices can be carried out through MoM techniques.1)–(5. 5–6 .1) through (5. Under the constancy-along-x¯ assumption. material. strain-displacement If the element is sufficiently simple. ¯f = AT S B u¯ = K ¯ (5. u}.3) yields the element stiffness relation ¯ u. §5. however. leverage Rigidity. it can be If both pairs: {p. Matrices B. K (5.Chapter 5: CONSTRUCTING MOM MEMBERS u¯ Stiffness ¯f = AT S B u = K ¯ u¯ ¯f Kinematic v = B u¯ Equilibrium f¯ = AT p v p=Sv p Constitutive Figure 5. deformation-displacement. S and A receive the following names in the literature: A S B Equilibrium. It is a member integrated version of the cross section constitutive equations.3. Internal and end quantities appear inside the orange and yellow boxes.4.4) ¯ = AT S B. In that case ¯ = BT SB. If so the matrices A. The latter are usually denoted by symbol R. B and S are independent of member cross section.4) fora simplex MoM member. shown that A = B and that S is symmetric. Simplex MoM Members Throughout this section we assume that the internal quantities are constant over the member length. 4. freedoms associated with zero stiffness are called inactive. as expected. length L y¯ f¯xi . §5.2) but p and v are not. The product ¯ as in (5. Derivation Using Axial Elongation and Axial Force. The only change is that B becomes [ −1 1 ] /L whereas S becomes E A. Derivation Using Mean Axial Strain and Axial Stress. ¯ must come out to be Remark 5. u¯ xj x¯ L Figure 5.1.1. Instead of d we may use the mean axial strain e¯ = d/L as deformation measure whereas F is kept as internal force measure. u¯xi i z¯ F SIMPLEX MOM MEMBERS x¯ y (e) EA j f¯xj . The chain of discrete field equations is easily constructed:       EA f¯xi −1 u¯ xi ¯ ¯ d = S d. However there are more opportunities to go wrong. respectively. In the FEM terminology.4. f= ¯ = Bu. d = [ −1 1 ] u¯ x j 1 fx j L (5. The foregoing equations can be represented graphyically with the discrete Tonti diagram of Figure 5. and the member axial force F as internal force measure. K symmetric even if S is unsymmetric and A = B. See Figure 5.8). Now AT is not equal to B because F and AT SB gives the same K e¯ are not conjugate.3.. The prismatic bar (also called truss) member: (a) individual member shown in 3D space. This qualifies as simplex because all internal quantities are constant. since the end quantities ¯f and u¯ stay the same. The member axial elongation d is taken as deformation measure.8) K = A SB = SB B = S [ −1 1 ] 1 1 L −1 Note that A = B because F and d are conjugate: F d is work. We keep the mean axial strain e¯ = d/L as deformation measure but take the mean axial stress σ¯ = F/A (which is not conjugate to e) ¯ as 5–7 .3 (a) z y¯ −F x (b) Axial rigidity EA. but they differ only by a factor 1/L.2. (b) idealization as generic member. Hence v and p reduce to the scalars ≡ d and p ≡ F.7) Consequently     EA −1 1 −1 T T ¯ = . Matrix A does not change. If ¯f and u¯ are conjugate (as required in §5. F= = F = AT F. The results confirm that the element stiffness equations coalesce.5. (5. One minor difference in the derivation below is that the joint displacements and forces in the y¯ direction are omitted in the generic element because they contribute nothing to the stiffness equations.§5. Derivation Using Mean Axial Strain and Axial Force. as can be expected. The Bar Element Revisited The simplest MoM element is the prismatic bar or truss member already derived in Chapter 2. Three choices for internal deformation and force variables are considered next. Tonti diagram for the bar element discrete equations (5. which thus qualify as simplex.10 of Chapter 2. The latter is a concept developed in Mechanics of Materials. constitutive. 1 ]. We consider here only prismatic spar members of uniform material and constant cross section.6. The kinematic. This member can only resist and transmit a constant shear force V in the plane of the web. for a narrow rectangular cross section. and equilibrium equations are 1 γ = [ −1 L  u¯ yi 1] u¯ y j  ¯ = Bu.8.8). S = E and AT = A [ −1 ¯ as shown in (5. As deformation measure the mean shear strain γ = V /(G As ) is chosen. The in which c = cos ϕ e . which is chosen to be the {x. It is often used for modeling high-aspect aircraft wing structures. are u¯ yi and u¯ y j .8) the displacement transformation matrix from local to global {x. The product AT SB Transformation to Global Coordinates. See Figure 5.7)–(5.7. internal force measure. ¯ y¯ } plane. Let G be the shear modulus and As the effective shear area. On restoring the element identifier e the appropriate local-to-global transformation is  u¯ e = u¯ exi u¯ ex j   = c 0 s 0 0 c   u exi e  0   u yi  = Te ue . Since u¯ yi and u¯ y j are not part of (5. V = G As γ = Sγ .5.9) to 3D is handled as an Exercise. as illustrated in Figure 5. gives again the same K. The shear rigidity is G As . and ϕ e is the angle from x to x. instead of 4 × 4 as in §2. 1 (5. s = sin ϕ e . The active degrees of freedom for a generic spar member of length L. as depicted in Figure 5.10) . The extension of 4 × 4 globalized element stiffness matrix Ke = (Te )T K (5.9) ¯ cf. Figure 2. §5.7) and (5.2.3. y} coordinates is 2 × 4.8). s  u ex j  u ey j  (5. 5–8 ¯f =  f¯yi f¯y j    −1 = V = AT V.18). ¯ e Te agrees with (2. As = 5A/6.1. Now B = [ −1 1 ] /L.Chapter 5: CONSTRUCTING MOM MEMBERS Stiffness EA 1 −1 _ u f= −1 1 L _ _ u f _ d= Kinematic u¯ xi = Bu¯ −1 1 u¯ x j f¯xi f¯x j ¯f = EA d = Sd L Constitutive Equilibrium −1 = F = AT F 1 F= d F Figure 5. The Spar Element The spar or shear-web member has two joints (end nodes): i and j.6(b). 11) If the spar member is used in a two dimensional context. Figure 2. The active degrees of freedom of a generic shaft member of length L.5.12) ¯ cf. These are the infinitesimal end rotations about x. The Shaft Element The shaft. c  u ex j  u ey j (5. More often. positive if acting as pictured in Figure 5.10 of Chapter 2. Note that A = B because V and γ are not work-conjugate. y} is  u¯ eyi u¯ = u¯ ey j e   =  −s 0 c 0 0 −s  u exi  e  0   u yi  = Te ue .6. ¯ positive depicted in Figure 5. the spar member will be a component in a three-dimensional structural model. A shaft can only resist and transmit a constant torque or twisting moment T along its longitudinal axis x. (b) idealization as generic member in local system. e.1. and ϕ e is the angle from x to x.3.8(a). If so the determination of the 2 × 6 transformation matrix is more involved.g.2. This is the topic of Exercise 5. The full expression is worked out in Exercise 5. §5. We consider here only prismatic shaft members with uniform material and constant cross section. e e T ¯e e 4 × 4 globalized spar stiffness matrix is then K = (T ) K T . Let G be the 5–9 . length L −V f¯yj . as an “orientation node” is required. according to the right-hand rule. are θ¯xi and θ¯x j . s = sin ϕ e .8(b). has two joints (end nodes): i and j.3. however. The in which c = cos ϕ e . The only internal force is the torque T .§5.) The local stiffness equations follow as ¯f =  f¯yi f¯y j  G As = A S Bu¯ = L  T 1 −1 −1 1  u¯ yi u¯ y j  ¯ u. u¯ yj j x¯ L Figure 5. u¯ yi GA s (e) i z¯ x SIMPLEX MOM MEMBERS y Shear rigidity GA s . The associated joint (node) forces are end moments denoted as m¯ xi and m¯ x j . ¯ =K (5.8(a). the displacement transformation from local to global coordinates {x. (This difference is easily adjusted for.7. which thus qualify as simplex. the aircraft wing shown in Figure 5. ¯ as pictured in Figure 5. however. The prismatic spar (also called shear-web) member: (a) individual member shown in 3D space. also called torque member.3 V (a) (b) y¯ y¯ x¯ z f¯yi . see Exercise 5. ¯ The determination of J for noncircular cross sections is covered in Mechanics of Materials textbooks. (b) idealization as generic member in the local system. Spar members in aircraft wing (Piper Cherokee).14) If the shaft is used in a two-dimensional context. and equilibrium equations provided by Mechanics of Materials are       GJ θ¯xi m ¯ −1 xi ¯ = Bu. 5–10 . the displacement transformation to global coordi5 J has dimension of (length)4 .7.Chapter 5: CONSTRUCTING MOM MEMBERS COVER PLATES SPAR RIB Figure 5. The kinematic. θxj y¯ z T _ _ m xi . For more impressive aircraft structures see CAETE slides. ¯f = φ = [ −1 1 ] ¯θx j 1 m¯ x j L From these the local stiffness equations follow as ¯f =  m¯ xi m¯ x j  GJ = B S Bu¯ = L  T 1 −1 −1 1  θ¯xi θ¯x j  ¯ u.13) φ = Sγ . ¯ =K (5.8. θxi x y T (b) m¯ xi. θ¯xj x¯ L z¯ Figure 5. (a) Torsional rigidity GJ. T = = T = BT T.5 As deformation measure pick the relative twist angle φ = θ¯x j − θ¯xi . constitutive. (5. The prismatic shaft (also called torque member): (a) individual member shown in 3D space. θ¯xi y¯ GJ (e) i j mxj. shear modulus and G J the effective torsional rigidity. For a circular or annular cross section it reduces to the polar moment of inertia about x. length L x¯ _ _ m xj . 16) Here d in dp denotes differentiation with respect to x. ¯ That is. which may depend on x.4 *NON-SIMPLEX MOM MEMBERS nates {x. §5. more care must be exercised in the choice of conjugate internal quantities.18) Integrating both sides over the member length L yields ¯f = L 0 d ¯f = L ¯ u. Matrix R pertains to a specific cross section whereas S applies to the entire member.4. See (5. ¯ The dependence may be due to element type. one or more of the matrices A.16): ¯ d ¯f = BT dp = BT p d x¯ = BT R v d x¯ = BT R B u¯ d x¯ = BT R B d x¯ u. ¯ Such members are called non-simplex. ¯ The interpretation of d ¯f is less immediate because ¯f is not a function of x. The discrete relations supplied by the foregoing rules are displayed in the discrete Tonti diagram of Figure 5. Internal quantities are now eliminated starting from the differential equilibrium relation (5. and apply only to displacement-assumed elements. for example the Principle of Virtual Work or PVW. depend on x. (5.9. Select internal deformations v(x) ¯ and internal forces p(x) ¯ that are conjugate in the PVW sense.3. the differential of internal forces as one passes from cross-section x¯ to a neighboring one x¯ +d x.§5. *Formulation Rules The derivation of non-simplex MoM elements requires use of the work principles of mechanics. ¯ BT R B d x¯ u¯ = K 0 5–11 (5. This can be grasped by observing that A(x) ¯ T S(x)B( must be independent of x¯ because it relates the end quantities u¯ and ¯f. Rule 3. ¯ It actually means the contribution of that member slice to the building of the node force vector ¯f. varying cross section.18) and (5.9. This operation is elaborated further in Exercise 5. Thus. s = sin ϕ e . ¯ e of non-simplex The matrix multiplication rule (5.17) replaces the S of (5. Link deformations to node displacements by v(x) ¯ = B(x)u. Rule 1. This distinction is further elaborated in Exercise 5. ¯ The meaning of dp is simply p(x) ¯ d x. is  e  θxi  e    ¯  θ c s 0 0  θ yie   = Te θe . ¯ Note that θe collects only global node rotations components.15) where as usual c = cos ϕ e .19) .19) below. (5. As a result. §5. (5.17) in which R. Note that symbol R in (5. K members.1. The following rules can be justified through the arguments presented in Part II. *Non-Simplex MoM Members The straightforward formulation of simplex MoM elements does not immediately carry over to the case in which internal quantities p and v vary over the member. ¯ On the other hand. ¯ must be symmetric.2). = u¯ e = xi θ¯xej 0 0 c s  θxej  θ yej (5. B and S depend on x.2 below) that the force equilibrium equation exists only in a differential sense: BT dp = d ¯f.4. or both. They are stated here as recipe.4) cannot be used to construct the element stiffness matrix K ¯e ¯ x) ¯ would depend on x. and ϕ e is the angle from x to x. From the PVW it may be shown (see Remark 5. y} within the framework of infinitesimal rotations. ¯ Rule 2. The constitutive relation is p = Rv. that is. It is used in the derivation of the stiffness equations of the plane beam element in Chapter 12.) the MoM equations are ¯ e = Bu.20) and carrying out the integration yields ¯ 1 ¯ = EA K L −1 .20) to (5. (5. ¯ Consequently the local element stiffness matrix is ¯ = K L BT R B d x¯ (5. which are conjugate quantities. where m is the midpoint between end joints i and j. ¯ (5. Discrete Tonti diagram of the equations for a non-simplex MoM member. (B dp) δ u. Assuming the strain e to be uniform over the element (this is characteristic of a displacement assumed element and is justified through the method of shape functions explained in Part II. It will be seen that it generalizes to arbitrary displacement-assumed finite elements in any number of space dimensions. B dp = d f.4.20) 0 The recipe (5.20) will be justified in Part II through energy methods. A two-node bar element has constant elastic modulus E but a continuously varying area: Ai . p = E A(x) ¯ e = R(x) ¯ e.21) Here Ni (x) ¯ = − 12 ξ(1 − ξ ). The reduction of (5. with ξ = 2x/L − 1. This variation can be fitted by A(x) ¯ = Ai Ni (x) ¯ + A j N j (x) ¯ + Am Nm (x).22) Inserting into (5.16) follows by equating expressions of the virtual work of a slice of length d x¯ T ¯ = undergoing virtual node displacements δ u¯ and associated deformations δv: d ¯f δ u¯ = dpT δv = dpT (B u) T T T ¯ ¯ Since δ u¯ is arbitrary. j and m. N j (x) ¯ = 12 ξ(1 + ξ ) and Nm (x) ¯ = 1 − ξ 2 . §5. A j and Am at i.1. respectively.2.” As internal quantities take the strain e and the axial force p = E Ae.8. are interpolating polynomials further studied in Part II as “element shape functions. d ¯f = BT dp.9.6) when the dependence on x¯ disappears is the subject of Exercise 5. because u¯ does not depend on x.Chapter 5: CONSTRUCTING MOM MEMBERS u¯ f¯ = Stiffness L 0 BT R B dx¯ u ¯ f¯ Equilibrium Kinematic (at each x-section) (at each x-section) d f¯ = BT dp v = B u¯ p=Rv v Constitutive p (at each x-section) Figure 5. *Examples Example 5.2. Remark 5. The proof of (5. B= 1 [ −1 L 1]. (5. 1 with 5–12 A¯ = 16 (Ai + A j ) + 23 Am .23) . −1 . The integrals become rational functions of x¯ and are best evaluated through Mathematica. The excellent book of Pestel and Leckie [578]. But these elements do not need improvement. by all accounts an impressive number. The completion of this Example is the matter of an Exercise. Notes and Bibliography Example 5. But they are not the only ones. The end result for simple one-dimensional models is the same. Historically this idea interweaved with Generation 1 of FEM. whereas the axial force p is constant and defined by p = − f¯xi = f¯x j . A September 2003 in-print book search through www3.addall. as opposed to the energy methods in vogue today. as outlined in Appendix O. including linkage to continuum formulations from the MSA viewpoint. The source of Tonti diagrams is discussed in Chapter 11. 5–13 .6 The Mechanics of Materials books by Beer-Johnston [68] and Popov [595] may be cited as being widely used in US undergraduate courses. is presented in [232]. Same as in the previous case but now the strain e is taken to be e = p/(E A). On the other hand. since they are primarily used in modeling shear web action. The framework presented here is a tiny part of MSA. Spar members are discussed only in MoM books that focus on aircraft structures. By 1970 simplified derivations had fallen out of favor as yokelish. Folding multiple editions and hardback/paperback variants one gets about 60 books.2. epitomizes that approach. A panoramic view. Notes and Bibliography The derivation of MoM elements using straightforward matrix algebra is typical of pre-1962 Matrix Structural Analysis (MSA).§5.com on “Mechanics of Materials” returns 99 hits whereas one on “Strength of Materials” (the older name) compiles 112. 6 The chief technical difference is the heavier use of differential equations prior to 1962. They still work fine: a bar or beam stiffness today is the same as 40 years ago. bars. References Referenced items have been moved to Appendix R. unfortunately out of print. shafts and beams are standard fare. zj ) − uxj x− E. Include only node rotation freedoms in the global displacement vector.2.4 [A+N:15(10+5)] A bar element moving in three dimensional space is completely defined by the global coordinates {xi .1. (a) From vector mechanics show that T= 1 x ji L 0 y ji 0 z ji 0 0 x ji 0 y ji 0 z ji . yi . z i ) − uxi −y L L − z y − x i x z Figure E5. with superscript e dropped for brevity. links u¯ e = Tue . u zi . Evaluate Ke = (Te )T K j (x j . Indicate where the transformation (5. using Figure 5. Start from (5. y j .14). y}.4. Start from (5. Justify the transformation (5. with the actual matrix equations along the arrows).Chapter 5: CONSTRUCTING MOM MEMBERS Homework Exercises for Chapter 5 Constructing MoM Members === check (5.1. u x j . y j .2 [A:15] Obtain the 4 × 4 global element stiffness matrix of a prismatic spar member in a two dimensional Cartesian system {x. (Hint: read §2. u y j . Bar element in 3D for Exercise 5. The 2 × 6 displacement transformation matrix T. u yi .11). Draw the Tonti diagram with the discrete equations for that choice of v and p. y}.3 [A:15] Obtain the 4 × 4 global element stiffness matrix of a prismatic shaft element in a two dimensional Cartesian system {x.3.1 [A:10] Explain how to select the deformation variable v (paired to V ) of the spar member formulated in §5. u z j .8). yi . as illustrated in Figure E5. so that A = B. {x j .15) (Hint: infinitesimal rotations transform as vectors). EXERCISE 5.5 as guide (that is. z j } of its end nodes i and j. EXERCISE 5. ¯ e Te in closed form. z i }. A (a) (b) j − y i (x i .14) EXERCISE 5. Evaluate Ke = (Te )T K EXERCISE 5. Here u¯ e contains the two local displacements u¯ xi and u¯ x j whereas ue contains the six global displacements u xi .12) comes from ¯ e Te in closed form. = cx ji c y ji cz ji 0 0 0 0 0 0 cx ji c y ji cz ji . z j } of its end nodes i and j. x ji = x j − xi . {x j . are the direction cosines of the vector going from i to j. The problem is that axis y¯ . y j . etc. 3} to node j at {3. (b) Evaluate T for a bar going from node i at {1. (E5. EXERCISE 5. 6}.. as illustrated in Figure E5. 8. 2.2. which defines the direction of shear force transmission. is not uniquely defined by i 5–14 .5 [A+N:30(10+15+5)] A spar element in three dimensional space is only partially defined by the global coordinates {xi . and cx ji = x ji /L. yi . etc..1) in which L is the element length. z i }. Exercises Orientation node k defines plane − − as passing through {i. Nodes {i. not colinear with i and j.7 Most FEM programs use the orientation node method to complete the definition. j. k} define the {x. u yi . The 2 × 6 displacement transformation matrix T. A s u−yi i (x i . Here u¯ e contains the local transverse displacements u¯ yi and u¯ y j whereas ue contains the global displacements u xi . The distance h > 0 from m to k is called h as shown in Figure E5.2. A third node k. is provided by the user.k} {x. z j) x− a b − y y− − uxi (b) k α m L i − z h β j x− L−c c x Figure E5. ¯ y¯ } plane and thus z¯ . and j. z k) G.y} (a) k (xk . with superscript e omitted to reduce clutter. Spar element in 3D for Exercise 5. u y j . u x j . u z j .5.2(b). z i) y z − uyj j (x j .j. u zi . yi . The projection of k on line i j is point m. (a) Show that T= 1 xkm h 0 ykm 0 z km 0 0 xkm 0 ykm 0 . relates u¯ e = Tue . yk . y j . z km = cxkm c ykm czkm 0 0 0 0 0 0 cxkm c ykm czkm . with the actual matrix equations along the arrows). EXERCISE 5. From Figure E5. show that h = 2A/L. (E5.2) in which xkm = xk − xm .8 (c) Evaluate T for a spar member going from node i at {1. and cxkm = xkm / h. Use 5. 7 The same ambiguity arises in beam elements in 3D space.) (b) Work out the formulas to compute the coordinates of point m in terms of the coordinates of {i. EXERCISE 5. etc.. cos β = (L 2 + a 2 − b2 )/(2a L). 8. 5. L − c = a cos β.7 [A:15] Draw the discrete Tonti diagram for the prismatic shaft element. 5–15 . with k at {4. 8 An alternative and more elegant procedure.8 [A:15] If the matrices B and R are constant over the element length L. can be sketched as follows.20) of the element stiffness matrix for a non-simplex member reduces to (5. cos α = (L + b − a )/(2bL).6 [A:20] Explain how thermal effects can be generally incorporated in the constitutive equation (5. and subtract so as to cancel out h 2 and c2 .2(b) obviously the two subtriangles imk and jkm are right-angled at m and share side km of length h. Using the notation of Figure E5. getting a linear equation for c that can be solved directly. 2. 6}. c = b cos α.. EXERCISE 5. etc.6). k}.2(b) p( p − a)( p − b)( p − L) with and elementary trigonometry. Apply Pythagoras’ theorem twice. 3} to node j at {3. Assume a. j. (Assume that the position of m is known. found by a student in 1999. etc. These elements are covered in Part III. where A = 1 2 2 2 p = 2 (L + a + b) (Heron’s formula). b and L are computed immediately from the input data. xm = xi (L − c)/L + x j c/L. in which S = LR. show that expression (5. That computation is carried out in the next item. 6}.2) to produce an initial force vector for a simplex element. are the direction cosines of the vector going from m to k.5 as a guide (that is. z1}. Multiplying through gives (E5.mprop_.y2. LL=x21^2+y21^2+z21^2.3) 0 (b) ¯ for a tapered bar with area defined by the linear law A = Ai (1− x/L)+ ¯ A j x/L. 2 2 2 z 21 = z 2 − z 1 and L = x21 + y21 + z 21 .y2-y1.rho. Denote x21 = x2 − x1 .y1.x2. which begins the Tonti diagram.3) to obtain K where Ai and A j are the end areas at i and j.1.opt_]:= Module[ {x1. (Knowledge of the Principle of Virtual Work is required to do this exercise. y.z21. L3 in which B = [ −x21 −y21 −z 21 x21 y21 z 21 ] . Then 2 1 2 (L − L 20 ) = x21 (u x2 − u x1 ) + y21 (u y2 − u y1 ) + z 21 (u z2 − u z1 ) + Q ≈ Bu. ¯ Apply (E5. {A}=fprop. Finally you must show that force equilibrium at nodes requires fe = (1/L)BT F. 9 10 End nodes are labeled 1 and 2 instead of i and j to agree with the code listed below.L. Hence the small axial strain is e = L/L = (1/L 2 )Bue .Gm.B.{x21. Here is a sketch of one of the ways. y2 . 6}. 2.9 [A:20] Explain in detail the quickie derivation of footnote 6. Show that the element stiffness matrix in global coordinates can be compactly written10 A plodding way is to start from the local stiffness (5.A}]].4).z21. Take B = [ −1 1 ] /L.alpha. LLL=Simplify[LL*L].A}=N[{x21. If [num.4) Compute Ke if the nodes are at {1. Note: the computation can be either done by hand or with the help of a program such as the following Mathematica module.z2-z1}. 3} and {3. {Em. Also on account of small displacements 2 1 2 (L − L 20 ) = 12 (L + L 0 )(L − L 0 ) ≈ L L . 8.rho. y21 = y2 − y1 . The end nodes are located at {x1 . B={{-x21. Ke=(Em*A/LLL)*Transpose[B].B. (a) From (5.y21. z 1 } and {x2 .y21.y2. which is used in Part III: Stiffness3DBar[ncoor_.10 [A:25(10+5+10)] Consider a non-simplex element in which R varies with x¯ but B = A is constant. EXERCISE 5. respectively. There are several ways of arriving at this result.z21}}.x21.) EXERCISE 5. in which Q is a quadratic function of node displacements which is therefore dropped in the small-displacement linear theory.z1. {num}=opt. L=PowerExpand[Sqrt[LL]]. z}.x21.3) to verify the result (5. as in Figure E5.Chapter 5: CONSTRUCTING MOM MEMBERS EXERCISE 5.Em.20) prove that ¯ B. y1 .z21.z2}}=ncoor.A.-z21. (E5. Next is F = E A e.y1. 5–16 .11 [A/C+N:30(25+5)] A prismatic bar element in 3D space is referred to a global coordinate system {x.y21.9 The elastic modulus E and the cross section area A are constant along the length. Denote by L 0 and L the lengths of the bar in the undeformed and deformed configurations. with elastic modulus E = 343 and cross section area A = 1. {{x1. Some are faster and more elegant than others. z 2 }.Em.z21}={x2-x1.y21. {x21.23) for a bar with parabolically varying cross section.Em. respectively.z2. (c) Apply (E5.y21.-y21.Gm.Ke}.LLL.8) and transform to global using (?) (a) Ke = (b) EA T B B. ¯ = LB R K T ¯ = 1 with R L L R(x) ¯ d x¯ (E5.alpha}=mprop.LL.{x2.fprop_. num. opt={False}. Print[Ke//MatrixForm].0}. Print["Stiffness of 3D Bar Element:"]. A=1. the six eigenvalues of this particular Ke should be 98 and five zeros.Exercises Return[Ke]].Eigenvalues[Ke]].A]. fprop={A}. Ke=Stiffness3DBar[ncoor.0. ClearAll[Em.0}.12 [A/C:25] Complete Example 5.mprop.0.0.2. 5–17 . As a check. EXERCISE 5.3}}. ncoor={{0. Em=343.6.fprop.opt]. mprop={Em. Print["eigs of Ke: ".{2. 6 FEM Modeling: Introduction 6–1 . . §6. . Continuum Elements . . Element Nodes .1. . . Element Degrees of Freedom . . . .3. . . . 6–3 6–3 6–4 6–4 6–5 6–6 6–7 6–7 6–7 6–8 6–8 6–9 6–9 6–10 6–10 6–10 6–10 6–10 6–10 6–11 6–11 6–11 6–12 6–12 6–13 6–13 6–13 6–13 6–14 6–14 6–15 . . . . . . §6. . . .2. . . . . .2. . Element Constitutive Properties . . §6.3.5. . .2. . . .1. . . . . . Error Sources and Approximation §6.C. . . §6. . . . . Implicit vs. . . . . . . .3. . . . . . . . . . . Assembly Boundary Conditions §6. §6. Element Fabrication Properties Classification of Mechanical Elements §6. . §6. .6. . . Substructures . . . . . . . . . . . . . . . §6. . . .2. .4. . . . Other Discretization Methods . . . . Essential and Natural B. .7. . . Macroelements . . . . . . . . . .4. . . . §6. . . . . .5. . . . . §6. . . . . Element Geometry . . . 6–2 . . . . . §6.6. .3.9. . .4.3. The Finite Element Method Element Attributes §6. . §6. . . . §6.7. .3.1.7. . . .5. . . . . . .6. §6. . . . . . . . . B. . . . . . . . . .C. . . . . .6.1. . . . . . . . §6. . . Notes and Bibliography . . References . . . . . . . . . Models . . . §6.1. . §6. . . §6. §6. .6. . . . . . . §6. . . . . .6. . . . . . . . . .7. in Structural Problems . .9. . Nodal Forces .7. . .6. . . . . . . §6. . . . . . .3. . . . . . . . §6. . . §6. . . . . . . . . .7. . .4. Mathematical Models . . . . . Explicit Modeling . . . . Analytical or Numerical? . . . . §6.6. . . . . §6. . . . . Introduction FEM Terminology Idealization §6. . . . . . . . . . . . . . . . .3. . . . . . . .6. . .8.2.7. .Chapter 6: FEM MODELING: INTRODUCTION TABLE OF CONTENTS Page §6. . . .4.2. .1. . . Element Dimensionality . Primitive Structural Elements .4. . . . . Discretization §6. .9. . . . . . Special Elements . • The increasing importance of continuum models in two and three space dimensions. 3 Energy is the capacity to do work. Thus energy and work potentials are the same function (or functional).” originated in structural mechanics. This Chapter introduces terminology used in FEM modeling. Classical analytical mechanics is that invented by Euler and Lagrange in the XVIII century and further developed by Hamilton. This is distinguished from MSA by three traits: • The ability to go beyond structures. the general theory of relativity is necessary. This term.§6. These names have carried over to non-structural applications. particularly in mathematically oriented treatments. As chronicled in Appendix H. • The key role of variational mathematics. the application for which FEM was invented. as well as “stiffness matrix” and “force vector. 2 In variational mathematics this is called a duality pairing. has figured prominently in previous Chapters. the relation between u and f is assumed to be of linear and homogeneous.” often abbreviated to either freedom or DOF. These are also called generalized coordinates. These forces are collected in a column vector called f. although it contributed substantially to it. Its objects of attention are models of mechanical systems ranging from material particles composed of sufficiently large number of molecules. For the atomic and sub-atomic world. The last assumption means that if u vanishes so does f. each degree of freedom has a corresponding “conjugate” or “dual” term. and continuous otherwise. to the Solar System. the number of DOF of a FEM model is necessarily finite. This Chapter begins covering the FEM proper. The term nodal displacement vector for u is reserved to mechanical applications. the model is called discrete. this is a subject that historically preceded the Finite Element Method (FEM). through airplanes. Introduction Chapters 2 through 5 cover material technically known as Matrix Structural Analysis or MSA. The next Chapter goes over more specific rules for defining meshes and boundary conditions. and surveys attributes and types of finite elements used in structural mechanics. Jacobi and Poincar´e as a systematic formulation of Newtonian mechanics. The inner product fT u has the meaning of external energy or work. In analytical mechanics. Because FEM is a discretization method. This “terminology overspill” is discussed next.2 In non-mechanical applications.1 The spatial configuration of any such system is described by its degrees of freedom or DOF. quantum mechanics is appropriate. which represents a generalized force.2. FEM Terminology The ubiquitous term “degrees of freedom. 6–3 . The relation is then expressed by the master 1 For cosmological scales. but with signs reversed.1. such as galaxy clusters or black holes.3 Just as in the truss problem. They are collected in a column vector called u. This vector is called the DOF vector or state vector. They are the agents of change. If the number of degrees of freedom is finite. The terms state variables and primary variables are also used.2 FEM TERMINOLOGY §6. there is a similar set of conjugate quantities. §6. which for want of a better term are also called forces or forcing terms. The idealization and discretization steps. it serves to illustrate terminology. Although attention is focused on structural problems. The reverse steps: continuification and realization. If the relation between forces and displacements is linear but not homogeneous. and f M is the vector of mechanical forces. briefly mentioned in Chapter 1. discretization and solution. For example. The role of FEM in numerical simulation is schematized in Figure 6. as illustrated in Table 6.1.” It must be done by a human. 6–4 . are far more difficult and (generally) ill-posed problems. The solution step is dealt with in more detail in Part III of this book. Although this diagram oversimplifies the way FEM is actually used. The basic steps of FEM are discussed below in more generality. the discretization error is the discrepancy that appears when the discrete solution is substituted in the mathematical model.2) Here f I is the initial node force vector introduced in Chapter 29 for effects such as temperature changes.2 and 1. Significance of u and f in Miscellaneous FEM Applications Application Problem State (DOF) vector u represents Conjugate vector f represents Structures and solid mechanics Heat conduction Acoustic fluid Potential flows General flows Electrostatics Magnetostatics Displacement Temperature Displacement potential Pressure Velocity Electric potential Magnetic potential Mechanical force Heat flux Particle velocity Particle velocity Fluxes Charge density Magnetic intensity stiffness equations: Ku = f. Idealization Idealization passes from the physical system to a mathematical model.Chapter 6: FEM MODELING: INTRODUCTION Table 6. which is a merged simplification of Figures 1. This is the most important step in engineering practice. most of the steps translate to other applications problems as noted above.1) K is universally called the stiffness matrix even in non-structural applications because no consensus has emerged on different names. deserve further discussion. The physical significance of the vectors u and f varies according to the application being modeled.1. Each step is a source of errors. (6. equation (6.1) generalizes to Ku = f M + f I .3.1. (6. because it cannot be “canned. §6.3. The three key simulation steps shown are: idealization. suppose that the structure is a flat plate structure subjected to transverse loading. or a stress plot are examples of the latter. A model abstracts aspects of interest to the modeler.3.6 To give an example of the choices that an engineer may face. to a mathematical model of the system. the converse process of “realization” or “identification” — see Figure 6. (6.5 §6. 6–5 . For example. 2.3.1. is a process by which an engineer or scientist passes from the actual physical system under study. A thin plate model.4 The qualifier symbolic means that a model represents a system in terms of the symbols and language of another discipline. 4 “All models are wrong. which has become increasingly common since the advent of computers: A model is a symbolic device built to simulate and predict aspects of behavior of a system. 6 Whereas idealization can be reasonably taught in advanced design courses. such as the classical Kirchhoff’s plate theory. engineering systems may be (and are) modeled with the symbols of mathematics and/or computer sciences.3). The analytical or numerical results produced by the mathematical model are physically re-interpreted only for those aspects.1 — generally requires considerable physical understanding and maturity that can only be gained through professional experience. And that is precisely how most dictionaries define it. a digitized earthquake record. A very thin plate model based on Von Karman’s coupled membrane-bending theory.” (George Box) 5 A problem-definition input file.1. where the term model is understood in the sense of (6.2. or idealization.3 IDEALIZATION DISCRETIZATION IDEALIZATION SOLUTION FEM Physical system Mathematical model REALIZATION & IDENTIFICATION Discrete solution Discrete model CONTINUIFICATION Solution error Discretization + solution error Modeling + discretization + solution error Figure 6. The process is called idealization because the mathematical model is necessarily an abstraction of the physical reality — note the phrase aspects of behavior in (6. To predict everything. Mathematical Models Mathematical modeling. Models The word “model” has the traditional meaning of a scaled copy or representation of an object. in all physical scales. reproduced from Chapter 2 to illustrate modeling terminology.3). We use here the term in a more modern sense.3) Note the distinction made between behavior and aspects of behavior. Here is a non-exhaustive list of four possible mathematical models: 1.§6. A simplified view of the physical simulation process. you must deal with the actual system. some are useful. §6. beams. Those programs offer a catalog of element types. for example that of Mindlin-Reissner plate theory. and range of applicability of each model. This has professional as well as legal implications. a continuum material model filters out the aggregate. The person responsible for this kind of decision is supposed to be familiar with the advantages. and at your disposal is a “black box” general-purpose finite element program. A reproduction of Figure 1. such details are weeded out by the modeling process. Furthermore the decision may be different in static analysis than in dynamics. Although to a physicist this is the result of the interaction of billions and billions of molecules. axisymmetric solids. Mathematical modeling is an abstraction tool by which complexity can be tamed. crystal. 3. §6. molecular and atomic levels of matter. disadvantages. A very thick plate model based on three-dimensional elasticity. For example. general 3D solids. Illustrates implicit modeling: picking elements from an existing FEM code consents to an idealization. plates. 4.2 for convenience. Engineers are typically interested in a few integrated quantities. The more common scenario is that pictured in Figures 1. particularly in Aerospace and Mechanical.2. Why is the mathematical model an abstraction of reality? Engineering systems. tend to be highly complex. The latter is reproduced in Figure 6. such as the maximum deflection of a bridge or the fundamental periods of an airplane. shells. Complexity control is achieved by “filtering out” physical details that are not relevant to the design and analysis process.3. bars. 1. A common scenario in industry is: you have to analyze a structure or portion(s) of one.1 is an oversimplification of engineering practice.4 and 1. A moderately thick plate model. This is implicit modeling.3. For simulation it is necessary to reduce that complexity to manageable proportions.5 with some relabeling. Consequently.Chapter 6: FEM MODELING: INTRODUCTION al atic hem Matmodel ary Libr ent M E pon F Com ete EN PON M L CO EVE L T ent ponns Com atio equ TEM SYS EL LEV e r disc del mo plet Comution sol l sica Phy tem sys em Systrete disc del o m Figure 6.2. Explicit Modeling As noted the diagram of Figure 6. Ideally you 6–6 .5 of Chapter 1. and so on. Implicit vs. The moment you choose specific elements from the catalog you automatically accept the mathematical models on which the elements are based. picking a mathematical model is equivalent to choosing an information filter. for example. Say.4. 6–7 . §6. perturbation and boundary-element methods. But models of physical systems are not necessarily simple to solve. Analytical or Numerical? At this point one faces the choice of going for analytical or numerical solutions.7 The other extreme happens when you select a mathematical model of the physical problem with your eyes wide open and then either shop around for a finite element program that implements that model. This is explicit modeling. outlined in Chapter 4. whereas those that require special handling may only submit to explicit modeling. experience and maturity than implicit modeling.4.1. Most problems faced by the engineer either do not yield to analytical treatment or doing so would require a disproportionate amount of effort. The reduction is called discretization.8 The practical way out is numerical simulation. Unfortunately many users of commercial programs are unaware of the implied-consent aspect of implicit modeling and their legal implications. But for problems that fall out of the ordinary it could be the right thing to do. Such models have an infinite number of degrees of freedom.” are more intellectually satisfying. we need not consider the time dimension and are free to focus on spatial discretization. First. Moreover some closed-form solutions. §6. Second. for complex engineering systems this model is the product of a multilevel decomposition. Here is where finite element methods enter the scene. Unfortunately they tend to be restricted to regular geometries and simple boundary conditions. a combination of analytical and numerical techniques is often effective in reducing the dimensionality of the problem to facilitate parameter studies. may have to be anyway numerically evaluated to be useful. particularly if they apply to a wide class of problems. The physical problem to be simulated is broken down into subproblems. Discretization Mathematical modeling is a simplifying step. the wider availability and growing power of computer algebra systems. To make numerical simulations practical it is necessary to reduce the number of degrees of freedom to a finite number. Providing such “finite element literacy” is one of the objective of this book. As discussed in Chapter 1. The product of the discretization process is the discrete model. has widened the realm of analytical solutions than can be obtained within a practical time frame. also called “closed form solutions. so that particular instances may be obtained by substituting the values of free parameters. Important examples are provided by Fourier analysis.4 DISCRETIZATION should be fully aware of the implications of your choice. 7 Legal problems arise when something goes wrong. a structure collapses under service (non emergency) conditions.§6. and there is loss of life. In practice a combination of implicit and explicit modeling is common. Discretization can proceed in space dimensions as well as in the time dimension. They often involve coupled partial differential equations in space and time subject to boundary and/or interface conditions. resources. It requires far more technical expertise. Because the present book deals with static problems. expressed for example as inverses of integral transforms. Analytical solutions. 8 This statement has to be tempered in two respects. Who is to blame? It should be noted that vendors of commercial FEM codes are generally immune to lawsuits through “accept use” clauses inserted by company lawyers. or write the program yourself. Those subproblems that are conventional and fit available programs may be treated with implicit modeling. or functions. but remains a distant second. The response of each element is expressed in terms of a finite number of degrees of freedom characterized as the value of an unknown function. 6–8 .9 §6. This loosely worded statement describes the convergence requirement of discrete approximations. the FEM can be interpreted from either a physical or mathematical viewpoint. The finite element method (FEM) is by far the most widely used. because model validation requires access to and comparison with experimental results.3.Chapter 6: FEM MODELING: INTRODUCTION §6. The treatment in Chapters 1–10 emphasizes the former. Other Discretization Methods It was stated in Chapter 1 that the most popular discretization techniques in structural mechanics are finite element methods and boundary element methods. and that the discretization error goes to zero as that number goes to infinity. Error Sources and Approximation Figure 6. Even if solution errors are ignored — and usually they can — the computed solution of the discrete model is in general only an approximation in some sense to the exact solution of the mathematical model. The response of the mathematical model is then considered to be approximated by that of the discrete model obtained by connecting or assembling the collection of all elements. reducing the discretization error buys nothing. or unavailable in the case of a new product in the design stage. If the mathematical model is way off. The basic concept in the physical FEM is the subdivision of the mathematical model into disjoint (non-overlapping) components of simple geometry called finite elements or elements for short. The Finite Element Method The finite element method (FEM) is the dominant discretization technique in structural mechanics. One of the key goals of approximation theory is to make the statement as precise as it can be expected from a branch of mathematics. §6.5. particularly those involving infinite domains. As discussed in Chapter 1. The characterization and study of this error is addressed by a branch of numerical mathematics called approximation theory. Intuitively one might suspect that the accuracy of the discrete model solution would improve as the number of degrees of freedom is increased.2.4. just a more accurate answer to the wrong problem. The boundary element method (BEM) has gained in popularity for special types of problems. at a set of nodal points. 9 The discretization error is often overhyped in the FEM literature. In non-structural application areas such as fluid mechanics and electromagnetics. These may be either scarce.1 conveys graphically that each simulation step introduces a source of error. the finite element method is gradually making up ground but faces stiff competition from both the classical and energybased finite difference methods. But they are difficult and expensive to evaluate. In engineering practice modeling errors are by far the most important. and seems to have reached its natural limits. since it provides an inexhaustible source of publishable poppycock. Finite difference and finite volume methods are particularly well entrenched in computational fluid dynamics spanning moderate to high Reynolds numbers. A quantitative measurement of this discrepancy is called the discretization error. Next in order of importance is the discretization error.4. all elements of one type. it is easy to visualize an engine. This data is used in finite element programs to carry out element level calculations. §6. elements are isolated by the disconnection and localization steps. The disconnection-assembly concept occurs naturally when examining many artificial and natural systems.1.6. instead of writing a new one for each element instance.10 After that we can consider generic elements: a bar element. Unlike finite difference models. a beam element.6 ELEMENT ATTRIBUTES 1D 2D 2D 3D Figure 6. Typical finite element geometries in one through three dimensions. as individual entities. Their local properties can be developed by considering them in isolation. From the standpoint of the computer implementation.6. processing begins directly at the element level. finite elements do not overlap in space. They are placed as part of the DSM for instructional convenience. For example. bridge. followed by referral of the element to a convenient local coordinate system. it means that you can write one subroutine or module that constructs.3. or skeleton as fabricated from simpler components. In the mathematical interpretation of the FEM. In the Direct Stiffness Method. In practice. This is the key to the modular programming of element libraries. this property goes by the name disjoint support or local support. by suitable parametrization. building. 6–9 . and so on. one can take finite elements of any kind one at a time. Element Attributes Just like members in the truss example. which were described for the truss example in Chapter 2. Element Dimensionality 10 Both steps are only carried out in the modeler’s mind. Following is a summary of the data associated with an individual finite element. The procedure involves the separation of elements from their neighbors by disconnecting the nodes. §6. airplane.§6. 6. For example. Nodes serve a dual purpose: definition of element geometry.2. Element Nodes Each element possesses a set of distinguishing points called nodal points or nodes for short. In the so-called refined or higher-order elements nodes are also placed on sides or faces.3. When a distinction is necessary we call the former geometric nodes and the latter connection nodes. two or three space dimensions. They also function as “handles” through which adjacent elements are connected. §6. in which a third geometric node is used to define a local plane. DOFs are defined as the values (and possibly derivatives) of a primary field variable at connector node points. time may appear as an additional dimension. the primary variable is the displacement field and the DOF for many (but not all) elements are the displacement components at the nodes. Element Degrees of Freedom The element degrees of freedom (DOF) specify the state of the element. In two dimensions they are of triangular or quadrilateral shape. Here we simply note that the key factor is the way in which the primary variable appears in the mathematical model. §6. 6–10 . In some elements geometric and connection nodes may be at different locations.4. Some elements have purely geometric nodes. as illustrated in Figure 6.3.6. geometric and connector nodes coalesce.6. Element Geometry The geometry of the element is defined by the placement of the geometric nodal points. §6. For mechanical elements. This is illustrated by the Veubeke equilibrium triangle described in Chapter 15. §6.11 There are also special elements with zero dimensionality. also called orientation nodes to complete the definition of certain geometric attributes. Element Constitutive Properties For a mechanical element these are relations that specify the material behavior. Nodal Forces There is always a set of nodal forces in a one-to-one correspondence with degrees of freedom. In one-dimension. The intrinsic dimensionality can be expanded as necessary by use of kinematic transformations. Nodes are usually located at the corners or end points of elements. In mechanical elements the correspondence is established through energy arguments. For example a 1D element such as a bar. An example is the spar element in 3D shown in Figure E5. in a linear elastic bar element it is sufficient to specify the elastic modulus E and the thermal coefficient of expansion α.6. 11 In dynamic analysis. §6.2. For most elements studied here. elements are usually straight lines or curved segments.5.6.6. and home for degrees of freedom. See Figure 6. as well as possibly the interior of the element. Remark 6. and hexahedra (also called cuboids or “bricks”). In three dimensions the most common shapes are tetrahedra. such as lumped springs or point masses.3. Most elements used in practice have fairly simple geometries.1. spar or beam may be used to build a model in 2D or 3D space. The actual selection depends on criteria studied at length in Part II.Chapter 6: FEM MODELING: INTRODUCTION Elements can have intrinsic dimensionality of one. pentahedra (also called wedges or prisms). Examples are cross sectional properties of MoM elements such as bars. For computer implementation the foregoing data sets are organized into data structures. beams. §6.4. Examples are the elements discussed in Chapter 5: bars.4. These are used by element generation modules to compute element stiffness relations in the local system. pipe spar (web) shear panel (2D version of above) Figure 6. beams and shafts. which is another element class described below. spars. as well as providing insight into advanced modeling techniques such as hierarchical breakdown and global-local analysis. standpoint. §6. Examples of primitive structural elements. Classification of Mechanical Elements The following classification of finite elements in structural mechanics is loosely based on the “closeness” of the element with respect to the original physical structure. cables. rather than mathematical. Primitive Structural Elements These resemble fabricated structural components. 6–11 .1.7 Physical Structural Component CLASSIFICATION OF MECHANICAL ELEMENTS Mathematical Model Name Finite Element Idealization bar beam tube. The qualifier primitive distinguishes them from macroelements.6.7. Primitive means that they are not decomposable into simpler elements. These elements are usually derived from Mechanics-of-Materials simplified theories and are better understood from a physical. It is given here because it clarifies points that recur in subsequent sections. shafts. §6. see Figure 6. They are often drawn as such. Element Fabrication Properties For mechanical elements these are fabrication properties which have been integrated out from the element dimensionality.7.§6. as well as the thickness of a plate or shell element.7. 7. Examples: crack elements for fracture mechanics applications.6. §6. although the latter term overlaps with substructures (defined below). Examples: plates. The fact that. See Figure 6. Continuum Elements These do not resemble fabricated structural components at all.7. it may be simpler to define a regular 2D mesh using quadrilaterals rather than triangles. These often resemble structural components. general solids.2. rigid-body elements.6. shear panels. The main reason for introducing macroelements is to simplify preprocessing tasks. or of structural components viewed as continua. §6. Unlike structural elements. See Figure 6. For example. axisymmetric solids. Macroelements Macroelements are also called mesh units and superelements. §6. infinite and semi-infinite elements. slices. but are fabricated with simpler elements.7. Continuum element examples.3. Special Elements Special elements partake of the characteristics of structural and continuum elements.7. They are derived from a continuum mechanics standpoint but include features closely related to the physics of the problem.4. shells. See Figure 6. continuum elements are better understood in terms of their mathematical interpretation.5.Chapter 6: FEM MODELING: INTRODUCTION Finite element idealization Physical Physical plates Finite element idealization 3D solids Figure 6. 6–12 .5. They result from the subdivision of “blobs” of continua. behind the scene. the quadrilateral is actually a macroelement may not be important to most users. Special element examples. contact and penalty elements. Infinity double node Crack element Infinite element Honeycomb panel Figure 6. Examples: the wings and fuselage of an airplane. if necessary. The main conceptual distinction is that substructures are defined “top down” as parts of a complete structure. §6. This power. the implementation complexity. The element stiffness equations are merged into the master stiffness equations by appropriate indexing and matrix-entry addition. Boundary Conditions A key strength of the FEM is the ease and elegance with which it handles arbitrary boundary and interface conditions. The term superelement is often used in a collective sense to embrace element groupings that range from macroelements to substructures. The hand calculations for the example truss conceal. Substructures Also called structural modules and superelements. §6. The element equations are transformed to a common global coordinate system. the towers. The following Chapter provides more specific rules and examples. Similarly a box macroelement can save modeling times for structures that are built by such components.8. Below is a simple recipe for treating boundary conditions. Assembly The assembly procedure of the Direct Stiffness Method for a general finite element model follows rules identical in principle to those discussed for the truss example.7.5. A big hurdle faced by FEM newcomers is the understanding and proper handling of boundary conditions. whereas macroelements are built “bottom up” from primitive elements. for example box-girder bridges §6. 6–13 . deck and cables of a suspension bridge.9 BOUNDARY CONDITIONS Figure 6. Macroelement examples. The master stiffness equations in practical applications may involve thousands or even millions of freedoms.7. however. This topic is further covered in Chapter 10. The topic is elaborated upon in Chapter 25. however. and programming can become involved. As in that case the processs involves two basic steps: Globalization.9.§6. The distinction between substructures and macroelements is not clear-cut. Merge. has a down side. typically obtained by cutting the complete structure into functional components. These are sets of elements with a well defined structural function. 1. The key thing to remember is that boundary conditions (BCs) come in two basic flavors: essential and natural. Otherwise it is natural. and are imposed on the left-hand side vector u. the basic recipe is: 1. §6. Natural BCs do not directly affect DOFs and are imposed on the right-hand side vector f. The term “direct” is meant to exclude derivatives of the primary function. Connection constraints.2.9.C. Directly restraint the structure against rigid body motions. or to specify relations between degrees of freedom. An example is a prescribed node displacement. For the moment. 12 In classical dynamics these are called ignorable coordinates.12 Even experienced users of finite element programs are sometimes baffled by this kind. 6–14 . The mathematical justification for this distinction requires use of concepts from variational calculus. lines or planes of structural symmetry. To suppress displacements that are irrelevant to the problem. in Structural Problems Essential boundary conditions in mechanical problems involve displacements (but not strain-type displacement derivatives). 2. of the following types. An example are rotational degrees of freedom normal to smooth shell surfaces. and are covered in Chapters 8–9. Essential and Natural B. and is consequently relegated to Part II.C. Symmetry conditions. unless those derivatives also appear as degrees of freedom.C. To impose symmetry or antisymmetry restraints at certain points. But there are more general boundary conditions that occur in practice. B. Ground or support constraints. These can be notoriously difficult to handle from a numerical standpoint. Essential BCs directly affect DOFs. If a boundary condition involves one or more degrees of freedom in a direct way. Ignorable freedoms. Many conditions of this type can be subsumed under the label multipoint constraints or multifreedom constraints. it is essential.Chapter 6: FEM MODELING: INTRODUCTION §6. such as rotations in beams and plates. A structural engineer must be familiar with displacement B. This allows the discretization to proceed only over part of the structure with a consequent savings in modeling effort and number of equations to be solved. Support conditions for a building or bridge problem furnish a particularly simple example.9. To provide connectivity to adjoining structures or substructures. and so is a majority of the notation. respectively. is rarely mentioned. The topic of BC classification and handling is a crucial one in practice. Good engineers are too busy (and in demand) to have time for writing books. 6–15 . the distinction between macroelements. substructures and superelements is an ongoing source of confusion. which has legal and professional implications. More modeling mistakes are done in this aspect of FEM application than anywhere else. The element classification given here attempts to systematize dispersed references. There is less unanimity on u and f for node displacement and force vectors. K is universally used13 for stiffness matrix in virtually all post-1960 books. The all-encompassing term “superelement” emerged in Norway by 1968 as part of the implementation of the computer program SESAM. References Notes and Bibliography Most FEM textbooks do not provide a systematic treatment of modeling.§6. In particular. This gap has been particularly acute since FEM came on the scene because of generational gaps: “real engineers” tend to mistrust the computer. References Referenced items have been moved to Appendix R. 13 A symbol derived from the “spring constant” k that measures the stiffness of a mechanical spring. some books such as Zienkiewicz and Taylor [794] still use different symbols. But that is not so in early publications. The notion of explicit versus implicit modeling. particularly since massively parallel computation popularized the notion of “domain decomposition” in the computer science community. FEM terminology is by now standard.g. E. This is no accident: few academic authors have experience with complex engineering systems. and often for good reason. There are a few exceptions: the often cited book of Przemieniecki [575] uses S. Additional historical details are provided in Chapter 10. Loads and BCs 7–1 .7 FEM Modeling: Mesh. . . . .3. .3.2. . Node by Node Lumping . . . . . . . . . . §7. . . . . . Introduction General Recommendations Guidelines on Element Layout §7. . . . . . §7. 7–3 7–3 7–3 7–3 7–4 7–5 7–5 7–5 7–6 7–6 7–9 7–9 7–10 7–11 7–11 7–12 7–12 7–12 7–13 7–15 7–15 7–16 . . . . .1. . Effect of Loading Patterns . . Symmetry and Antisymmetry Visualization §7. Symmetry and Antisymmetry Conditions §7. . .3. . Boundary Conditions Support Conditions §7. . .1. . . .6.3. . . . .2. . . . . . §7. .1.2. . . . . .Chapter 7: FEM MODELING: MESH.4. . . . §7. . . . . .3.4. .7. §7. .2. . *Weighted Lumping . . . . . .7. . . . §7. . . . §7. . . .2. . Element Aspect Ratios . . . . *Energy Consistent Lumping . §7. . . . Exercises . . . . . . .4. Direct Lumping of Distributed Loads §7. . . . . . . . . . . . . . . . . .6. . 7–2 .5. . . . . . . . . . . . .4.6.1. . . . . . . . . . §7. . . §7. . . . .3. . Element by Element Lumping . . . . .3. . . . .4. . §7. . . . . . Physical Interfaces . . . . . Supporting Three Dimensional Bodies . §7. . . .1. . . Preferred Shapes . . . . . . . . . . Mesh Refinement . References . §7. . . . . . §7. §7. . . . . . . LOADS AND BCS TABLE OF CONTENTS Page §7. .4. . . . . . .4. . .7. . . Supporting Two Dimensional Bodies . Notes and Bibliography . . §7. . . . . . . . 1 2 Paraphrasing the Bellman in The Hunting of the Snark: “what I say three times is true. because that would require mathematical tools beyond the scope of this course. • Use the coarsest mesh you think will capture the dominant physical behavior of the physical system. Guidelines on Element Layout The following guidelines are stated for structural applications. never mess around with complicated or special elements. Most examples are two-dimensional. A high value by itself means nothing in this context. There is little point in using complicated models that will not survive design iterations.” Away from such regions one can use a fairly coarse discretization within constraints imposed by the need of representing the structural geometry. Initial FE models may have to be substantially revised to accommodate design changes. The time for refinement is when the design has stabilized and you have a better picture of the underlying physics.1. Mesh Refinement Use a relatively fine (coarse) discretization in regions where you expect a high (low) gradient of strains and/or stresses. • Never.” Gradient is the key word. The examples in Figure 7. loading and support conditions reasonably well. conversion of distributed loads to node forces.1. possibly reinforced by experiments or observation.3. The next two Chapters deal with more complicated forms of boundary conditions called multifreedom constraints. §7. The presentation is “recipe oriented” and illustrated by specific examples from structural mechanics. Three word summary: keep it simple. it gives guidelines on layout of finite element meshes. unless you are absolutely sure of what you are doing. they will be often illustrated for two-dimensional meshes of continuum elements for ease of visualization. are1 • Use the simplest type of finite element that will do the job. cracks and cutouts. • In the interior of structures with abrupt changes in thickness. • In the vicinity of concentrated (point) loads. 7–3 . and handling the simplest forms of support boundary conditions.3. General Recommendations The general rules that should guide you in the use of commercial or public FEM packages. No attempt is made at rigorous justification of rules and recommendations. §7. After some general recommendations.§7. As noted above.3 GUIDELINES ON ELEMENT LAYOUT §7. High gradient means rapid variation. concentrated reactions.2 Regions to watch out for high gradients are: • Near entrant corners (see Remark below) or sharply curved edges. Introduction This Chapter continues the exposition of finite element modeling principles.1 illustrate some of these “danger regions. §7. never. particularly in design applications. material properties or cross sectional areas.2. 1. elements with aspect ratios exceeding 3 should be viewed with caution and those exceeding 10 with alarm. anchors. reinforcing bars. Remark 7.3.) Abrupt thickness changes Material interfaces Figure 7. Traverse the boundary CCW so the body or structure is on your left.1. it is a crack tip. The first bullet above mentions “entrant corner. they can be recognized as follows.2. In many “thin” structures modeled as continuous bodies the appearance of “skinny” elements is inevitable on account of computational economy reasons.2.or three-dimensional element is the ratio between its largest and smallest dimension. such as the ones illustrated on the right of Figure 7.1) Cutouts Cracks Vicinity of concentrated (point) loads. Element Aspect Ratios Good Bad When discretizing two and three dimensional problems. the definition must be appropriately adjusted. and always taking the positive value.) As a rough guideline. (The aspect ratio of a two. Some situations where a locally refined finite element discretization (in the red-shaded areas) is recommended.] For exterior problems or multiple-connected domains. LOADS AND BCS entrant corners (cf. etc. Remark 7. it is an entrant corner. An example is provided by the three-dimensional modeling of layered composites in aerospace and mechanical engineering problems. try to avoid finite elements of high aspect ratios: elongated or “skinny” elements. Elements with good and bad aspect ratios. and sharp contact areas weld Load transfer (bonded joints. §7. When hitting a sharp or rounded corner. Remark 7. Such elements will not necessarily produce bad results — that depends on the loading and boundary conditions of the problem — but do introduce the potential for trouble.” That is a region where isostatics (principal stress trajectories) “bunch up. If the angle exceeds 180◦ .” For a two-dimensional problem mathematically posed on a singly-connected interior domain. 7–4 .2.Chapter 7: FEM MODELING: MESH. welds.2. [If it is close to 360◦ . Figure 7. look at the angle (positive CCW) formed by the exterior normals (the normal going toward your right) before and after. measured from before to after. See Figure 7. live loads on bridges. Physical Interfaces A physical interface. elements must not cross interfaces.4. inertial. or of volume loads along two transverse directions.4 Distributed loads may be of surface or volume type.3 The main problem with tetrahedra and wedges is that they can produce wrong stress results even if the displacement solution looks reasonable. such as a bar or beam area. and the like.§7.3. §7. result from the integration of surface loads along one transverse direction. A derived type: line loads. Line loads are measured in force per unit length. They are measured in force per unit volume.4. In 3D FE modeling. There are generators that try to produce bricks. One of the homework exercises is oriented along these lines. if you have a choice between triangles and quadrilaterals with similar nodal arrangement. mesh transitions. distributed loads are more common than concentrated (point) loads. But sometimes triangles can be avoided altogether with some thought. and wedges over tetrahedra. prefer strongly bricks over wedges. one of the objectives of a good structural design is to avoid or alleviate stress concentrations produced by concentrated forces. Whatever their nature or source.3. prestress or electromagnetic effects. 3 Unfortunately. These forces end up in the right-hand side of the master stiffness equations. They are measured in force per unit area.3. Distributed surface loads (called surface tractions in continuum mechanics) are associated with actions such as wind or water pressure. snow weight on roofs. 7–5 . Preferred Shapes In 2D FE modeling. thermal. distributed loads must be converted to consistent nodal forces for FEM analysis.4 DIRECT LUMPING OF DISTRIBUTED LOADS No OK Physical interface Figure 7. That is. many existing space-filling automatic mesh generators in three dimensions produce tetrahedral meshes. The latter should be used only if there is no viable alternative. §7. Volume loads (called body forces in continuum mechanics) are associated with own weight (gravity). should also be an interelement boundary. but these often fail in geometrically complicated regions. rounding up corners.3. resulting from example from a change in material. §7. and the like. Triangles are quite convenient for mesh generation. 4 In fact.3. such as a beam or plate thickness. llustration of the rule that elements should not cross material interfaces. centrifugal. prefer quadrilaterals. Direct Lumping of Distributed Loads In practical structural problems. lift in airplanes. each boundary node is assigned a tributary region around it that extends halfway to adjacent nodes. which shows details of the computation over 2–3. the magnitude of the crosshatched area under the load curve. by requiring that the distributed loads and the nodal forces produce the same external work. so it is actually a line load measured as force per unit length.. illustrated for a 2D problem. is often used by structural engineers in lieu of the mathematically impeccable but complicated variational approach. This is an advanced topic in computational geometry (see. The force contribution P of the cross-hatched area is directly assigned to node 3. [194]) and thus not treated here.g. Distributed load intensity (load acts downward on boundary) f3 = P 1 2 3 Boundary 4 5 6 Finite element mesh Figure 7. The meaning of “consistent” can be made precise through variational arguments. (The load is assumed to have been integrated through the thickness normal to the figure. For the example of Figure 7. The procedure is illustrated in Figure 7.6 It should be avoided. A node force is obtained by adding the contributions from all elements meeting at that node. 6 The computation of tributary areas and volumes for general 2D and 3D regions can be done through the so-called Voronoi diagrams. . when the applied forces vary rapidly (within element length scales) or act only over portions of the tributary regions.2. however.5. For the frequent case in which 5 It has been extensively used in the aircraft industry for smooth-varying pressure loads computations. would be that contributed by segments 2–3 and 3–4. e... For this reason it is often preferred in hand computations. §7. Element by Element Lumping In this variant the distributed loads are divided over element domains. the topic is deferred to Part II.) The procedure is also called tributary region or contributing region method. Since this requires the introduction of external work functionals.4. The total force at node 3. This method has the advantage of not requiring the error-prone computation of centroids. This example shows a distributed surface loading acting normal to the straight boundary of a two-dimensional FE mesh.4.. or simply load lumping. However. for instance.4. LOADS AND BCS Nodal force f3 at 3 is set to P. as needed in the EbE technique discussed below. Node by Node Lumping The node by node (NbN) lumping method is graphically explained in Figure 7.Chapter 7: FEM MODELING: MESH. NbN direct lumping of distributed line load. The resultant load is assigned to the centroid of the load diagram. This area extends halfway over adjacent element sides .1.4.5 It can be extended to three-dimensional meshes as well as volume loads. and apportioned to the element nodes by statics. 7–6 .4. a simpler approach called direct load lumping. . §7. . Two variants of this technique are described below for distributed surface loads.. . is preferable. . In fact it agrees with consistent node lumping for simple elements that possess only corner nodes. Node by Node. The wet nodes for a water head of 180 ft over the riverbed are shown in Figure 7.7(a. The section is discretized by triangular elements as illustrated in Figure 7.4 d where d is the depth in ft. which until then had been largely confined to aerospace. . EbE lumping of linearly varying line load over element..8(b).. 1960 by the Finite Element Method. In those cases it is not affected by sharpness of the load variation and can be even used for point loads that are not applied at the nodes.1..§7.4 DIRECT LUMPING OF DISTRIBUTED LOADS . If applicable. a “wet node” of a FEM discretization is one in contact with the water.. . Figures 7.8 psf and unit width normal to 7 As discussed in Notes and Bibliography.6. The pressure in psf (lbs per sq-ft) is p = 62.. 7–7 . assuming that the wet face AB is vertical for simplicity.7(d) is a typical 1-ft slice of the dam and near-field soil. . this example has historical significance... In the analysis of dam and marine structures.. EbE direct lumping of distributed line load... a 220-ft high. .3. e f ie = L (2qi +qj ) 6 qi qj e i Le j e f je = L6 (qi +2qj ) Figure 7.4 × 22 = 1372. or if it has rotational degrees of freedom. For node 1 go halfway to 2. illustrated for a 2D problem.. The effect of hydrostatic pressure is applied to the structure through nodal forces on wet nodes. concretebuilt gravity dam.6. as the first realistic Civil Engineering structure modeled ca.. Example 7. a distance of (180 − 136)/2 = 22 ft. For those elements the variational-based consistent approach covered in Part II and briefly outlined in §7.. the variation of the load over the element is linear (so the area under the load is a trapezoid) the node forces can be computed directly by the formulas given in Figure 7. The EbE procedure is not applicable if the centroidal resultant load cannot be apportioned by statics.7(c)..5. Nodes are numbered 1 through 9 for convenience. Compute the horizontal hydrostatic nodal forces f x1 and f x2 using NbN and EbE. The dam has a length of 2624 ft and was constructed over the White River in Arkansas over 1941–44. Accordingly the FEM model shown in 7.7 The structure is assumed to be in plane strain.7(d). Its typical cross section is shown in 7. . The tributary load area is a triangle extending 22 ft along y with bottom pressure 62.. Distributed load intensity (load acts downward on boundary) Force P has magnitude of crosshatched area under load curve and acts at its centroid centroid C of crosshatched area e f2e 1 P 2 C f 2e = (b/Le )P 2 f3e 3 5 P a b 3 Le=a+b Details of element-level force computations Boundary 4 f3e = (a/Le)P 6 Finite element mesh Figure 7.3.b) show web-downloaded pictures of the Norfork Dam. This happens if the element has midside faces or internal nodes in addition to corner nodes... . EbE is more accurate than NbN lumping... .6) = can be applied directly: f x1 (2) = (52/6)(2 × 2745. Element by Element..b) pictures.6) = 20134 lbs..0 psf at the bottom.4. Norfork Dam: (a. 364' x 200' A (b) Water C D B spillway crest 188' over riverbed (d) Soil Figure 7. This gives f x2 = 48 × (1372. giving f x1 = 12 22 × 1372.4 × 44 = 2745. (c) cross section of dam above foundation (line inside dam is a thermally induced crack considered in the 1960 study). (b) NbN tributary regions.. p2 = 62. It is convenient to pre-compute hydro pressures at wet node levels: p1 = 0. Example 7..4 d (lbs/sq-ft) C (b) 4 y4 = 36 y5 = 0 5 x5 =0 x =−70 All dimensions in ft. f x1 = f x1 The computations for wet nodes 3 through 9 are left as an exercise. Norfork Dam example: (a) computation of wet node forces due to hydrostatic pressure.7.8. x =−210 6 Plane strain model. 7–8 . Adding contributions to nodes 1 and 2: 40269 lbs and f x2 (1) (1) (2) = 20134 lbs and f x2 = f x2 + f x2 = 40269 + 99507 = 139776 lbs. The tributary load area is a trapezoid extending 22 + 26 = 48 ft vertically. with pressures 1372. p3 = 62.. A 1 y =180 1 (a) 180 ft 2 y =136 2 3 y = 84 d Water 3 p=62.2. . LOADS AND BCS (a) MAX WATER EL.. Chapter 7: FEM MODELING: MESH.6 + 5990.. .. the formulas of Figure 7. . slice x8 =−350 7 x 9=−490 1 ft thick normal to section 9 8 7 6 B 22 1 70 120 162 2 3 4 (c) 1 44 2 96 144 3 180 4 5 5 Figure 7. (c) EbE regions. ...6 psf. 552' (c) y Concrete dam EL.4 × 70 = 4368.4 × 96 = 5990.8 + 4368.8 psf at the top and 62. Because the variation of p is linear. ... .6 (1) (1) = (44/6)(2 × 0 + 2745. 584' SPILLWAY CREST EL.8 = 15101 lbs... (d) coarse mesh including foundation and soil but not crack [137]. For node 2 go up 22 ft and down (136 − 84)/2 = 26 ft. paper.. Figure 7.9 shows the mesh for the y > 0 portion of the gravity dam of the previous example. f x2 = (44/6)(0 + 2 × 2745.4) = 99507 lbs.0)/2 = 137779 lbs. 00 *.00 94. Unit value at node n: Wn (xn ) = 1. y3 }} is given by A = (x2 y3 − x3 y2 ) + (x3 y1 − (19) (17) x1 y3 )+(x1 y2 − x2 y1 ). (Furthermore for constant specific weight it gives the same answer as EbE. A(10) =.00 *. (16) and (17). (7. The specific weight for concrete of γ = 200 pcf (pounds per cubic foot).00 *.00 94. where h is the thickness normal to the figure (1 ft here). 7–9 wn (x) = 0 otherwise. y2 } 10 (9) 11 (11) 12 (13) 13 (15) and {x3 .4.) To apply EbE. (10).2). A(15) =. Vanishes over any element not pertaining to n: Wn = 0 if x ≤ xn−1 or x ≥ xn+1 3. For this calculation NbN is unwieldy because computation of the nodal tributary region requires construction of a Voronoi diagram. Compute the node force f y11 due to own weight. Denote the distributed load by q(x). For NbN pick Wn (x) = 1 For EbE pick if 1 (xn−1 2 + xn ) ≤ x ≤ 12 (xn + xn+1 ).00 *. W (10) = γ h. Applying this to the geometry of 14 (14) 15 (16) 16 (18) 17 (20) 18 (29) (21) (27) the figure one finds that the areas are A(9) =.10. *Weighted Lumping The NbN and EbE methods are restricted to simple elements. We want to find the lumped force f n at an interior node n of coordinate xn . specifically those with corner nodes only.00 94. and A(17) = γ h. A(15) = γ h.4 and 7.3) (7. and A(17) =.00 *.2) xn−1 For this formula to make sense. Both NbN and EbE are special cases of (7. The weight 24 20 22 21 23 forces on each element are W (9) = γ h. select the elements that contribute to 11: the six triangles (9). (11).4 DIRECT LUMPING OF DISTRIBUTED LOADS (The node numbering is different). The mathematical justification requires energy theorems covered in Part II.00 40.00 40.00 40. Thus at this stage the technique is merely presented as a recipe. For uniform element thickness and specific weight.4) .7(d). {x2 . Thus node 11 receives (7. Gives the same results as NbN or EbE for constant q over elements with corner nodes only. with coordinates xn−1 and xn+1 .00 The area of a triangle with corners at {x1 .00 152.00 94. one third of each force goes to each element corner. We outline here a general method that works for more complicated models. (15).00 *. These particular weight functions are depicted in Figure 7. 2. 2 4 1 (1) 3 (2) (3) (4) (5) 5 (7) (6) 8 7 (10) 6 (8) 9 (12) Node 7 8 9 10 11 12 13 14 15 16 17 18 x *. (23) (25) 19 (22) (28) (26) (24) A(11) =. y1 }.00 *.00 40.00 *.§7. TBF) §7.00 y 152. To fix the ideas consider again the 2D situation depicted in Figures 7. Figure 7.5.00 *.3. the weight function must satisfy several properties: 1.00 152. W (11) = γ h. Computation of weight force at node 11 of gravity dam example of Figure 7.00 40. otherwise.00 *.  x−x  1 − xn − xn−1 n−1 Wn (x) = x − x n  1 − xn+1 − xn 0 if xn−1 ≤ x ≤ xn . A(16) =.00 *. The lumped force is given by  xn+1 fn = Wn (x) q(x) d x (7. if xn ≤ x ≤ xn+1 .9. respectively. A(16) = γ h. Introduce a weight function Wn (x) with properties to be specified below. Let the adjacent nodes be n − 1 and n + 1.1) f y11 = 13 (W (9) + W (10) + W (11) + W (17) + W (18) ) = (example incomplete. The  external virtual work of q(x) is q(x)Wn (x) δu n d x extended over the portion where Wn . and (b) EbE lumping.4.4.10. *Energy Consistent Lumping The rule (7. q h (per unit of x length) §7. LOADS AND BCS (a) halfway between n−1 and n halfway between n and n+1 Wn = 1 1 n−1 n (b) Wn 1 n+1 n−1 xn xn n n+1 Figure 7.2) can be justified from the standpoint of the Principle of Virtual Work. Let δu n be a virtual node displacement paired to f n .Chapter 7: FEM MODELING: MESH. Take δu n Wn (x) to be the associated displacement variation. Weight functions corresponding to: (a) NbN lumping. 3) shown on the right of Figure 7. The dimensionless variable ξ is called an isoparametric natural coordinate.3. or consistent for short. If 1–2 and 2–3 were on two different elements. trial functions are the union of shape functions over the patch of all elements connected to node n.= 0.11. But this lumping is wrong for an element with midside nodes. both NbN and EbE would give f 1 = f 3 = 14 qha and f 2 = 12 qha. Applying the rule (7. Equating this to f n δu n and cancelling δu n from both sides yields (7.2).11. pick the weight functions Wi (i = 1. f 2 and f 3 . Since there is only one element on the loaded edge.11. which is the total load acting on the plate edge. (7. Instead.) This important technique is studied in Part II of the course after energy methods are introduced. f 1 + f 2 + f 3 = qha. The problem is to compute the node forces f 1 . where h is the plate thickness. 1 f1 =? f2 =? 2 W1 = − ξ(1−ξ)/2 = N1 3 f 3 =? 1 1 2 3 W2 = 1−ξ = N2 2 1 1 2 3 W3= ξ(1+ξ)/2 = N3 2 1 If Wn is the trial displacement function actually used for the development of element equations the lumping is called energy consistent. Conside the mesh of 9-node quadrilaterals shown in Figure 7.2) we get  f1 = 0 a  1 dx dξ = W1 (x) q h d x = W1 (ξ ) q h dξ −1  1 −1 − 12 ξ(1 − ξ )q h ( 12 a) dξ = 16 qha.5) Similarly f 2 = 23 qha and f 3 = f 1 . Example of consistent load lumping. 7–10 . 2. the Wi are actually the quadratic shape functions Ni for a 3-node line element. 1 3 ξ = 1 − 2x/a x a Figure 7. Example 7. As a check. (As will be seen later. developed in later Chapters.) The upper plate edge 1–3 is subject to a uniform normal load qh per unit length. (This is later used as a benchmark problem in Chapter 27. . Conditions involving applied loads are natural. preclude) all translational displacements at point A. More exotic types. the recipe of §6.1 that distinguishes between essential and natural BC is: if it directly involves the nodal freedoms. an applied load will cause infinite displacements.5.6. require more advanced mathematical tools and are covered in the next two Chapters. Thus the minimum number of constraints that has to be imposed in two dimensions is three. together with A. In what follows we analyze two. support A provides translational restraint. provides rotational restraint. etc.. Essential BCs take precedence over natural BCs. .. such as multifreedom constraints.6 B . the body must be restrained against two translations along x and y. . §7. Support Conditions Supports are used to restrain structures against relative rigid body motions.. . In structural problems formulated by the DSM. the engine of a car is attached to the vehicle frame through mounts..12 shows two-dimensional bodies that move in the plane of the paper. Because of the informal setting.1. In this section we discuss the simplest essential boundary conditions in structural mechanics from a physical standpoint. such as displacements or rotations. Otherwise it is natural.. . The car frame becomes the “ground structure. or to a “ground structure” which is viewed as the external environment. anchors or similar devices). remove. 7–11 . and that we delete the translational degree of 8 For example. B A SUPPORT CONDITIONS y . as Earth rotates and moves through space.(b) y (c) . and one rotation about z. Supporting Two Dimensional Bodies Figure 7.12. The simplest essential boundary conditions are support and symmetry conditions. If a body is not restrained. §7. we say that we delete (fix. In Figure 7.. Boundary Conditions The key distinction between essential and natural boundary conditions (BC) was introduced in the previous Chapter..6. In finite element terminology. . Suppressing two-dimensional rigid body motions. . .. Regardless of loading conditions. B x A A x Figure 7.and three-dimensional motions separately.. .... whereas support B.” which moves with respect to Earth ground.8 The resulting boundary conditions are often called motion constraints.. §7. The distinction is explained in Part II from a variational standpoint. . §7. These appear in many practical problems. This is done by attaching them to Earth ground (through foundations. . it is essential. the ensuing discussion relies heavily on examples..12.7.. This makes them relevant to problems with which a structural engineer is familiar. (a) . . . Judicious use of these conditions allows only a portion of the structure to be analyzed. however. or by imagining certain rotational ot reflection motions.. a 180◦ rotation of the body about the symmetry line reproduces exactly the original problem. An antisymmetry line can be recognized by the displacement pattern illustrated in Figure 7.14(a).9 §7. A symmetry line in two-dimensional motion can be recognized by remembering the “mirror” displacement pattern shown in Figure 7. and leaves three rotations to be taken care of.12(a) does illustrate the minimal number of constraints. §7. The configuration of Figure 7. Suppressing rigid body motions in a three-dimensional body. This means that if the supports are conceptually removed. the z component is deleted at point C to prevent rotation about y. If the roller support at B is modified as in Figure 7. . . . Engineers call A and B reaction-to-ground points.12(c) is called a kinematic mechanism. it becomes ineffective in constraining the infinitesimal rotational motion about point A because the rolling direction is normal to AB. y B . and the x translation at point B... and the y component is deleted at point D to prevent rotation about x. However. Additional freedoms may be precluded to model greater restraint by the environment. 9 Even if symmetry or antisymmetry are not explicitly applied through boundary conditions..12(a). applied loads are automatically balanced by reactive forces at A and B.6. Figure 7.Chapter 7: FEM MODELING: MESH. LOADS AND BCS freedom directed along the normal to the AB direction at point B. Both techniques are illustrated for the two-dimensional case. all three degrees of freedom at point A have been fixed.. they provide valuable checks on the computed solution. This body is free to distort in any manner without the supports imposing any deformation constraints. Supporting Three Dimensional Bodies D A C x z Figure 7.1. Symmetry and Antisymmetry Conditions Engineers doing finite element analysis should be on the lookout for conditions of symmetry or antisymmetry.13.13. Figure 7.13 illustrates the extension of the freedomrestraining concept to three dimensions. in accordance with Newton’s third law. . . The x displacement component at point B is deleted to prevent rotation about z. and will result in a singular modified stiffness matrix.2. 7–12 . Here the line AB is parallel to the global y axis... This prevents all rigid body translations.. Alternatively. Figure 7. Symmetry and Antisymmetry Visualization Recognition of symmetry and antisymmetry conditions can be done by either visualization of the displacement field.14(b).12(b) is a simplification of Figure 7..7. The minimal number of freedoms that have to be constrained is now six and many combinations are possible.7. with a consequent saving in data preparation and computer processing time. We simply delete the x and y translations at point A.12(c). In the example of Figure 7. §7. . The boundary conditions to be imposed on the FE model are also different. Remark 7. To do that. The important thing is not to overconstrain the structure by applying more than one y constraint. §7. If there are no actual physical supports. On the other hand if the loading is antisymmetric. Symmetry line (b) (a) A' loads A Antisymmetry line A' A" A A" displacement vectors Figure 7.7 SYMMETRY AND ANTISYMMETRY CONDITIONS Alternatively. . ..15. the choice is arbitrary and amounts only to an adjustment on the overall (rigid-body) vertical motion. y (a) A B C D x . Thus the vertical rigid body motion along y is not precluded. a 180◦ rotation of the body about the antisymmetry line reproduces exactly the original problem except that all applied loads are reversed. Applying the recognition patterns stated above one concludes that the structure is doubly symmetric in both geometry and loading. A doubly symmetric structure under symmetric loading. It is evident that no displacements in the x-direction are possible for any point on the y-axis. More complex regular patterns associated with sectorial symmetry (also called harmonic symmetry) as well as rotational symmetry can be treated in a similar manner..15(b).§7. but will not be discussed here. (b) Figure 7. For the case shown in Figure 7.. for example A or D. This structure is symmetrically loaded on the x-y plane. the x axis becomes an antisymmetry line as none of the y = 0 points can move along the x direction.2. one node has to be constrained in the y direction. .16(a).16(b) the center point C has been so chosen. A C B D . it must be kept in mind that model reduction can be used only if the loading conditions are also symmetric or antisymmetric.16(b). But any other node could be selected as well.7.16(b) note that all rollers slide in the same direction. and that no y displacements are possible for points on the x axis. as shown in Figure 7.14. In Figure 7. as illustrated in Figure 7. A finite element model of this structure may look like that shown in Figure 7. Visualizing symmetry and antisymmetry lines. Similar recognition patterns can be drawn in three dimensions to help visualization of planes of symmetry or antisymmetry.3. 7–13 .15(a). Effect of Loading Patterns Although the structure may look symmetric in shape. Consider the plate structure shown in Figure 7. . since the lumping process will take care of the necessary apportionment to nodes.. For example. . since then the node force will appear as a reaction... (a) (b) A B C D P/2 P/2 P .Chapter 7: FEM MODELING: MESH..17.4.. Breaking up a point load acting on a symmetry line node.. If the structure is broken down into 4 quadrants as in Figure 7. .. A . Breaking up a point load acting on a antisymmetry line node.. . as illustrated in Figure 7.. P must be halved as indicated in Figure 7.17(a). . The same idea applies to point loads on antisymmetry lines. A doubly symmetric structure under antisymmetric loading..17(c). . P (c) P/2 P/2 Figure 7. . B C D 2P P .. .. . .17(b). . LOADS AND BCS y (a) (b) B A x D C ..18. Distributed loads should not be divided when the structure is broken down into pieces. but there the process is trickier. 7–14 . A B D C Vertical (y) motion of C (or another node) should be constrained to eliminate the y rigid motion Figure 7..16. . Point loads acting at nodes located on symmetry or antisymmetry lines require special care.. consider the doubly symmetric plate structure of Figure 7... P/2 . . . Remark 7.. The load must not be applied if the node is fixed against motion. ... ..15 under the two point loads of magnitude P. as pictured in Figure 7... P P/2 P/2 Figure 7. . ..18. A notable exception is [397]. then a doctoral student under Clough’s supervision. tends to be also flaky.7(d)] and clearly indicated the ability of the new method to model structures of arbitrary geometry with different orthotropic properties within the dam and foundation.2 (and two Exercises) for hydrostatic load-lumping calculations was the first realistic Civil Engineering structure analyzed by FEM. conducted the detailed analyses that were required by the study. Wilson and a new graduate student. How this seminal event came to pass is narrated by Wilson in [803]. the mesh is that shown in Figure 7.” References Referenced items moved to Appendix R. Annotations are inserted in squared brackets. the emphasis being on academic boundary value problems. Ian King. The treatment of boundary conditions. The proposal contained a coarse mesh solution that was produced by the new program [a matrix code developed by E. which is understandable since Irons worked in industry (at Rolls-Royce Aerospace Division) before moving to academia. Wilson. 7–15 .§7. “On the recommendation from Dr. Clough [then a Professor at UC Berkeley] submitted [in 1960] a proposal to perform a finite element analysis of Norfork Dam. if given at all. which at that time was considered as the state-of-the-art method for solving such problems. Roy Carlson. The Norfork Dam project provided an opportunity to improve the numerical methods used within the program and to extend the finite element method to the nonlinear solution of the crack closing due to hydrostatic loading.1 and 7. L. from which the following fragment is taken. The Norfork Dam used in Examples 7. The rule collection at the start of this Chapter attempts to collect important recommendations in one place. The finite element proposal was accepted by the Corps over an analog computer proposal submitted by Professor Richard MacNeal of CalTech [who later directed the development of NASTRAN under a NASA contract in the late 1960s]. References Notes and Bibliography FEM modeling rules in most textbooks are often diffuse. The significant engineering results of the project indicated that the cracked dam was safe [since the crack would be closed as the reservoir was filled]. particularly symmetry and antisymmetry. It greatly contributed to the acceptance of the method beyond the aerospace industry where it had originated. a consultant to the Little Rock District of the Corps of Engineers. a gravity dam that had a temperature induced vertical crack near the center of the section. In those that focus on the mathematical interpretation of FEM they are altogether lacking. Chapter 7: FEM MODELING: MESH.2. For example.3 [A:15] A rectangular plate of constant thickness h and inplane dimensions 8a and 6a is meshed with 8 rectangular elements as shown in Figure E7. Draw a transition mesh within that region that correctly merges with the regular grids shown. Identify those spots by its letter and a reason. M J L K I H Figure E7. The applied load at D and the supports at I and N extend over a fairly narrow area.2. For this. D: vicinity of point load. List what you think are the likely “trouble spots” that would require a locally finer finite element mesh to capture high stress gradients. Transition meshing for Exercise 7. EXERCISE 7.2 [D:15] Part of a two-dimensional FE mesh has been set up as indicated in Figure E7. Inplane bent plate for Exercise 7.. Check that adding up all y forces at the 15 nodes one gets W = −48a 2 γ h.1.1 is loaded and deforms in the plane of the paper. Loads and BCs P C A . The plate specific weight is γ and acts along the −y axis direction.3(a). take the total weight force on each element.. using the NbN method.1. Region ABC D is still unmeshed.1 [D:10] The plate structure shown in Figure E7.) Do the results agree with NbN lumping? 7–16 . O E D B G F N . Obtain the node-tributary regions as sketched in Figure E7.3(b). and avoids triangles. EXERCISE 7. A B D C Figure E7. LOADS AND BCS Homework Exercises for Chapters 6 and 7 FEM Modeling: Mesh. EXERCISE 7. Partial answer: f y1 = −2a 2 γ h. Note: There are several (equally acceptable) solutions. uses 4-node quadrilateral elements (quadrilaterals with corner nodes only).2. (b) Repeat the computations using the EbE method. (This agrees with consistent energy lumping for 4-node rectangular elements. which shows each element divided by the medians drawn as dashed lines (the tributary region of node 7 is shown in yellow). and assign one quarter to each corner node. (a) Compute the node forces due to plate weight at nodes 1 through 15. EXERCISE 7.3.2. (a) Mesh layout for Exercise 7. Recover coordinates.4 × 490 lbs... (a) Load transfer A Steel B P Concrete (b) Load transfer A Plastic B P Concrete Figure E7.. .3..9. for instance.6. Pull tests for Exercise 7. 2nd Edition. Then draw a coarse FE mesh indicating.1.. which is important in the 2D design of foundations of civil structures. In (a) a stiffer material (steel rod) is pulled out of a softer one (concrete block).4 lbs.. and the load transfer diagram is reversed. initiated in Example 7. Compute the total weight of the dam slice in lbs.4 [N/C:20] Complete the computation of hydrostatic node forces on the Norfork Dam under a water head of 180 ft. in this case the load transfer diagram shows a rapid variation near the inner end of the rod. using the data of Figure 7. Use the EbE method. in Timoshenko-Goodier’s Theory of Elasticity. reusing the data of Figure 7.. . with 10 Note that (e) is the famous Flamant’s problem.. In (b) a softer material (plastic rod) is pulled out of a stiffer one (concrete rod).. The analytical solution of (e) and (f) may be found. Do two checks: sum of horizontal (x) forces on nodes 1 through 5 is 1 1802 × 62. and either the NbN or EbE method (pick one). (c) a clamped semiannulus under a force pair oriented as shown. (b) the same disk under two diametrically opposite force pairs.Exercises Plate thickness h. EXERCISE 7. indicate for (a) and (b) where a finer mesh would be desirable. page 85ff. Explain. state whether it is possible to cut the complete structure to one half or one quarter before laying out a finite element mesh.. specific weight γ (a) 2 1 4 3 (b) 5 1 2 3 4 5 y (1) x (2) (3) (4) 6a 2a 11 (5) 12 9 8 7 6 (6) (7) 13 7 6 10 8 9 10 (8) 14 15 11 12 13 14 15 8a Figure E7. .4 depicts two instances of a pull test. EXERCISE 7... Finally (e) and (f) are half-planes under concentrated loads. initiated in Example 7.10 Having identified those symmetry/antisymmetry lines. 2 .. . (d) a stretched rectangular plate with a central circular hole. and sum of vertical (y) forces on nodes 5 through 9 is −180 × 62.4..6 [A:10] Figure E7. and write a computer program to compute node forces. Assume face AB is vertical.5 [N/C:25] Complete the computation of own weight nodal forces of the coarse mesh of the Norfork dam proper.5. (b) shows tributary area for node 7. If the test is to be simulated by a finite element model. They are: (a) a circular disk under two diametrically opposite point forces (the famous “Brazilian test” for concrete). EXERCISE 7.7 [D:20] Identify the symmetry and antisymmetry lines in the two-dimensional problems illustrated in Figure E7. 7–17 .8.. While hungrily looking for a smaller one your thoughts wonder to FEM and how the worm extraction process might be modeled so you can pull it out more efficiently. not on the printed figures.Chapter 7: FEM MODELING: MESH. (b) On the above model. Then you wake up to face this homework question. how would you represent boundary conditions. LOADS AND BCS P P (a) (b) P P P P .6.8 [D:20] You (a finite element guru) pass away and come back to the next life as an intelligent but hungry bird.. .. P (c) (d) 45 fixed (e) (uniform) o q q center hole 45o P P (f) P P infinite half plane Figure E7.5. applied forces and friction forces? (c) Next you want a more refined anaysis of the worm that distinguishes skin and insides. Sketch how a good “worm-element mesh” should look like to capture the axial force well. After a long struggle.7. then decreases rapidly because of soil friction (which varies roughly as plotted in the figure above) and drops to nearly zero over D E. which kind of displacement BCs you would specify on the symmetry or antisymmetry lines. point out what need to be added to the model of (c) to include the soil as an elastic medium. 7–18 . Try your hand at the following “worm modeling” points. the worm wins. you notice a succulent big worm taking a peek at the weather. The “worm axial force” is of course constant from the beak B to ground level G. EXERCISE 7. Note: Do all sketches on your paper. Looking around. What type of finite element model would be appropriate? (d) (Advanced) Finally. (a) The worm is simply modeled as a string of one-dimensional (bar) elements. see Figure E7. however. Problems for Exercise 7. rollers or fixed supports. You grab one end and pull for dinner. Draw a picture for n = 5. y). respectively. State the kinematic properties of the intersection line. Can this situation be treated by symmetry and/or antisymmetry lines? EXERCISE 7. y) = u x (x. EXERCISE 7. .11 [A/D:25. y) = u x (x. The former are also called mirror planes. unless the cross point is fixed.6. . The analogs of symmetry and antisymmetry lines are symmetry and antisymmetry planes. Can the angle between the planes be arbitrary? (d) Can two antisymmetry planes intersect? (e) Three symmetry planes intersect. . in which u x (x + a. EXERCISE 7. Briefly explain your decisions. unless that point is fixed. (c) A symmetry line and an antisymmetry line must cross at right angles.14 [A:20] Prove that EbE and energy consistent lumping agree if the element shape functions are piecewise linear. . Dont write equations.13 [A:25] Extend the previous exercise to antiperiodicity. repeat upon moving over a distance a > 0: u x (x + a. in particular displace- ments. State the kinematic properties of the intersection line.. say for a car wheel. just draw vectors at alleged intersections.Exercises B ... . (a) State the kinematic properties of symmetry and antisymmetric planes. (b) Two antisymmetry lines in 2D cannot cross at a finite point. unless that point is fixed. y) and u y (x + a..15 [A:40] If the world were spatially n-dimensional (meaning it has elliptic metric). The hungry bird. EXERCISE 7. EXERCISE 7. and how they can be identified. y) and u y (x + a. 5 each] A body is in 3D space. (c) A symmetry plane and an antisymmetry plane planes intersect.9 [D:15. EXERCISE 7. y) = −u y (x.. y).10 [A/D:15] A 2D body has n > 1 symmetry lines passing through a point C and spanning an angle π/n from each other. 5 each] Prove from kinematics: (a) Two symmetry lines in 2D cannot cross at a finite point. Explain why point C is fixed. G D friction force on worm surface E Figure E7. y) = u y (x.b. (b) Two symmetry planes intersect. .12 [A:25] A 2D problem is called periodic in the x direction if all fields..c) are very similar. EXERCISE 7. Note: proofs of (a. .. This is called sectorial symmetry if n ≥ 3. State the kinematic properties of the intersection point. . how many independent rigid body modes would a body have? (Prove by induction) 7–19 . 8 MultiFreedom Constraints I 8–1 . . . .1. . . .2. . . . . . . . . 8–3 8–3 8–4 8–5 8–6 8–7 8–7 8–8 8–9 8–10 8–10 8–11 8–13 8–14 8–14 8–15 .Chapter 8: MULTIFREEDOM CONSTRAINTS I TABLE OF CONTENTS Page §8. .4. . .1. . .1. *Retaining the Original Freedoms . .5. . . . . . . . . 8–2 . The Example Structure The Master-Slave Method §8. . . . §8. . . §8.2. . . .3. .4. . §8. . . . . . . . . . §8.1. . . . Methods for Imposing Multifreedom Constraints §8. . .3. . . . . . . . . . . . . . . . . . Model Reduction by Kinematic Constraints Assessment of the Master-Slave Method Notes and Bibliography . . . . .5. . . . . . . . . . Nonhomogeneous MFCs . . *The General Case . . .3. References . . Classification of Constraint Conditions §8. . . . . . . .3. . . . . . . . *MFC Matrix Forms . . . .1. §8. . . . . . . . . . .3. . §8. . Multiple Homogeneous MFCs . . . .3. MultiFreedom Constraints . .2.3. §8. . . . . . . . . . . . §8. A One-Constraint Example . . . . . Exercises . §8. §8. . §8. .1. . . §8.3. . . . . . . . . . . . . or multifreedom constraints for short. 8–3 . except in problems that involve contact conditions. Classification of Constraint Conditions In previous Chapters we have considered structural support conditions that are mathematically expressable as constraints on individual degrees of freedom: nodal displacement component = prescribed value. in which all displacement components are in the left-hand side. such as u y5 − 2u x2 ≥ 0. Furthermore more attention is devoted to the homogeneous case. An MFC of this form is called multipoint or multinode if it involves displacement components at different nodes.2) These are two single-freedom constraints. The most general constraint class is that of inequality constraints. the last name being acronymed to MFC. They are of paramount importance.1. For example: u x4 = 0. and nonlinear otherwise.1) These are called single-freedom constraints. The constraint is called linear if all displacement components appear linearly on the left-hand-side. MultiFreedom Constraints The next step up in complexity involves multifreedom equality constraints. (8. u y9 = 0.3) where function F vanishes if all its nodal displacement arguments do. which include modeling of symmetry and antisymmetry. Remark 8. upon transfering all terms that depend on displacement components to the left-hand side. The first one is homogeneous while the second one is non-homogeneous.1 CLASSIFICATION OF CONSTRAINT CONDITIONS §8. Chapter 3 explains how to incorporate constraints of this form into the master stiffness equations. It is called non-homogeneous otherwise. Equation (8. using hand. In this and next Chapter only linear constraints will be studied.1. §8. is called the canonical form of the constraint. The displacement boundary conditions studied in Chapter 7.5.3) —is zero.3).6. The constraint is called homogeneous if. in other fields such as optimization and control. (8. the right-hand side — the “prescribed value” in (8.§8. however. These constraints are relatively infrequent in linear structural analysis. These attributes are defined below. (8. lead to constraints of this form.1. These are functional equations that connect two or more displacement components: F(nodal displacement components) = prescribed value. because it arises more frequently in practice.or computer-oriented techniques.1. 2. which is a topic beyond the scope of this book. It is linear and non-homogeneous. It is not a multipoint constraint because it involves the displacement components of one node: 2.1. Example 8. which returns u. Also called the penalty function method. §8. nonlinear and homogeneous.5) is also called constraint application or constraint imposition. K (8. (x5 + u x5 − x3 − u x3 )2 + (y5 + u y5 − y3 − u y3 )2 = 0. The sequence of operations sketched therein applies to all methods outlined below.Chapter 8: MULTIFREEDOM CONSTRAINTS I Unmodified master stiffness equations K u = f before applying MFCs Apply MFCs by master-slave penalty functions Lagrange multipliers ^ ^ ^ Modified stiffness equations K u =f ^ Equation solver returns u Recover u if necessary Figure 8. Penalty Augmentation.5) The modification process (8.2. This kind of constraint appears in geometrically nonlinear analysis of structures.1.4) The first one is linear and homogeneous. The ˆ modified system is that submitted to the equation solver. Each MFC is viewed as the presence of a fictitious elastic structural element called penalty element that enforces it approximately. This element is parametrized by a numerical weight. Methods for Imposing Multifreedom Constraints Accounting for multifreedom constraints is done — at least conceptually — by changing the assembled master stiffness equations to produce a modified system of equations: Ku = f MFC ⇒ ˆ uˆ = ˆf. The degrees of freedom involved in each MFC are separated into master and slave freedoms. y} plane remains constant.1.1. Master-Slave Elimination. 4 and 6. The exact constraint 8–4 . Geometrically it expresses that the distance between nodes 3 and 5 in two-dimensional motions on the {x. The second one is multipoint because it involves three nodes: 2. The procedure is flowcharted in Figure 8. u x2 − 2u x4 + u x6 = 14 . The slave freedoms are then explicitly eliminated. The modified equations do not contain the slave freedoms. Three methods for treating MFCs are discussed in this and the next Chapter: 1. The last one is multipoint. Schematics of MFC application. (8. Here are three instances of MFCs: u x2 = 12 u y2 . namely those listed above. programming implementation complexity. For example.1 CLASSIFICATION OF CONSTRAINT CONDITIONS is recovered if the weight goes to infinity. For most situations. .6) is part of a two-dimensional finite element model with 12 freedoms: 8–5 . computational effort. Most implementations do the MFCs first. a¯ i is a row vector. The hand-oriented reduction process discussed in Chapters 3 and 4 is in fact a special case of the master-slave elimination method in which “there is no master. The modification process is not unique because there are alternative constraint imposition methods. The modification process then involves two stages: apply multifreedom constraints and apply single freedom constraints. in which index i (i = 1. the generality afforded by the penalty function and Lagrange multiplier methods are not warranted. (8. 2.1.2).2. however. Lagrange Multiplier Adjunction.7) In direct matrix notation: a¯ i u¯ i = gi .) identifies the constraint. 2. For each MFC an additional unknown is adjoined to the master stiffness equations. In that case the framework “first assemble. either after the assembly is completed or during the assembly process. These methods offer tradeoffs in generality. and gi is the right hand side scalar (0.7) from the expanded form (8. 3. An individual constraint such as the second one in (8. two important practical differences: 1. The MFCs are imposed by augmenting the finite element model with the penalty elements. Conceptually. The three methods are also applicable. Then the MFCs are imposed by appropriate modification of those equations.25. For method description and general proofs it is often convenient to expand matrix forms so that they embody all degrees of freedom. u¯ i collects the set of degrees of freedom that participate in the constraint. There are. . The general technique is subsequently presented in matrix form for completeness but is considered an advanced topic. as can be expected. The reason is practical: single-freedom constraints are often automatically taken care of by the equation solver itself. however. In the implementation of some of these methods — notably penalty augmentation — constraint imposition and assembly are carried out simultaneously. numerical accuracy and stability.25 in the foregoinf example).4) may be written  [1 −2 1] u x2 u x4 u x6  = 0.” is not strictly respected in the actual implementation. Remark 8. imposing MFCs is not different from the procedure discussed in Chapter 3 for singlefreedom constraints.9) discussed below.3. Often both multifreedom and single-freedom constraints are prescribed. The bars over a and u distinguishes (8. to the simpler case of a single-freedom constraint such as (8. §8. Physically this set of unknowns represent constraint forces that would enforce the constraints exactly should they be applied to the unconstrained system.3. then modify.” Remark 8. The master stiffness equations are assembled ignoring all constraints. if (8. *MFC Matrix Forms Matrix forms of linear MFCs are often convenient for compact notation. The order in which these are carried out is implementation dependent.§8. For each method the exposition tries to give first the basic flavor by working out the same example for each method.6) (no sum on i) (8. . (8. f4 (3) 3 u5 . A one-dimensional problem discretized with six bar finite elements. then K 11 = K 77 = 100. If there are 12 degrees of freedom in u and 5 multifreedom constraints then A will be 5 × 12.  (8. Finally. K 22 = . . . . if E e Ae /L e = 100 for each element e = 1.11) depend on the bar rigidity properties.8) .9) is used. the master stiffness equations for this problem are assumed to be  K 11 K  12   0   0   0  0 0 K 12 K 22 K 23 0 0 0 0 0 K 23 K 33 K 34 0 0 0 0 0 K 34 K 44 K 45 0 0 0 0 0 K 45 K 55 K 56 0 0 0 0 0 K 56 K 66 K 67    0 u1 0   u2      0   u3      0   u4  =     0   u5      K 67 u6 K 77 u7  f1 f2   f3   f4  . K 12 = K 23 = . for the purposes of the following treatment the 8–6 . Subscript x is omitted from the u’s and f ’s to reduce clutter.10) in which rectangular matrix A is formed by stacking the ai ’s as rows and column vector g is formed by stacking the gi s as entries. . . .25. = K 66 = 200. (8. f3 u4 . the left-hand side row vector may be expanded with nine zeros as follows u  x1  u y1    [ 0 0 1 0 0 0 −2 0 0 0 1 0 ]  u x2  = 0.11) or Ku = f. .  .  f5   f6 f7 (8.12) The nonzero stiffness coefficients K i j in (8. . f 6 (5) 4 5 u7 . f7 (6) 6 x 7 Figure 8. . The seven nodes may move only along the x direction.. Before imposing various multifreedom constraints discussed below. = K 67 = −100. This structure consists of six bar elements connected by seven nodes that can only displace in the x direction.2. .Chapter 8: MULTIFREEDOM CONSTRAINTS I u 1 . .2 will be used throughout Chapters 8 and 9 to illustrate the three MFC application methods. u y6 in which case the matrix notation ai u = gi (8. f2 (1) (2) 1 2 u 3 . §8. However. 6. u x1 . The Example Structure The one-dimensional finite element discretization shown in Figure 8. u y6 . f1 u 2 . all multifreedom constraints expressed as (8.2.9) may be collected into a single matrix relation: A u = g. u y1 . f5 (4) u6 . For example. 14) Constraint conditions of this type are sometimes called rigid links because they can be mechanically interpreted as forcing node points 2 and 6 to move together as if they were tied by a rigid member. (8. 8–7 . §8. The other two methods: penalty augmentation and Lagrange multiplier adjunction.14) on the master equations (8. §8. slave freedoms. are discussed in the following Chapter. In compact form: u = Tuˆ 1 . The Master-Slave Method To apply this method by hand. In two and three dimensions rigid link constraints are more complicated. To impose (8. For each constraint a slave degree of freedom is chosen.13) u2 = u6. . Relate the original unknowns u 1 .14) pick u 6 as slave and u 2 as master.3 THE MASTER-SLAVE METHOD coefficients may be kept arbitrary. This procedure yields a set of modified stiffness equations that ˆ Because the modified system does not contain the are expressed in terms of the new freedom set u. This equation is used to apply a congruent transformation to the master stiffness equations. In this Chapter the master-slave method is treated. (8.15)  u4  =  0 0 0 1 0 0   3  . The freedoms remaining in that constraint are labeled master. A matrix transformation equation that relates u to uˆ is generated.3. The component index x in the nodal displacements u and nodal forces f has been omitted for brevity. the MFCs are taken one at a time. A new set of degrees of freedom uˆ is established by removing all slave freedoms from u. u 7 to the new set in which u 6 is missing:     u1 1 0 0 0 0 0   u1  u2   0 1 0 0 0 0  u       u3   0 0 1 0 0 0   2     u  (8.11) by the methods mentioned above.1 We now study the imposition of constraint (8. Passing all node displacements to the right hand side gives the canonical form: u 2 − u 6 = 0. This new vector contains master freedoms as well as those that do not appear in the MFCs. .      u4  u 0 0 0 0 1 0  5        u5 u6 0 1 0 0 0 0 u7 u7 0 0 0 0 0 1 This is the required transformation relation. these have been effectively eliminated. Now let us specify a multifreedom constraint that states that nodes 2 and 6 must move by the same amount: (8. . A One-Constraint Example The mechanics of the process is best seen by going through an example.§8.16) This physical interpretation is exploited in the penalty method described in the next Chapter.1.3. u 4 and u 3 from the first. For a simple freedom constraint such as u 4 = 0 the only possible choice of slave is of course u 4 and there is no master. second and third constraint. Direct establishment of the transformation equation.19) are algebraically equivalent. u 6 is recovered from the constraint (8. u 4 . it does not matter which degree of freedom is chosen as master or unknown. K in which ˆ = TT K T. The congruent transformation is then nothing more than the elimination of u 4 by striking out rows and columns from the master stiffness equations.20) Picking as slave freedoms u 6 .12) and premultiplying by TT yields the modified system ˆ uˆ = ˆf. K ˆf = TT f. is more complicated if slave freedoms in one constraint appear as masters in another.18) and (8.17) can be remembered by a simple mnemonic rule: premultiply both sides of T uˆ = u by TT K. (8.18) is a new linear system containing 6 equations in the remaining 6 unknowns: u 1 . 0   u 5   f5      K 67 u6 f2 + f6 K 77 u7 f7 (8. u 3 . suppose that for the example system we have three homogeneous multifreedom constraints: u 2 − u 6 = 0. respectively.4.13). u 2 . u 3 = − 12 (u 4 + u 5 ) = 18 u 1 − 12 u 5 . (8.3. 8–8 (8.17) in fact holds for the general case of multiple homogeneous linear constraints.18) Equation (8.Chapter 8: MULTIFREEDOM CONSTRAINTS I Replacing (8.15) into (8. 2u 3 + u 4 + u 5 = 0.21) . Choosing u 2 as slave produces a system of equations in which now u 2 is missing: K 11  0  0   0  K 12 0 0 K 33 K 34 0 K 23 0 0 K 34 K 44 K 45 0 0 0 0 K 45 K 55 K 56 0 K 12 K 23 0 K 56 K 22 + K 66 K 67     0 u1 f1 0   u 3   f3      0    u 4  =  f4  . we can solve for them as u6 = u2.2. 0   u 4   f4  0 K 34 K 44 K 45  0      0 K 45 K 55 0 u5 f5 0 K 56 0 0 0 K 77 u7 f7 0 K 67 (8. Remark 8. Remark 8.17) Carrying out the indicated matrix multiplications yields      K 11 K 12 0 0 0 0 u1 f1 0 K 56 K 67   u 2   f 2 + f 6   K 12 K 22 + K 66 K 23      K 23 K 33 K 34 0 0   u 3   f3   0    =  .5. For a simple MFC such as u 2 = u 6 . u 4 = − 14 u 1 . To illustrate this point. Upon solving it. however. §8. u 1 + 4u 4 = 0.6. Remark 8. u 5 and u 7 . and replace K u by f on the right hand side. Multiple Homogeneous MFCs The matrix equation (8.19) Although (8. The form of modified system (8. the latter would be processed faster if a skyline solver (Part III of course) is used for the modified equations. u 4 .22) The modified system is now formed through the congruent transformation (8.4. u 4 and u 2 chosen as slaves and u 1 . The matrix form of the transformation (8.2 in (8.7. The three MFCs (8.    u4      u 0 0 0 0 0 1 0      5     u5    u6 −0.24) Nonzero RHS values such as 0.23) This may be compactly written As us + Am um = 0.17). In this case he transformation equation becomes non-homogeneous. and build the transformation       0 1 0 0 0 0 0   u1 u1  0   u2   0 1 0 0 0 0   u       u3   0 0 1 0 0 0   2   0     u3      (8.22). Remark 8.24) may be often interpreted physically as “gaps” (thus the use of the symbol g in the matrix form).20) with u 6 .21) is   1 u1 0  u2   1     u3       81  u4  =  − 4     u5   0    u6 0 u7 0  0 0   0  u1   u2  0   u5  . Solving for the slave freedoms gives us = −A−1 s A m um . for example the choice u 6 .26) 8–9 . u 2 and u 5 chosen as masters. but can lead to implementation and numerical difficulties when it is programmed as an automated procedure. (8. Chose u 6 again as slave: u 6 = u 2 − 0.4. §8. may be presented in the partitioned matrix form:  0 0 2 0 1 4 0 1 0  u3 u4 u6   = 0 −1 0 1 0 0 0 0 −1  u1 u2 u5  (8.§8.2.3 THE MASTER-SLAVE METHOD Observe that solving for u 3 from the third constraint brings u 4 to the right-hand side. This general matrix form is considered in §8. This rule is easy to enforce when slave freedoms are chosen by hand. u 4 would be inadmissible as long as the constraints are independent. But because u 4 is also a slave freedom (it was chosen as such for the second constraint) it is replaced in favor of u 1 using u 4 = − 14 u 1 . Expanding with zeros to fill out u and uˆ produces (8.25)  u4  =  0 0 0 1 0 0    +  0  .  0  u7  0 1 0 0 1 0 0 − 12 0 0 1 0 0 1 0 0 (8. Nonhomogeneous MFCs Extension to non-homogeneous constraints is immediate.2 (8. Note that the slave freedoms selected from each constraint must be distinct.3. Note that non-singularity of As is essential for this method to work. as further discussed later.3.2 0 1 0 0 0 0 u7 u7 0 0 0 0 0 0 1 In compact matrix notation.14) has a nonzero prescribed value: u 2 − u 6 = 0. For example suppose that (8. u = T uˆ + g. The degrees of freedoms in u are classified into three types: independent or unconstrained.32) It is seen that the misleading simplicity of the handworked examples is gone.24) this technique gives the system  K 11  K 12   0   0  0 0 K 12 K 22 + K 66 K 23 0 K 56 K 67 0 K 23 K 33 K 34 0 0 0 0 K 34 K 44 K 45 0 0 K 56 0 K 45 K 55 0     0 u1 f1 K 67   u 2   f 2 + f 6 − 0. (The unconstrained freedoms are those that do not appear in any MFC.30) and symmetrizing yields Kuu symm Kmm Kum + Kus T T T + T Kms + Kms T + TT Kss T uu um = fu − Kus g fm − Kms g (8.3. and pass the data to the RHS: ˆ uˆ = ˆf. def (8.2K 66      0   u3   f3    =  .26) by TT K. To get the modified system applying the shortcut rule of Remark 8. For the MFC Upon solving (8. §8. and partition the stiffness equations accordingly:  Kuu T Kum T Kus Kum Kmm T Kms Kus Kms Kss  uu um us   = fu fm fs  (8. If so we can solve for the slave freedoms: −1 us = −A−1 s Am um + As g A = T um + g.3.30) where As is assumed square and nonsingular. K ˆf = TT (f − K g).2K 56 K 77 u7 f 7 − 0.) Label these sets as uu .31) Inserting into the partitioned stiffness equations (8. 8–10 .27) for u.5. K in which ˆ = TT K T. masters and slaves.27) ˆ the complete displacement vector is recovered from (8. 0   u4   f4      0 u5 f 5 − 0.4.4. (8.Chapter 8: MULTIFREEDOM CONSTRAINTS I Here the constraint gap vector g is nonzero and T is the same as before. *The General Case For implementation in general-purpose programs the master-slave method can be described as follows. The disadvantage can be annoying when sparse matrix storage schemes are used for the stiffness matrix. and becomes intolerable if secondary storage is used for that purpose. replace Ku by f.2 for multiple non-homogeneous MFCs.28) See Exercise 8. um and us .26). respectively. premultiply both sides of (8.2K 67 (8. §8. *Retaining the Original Freedoms A potential disadvantage of the master-slave method in computer work is that it requires a rearrangement of the original stiffness equations because uˆ is a subset of u.29) The MFCs may be written in matrix form as A m u m + A s us = g A . (8. (8. f7 x 1 7 5 slave DOFs to be eliminated Master Master u 7. Let us display it for the example problem under (8.17) and (8. f1 u 7.4. f 6 (5) 5 u7 . use the square transformation    u1 1 u  2  0  u3   0     u4  =  0     u5   0    u6 0 u7 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0  0 0 0 0 0 0 0  0 u1 0   u2    0   u3    0  u4  . Instead of (8. §8.4 to handle single-freedom constraints. f1 u 2 . f4 (3) 3 u5 . Note several points in common with the computer-oriented placeholder technique described in §3. Model Reduction by Kinematic Constraints The congruent transformation equations (8. f3 u4 .§8.15). The solver will return u˜ 6 = 0. If the solver is not trained to skip zero rows and columns. 0   u 5   f5      u˜ 6 0 0 K 77 u7 f7 (8. f1 Reduced model x 1 7 Figure 8. f2 (1) (2) 1 2 MODEL REDUCTION BY KINEMATIC CONSTRAINTS u 3 . Through this procedure the number of DOF of a static or dynamic FEM model is reduced by a significant number. 0   u5    u˜ 6 0 u7 1 (8. f5 (4) 4 u6 . This is done by taking a lot of slaves and a few masters.2 to the end freedoms. f7 (6) 6 x 7 2 master DOFs to be retained u 1. An important one is model reduction by kinematic constraints.27) have additional applications beyond the master-slave method.14).33) in which u˜ 6 is a placeholder for the slave freedom u 6 .4 u 1 . Only the masters are left after the transformation. With a bit of trickery it is possible to maintain the original freedom ordering.34) which are submitted to the equation solver.3. and this placeholder value is replaced by u 2 . a one should be placed in the diagonal entry for the u˜ 6 (sixth) equation. The modified equations are  K 11 K  12  0   0   0  0 0 K 12 K 22 + K 66 K 23 0 K 56 0 K 67 0 K 23 K 33 K 34 0 0 0 0 0 K 34 K 44 K 45 0 0 0 0 0 K 45 K 55 0 0 0 K 56 0 0 0 0 0 0 0 0 0 0 0 0     0 u1 f1 K 67   u 2   f 2 + f 6      0    u 3   f3      0   u 4  =  f4  . The reduced model is commonly 8–11 . Model reduction of the example structure of Figure 8. f7 u 1. typically to 1% – 10% of the original number. 2}.K56.{5.K34.f2.K56.K12.K23.0." fhat(2)=".K45.0}.0}. Figure 8.0. f1.0.{4.K23.K. Print["Modified Force:"].Khat[[2. Print["Khat(1. f={f1."\nKhat(1. Example 8.1}.f6.0.2]] ].0}.{3.f6]. Assume that the only masters are the end motions u 1 and u 7 .0.0.2]].{2.0.K22. Print["T (transposed to save space)=".K66.Khat[[1.{K12.0. "\nKhat(2.K34.4.K55.K45.f5.f7}.K34. {0. Print["Modified Stiffness:"].K12.3}.Khat[[1.0.2. Print["K=". {0.0.0.2)=".f2.K22.f3.0.5}.{0.{0.K67}. Print["fhat(1)=".0.K45.0.K33.0. Khat=Simplify[Transpose[T].{1. and interpolate all freedoms linearly:    u1 1 5/6 u  2   u 3   4/6     u 4  =  3/6     u 5   2/6    u6 1/6 u7 0  0 1/6  2/6   .Transpose[T]//MatrixForm].0.fhat[[1]]. fhat=Simplify[Transpose[T].2.K67. as illustrated in Figure 8.fhat[[2]] ].K33.1]].0.0}.0.T].3.1)=".0}. used in subsequent calculations as component of a larger system.f].K44. Mathematica script for the model reduction example of Figure 8.K55. T={{6.K66.K44.f]. particularly during design or in parameter identification.{0.Chapter 8: MULTIFREEDOM CONSTRAINTS I (* Model Reduction Example *) ClearAll[K11.2.4}.f4.K//MatrixForm].K77}}.K23.2)=".0}.f5. Consider the bar assembly of Figure 8.6}}/6.0. Print["f=".0.f3. K={{K11.K56.f4. {0. (8. 4/6  7  5/6 1 8–12 or ˆ u = T u. u1 3/6   u .35) . §8.5 ASSESSMENT OF THE MASTER-SLAVE METHOD ˆ uˆ = TT KTuˆ = TT f = ˆf. or in detail The reduced-order-model (ROM) equations are K . ˆ K 11 Kˆ 17 . . This is the case in model reduction. u 3 + 6u 6 = u 7 . Another. The complexity is due to three factors: 1.5. 36 1 (6K 12 +5K 22 +14K 23 +8K 33 +18K 34 +9K 44 +18K 45 +8K 55 +14K 56 +5K 66 +6K 67 ).31). The concept is also easy to explain and learn. For example. On the other hand. Remark 8. drawback of this method is that it requires decisions as to which degrees of freedom are to be treated as slaves.32). in more general cases of coupled constraint equations it can lead to incorrect decisions. the logic for allocating memory and storing these entries can be difficult and expensive. Kˆ 77 f7 u7 (8. The equations may have to be rearranged because of the disappearance of the slave freedoms. however. for such problems it is exact whereas model reduction by kinematic constraints generally introduces approximations. 6 (8. Model reduction can also be done by the static condensation method explained in Chapter 10. A Mathematica script to do the reduction is shown in Figure 8. An auxiliary linear system.3. If a sparse matrix storage scheme is used for K. The level of complexity depends on the generality allowed as well as on programming decisions. Although for disjointed constraints the process can be programmmed in reliable form. 36 1 (6 f 1 +5 f 2 +4 f 3 +3 f 4 +2 f 5 + f 6 ). 3. fˆ7 = 16 ( f 2 +2 f 3 +3 f 4 +4 f 5 +5 f 6 +6 f 7 ). 8–13 (8. 36 1 (K 22 +4K 23 +4K 33 +12K 34 +9K 44 +24K 45 +16K 55 +40K 56 +25K 66 +60K 67 +36K 77 ). namely (8. since each slave freedom appears in one and only one MFC. has to be assembled and solved to produce the transformation matrix T and vector g. as the freedoms to be retained in the model for further use.2 On the other hand. condensation is restricted to static analysis. Assessment of the Master-Slave Method What are the good and bad points of this constraint application method? It enjoys the advantage of being exact (except for inevitable solution errors) and of reducing the number of unknowns. This can lead to implementation and numerical stability problems.8. As its name indicates. through the placeholder trick outlined in §8.5. §8. ˆ Kˆ 17 f u1 = ˆ1 .36) in which Kˆ 11 = Kˆ 17 = Kˆ 77 = fˆ1 = 1 (36K 11 +60K 12 +25K 22 +40K 23 +16K 33 +24K 34 +9K 44 +12K 45 +4K 55 +4K 56 +K 66 ). The key feature is that the masters are picked a priori. This drawback can be alleviated. 2. If K is stored as full matrix and slave freedom coupling in the MFCs is disallowed the logic is simple. the complexity can become overwhelming. more subtle. if arbitrary couplings are permitted and K is placed in secondary (disk) storage according to some sparse scheme.29) through (8.4.38) .37) This reduces the order of the FEM model from 7 to 2. The main implementation drawback is the complexity of the general case as can be seen by studying (8. The transformation process may generate many additional matrix terms. suppose that in the example problem you have the following two MFCs: 1 u 6 2 2 + 12 u 4 = u 6 . 212]. Although this defect can be easily fixed by the program logic in this case. however. It is first summarily described in the DSM-overview by Turner. p. The resulting modified system would in fact be inconsistent.39) The last constraint is an exact linear combination of the first two. The implementation unfortunately relied on user inputs to identify slave DOFs. Martin and Weikel [761. The method is not generally extendible to nonlinear constraints without case by case programming. however. however. not just one.Chapter 8: MULTIFREEDOM CONSTRAINTS I For numerical stability reasons it is usually better to pick as slaves the freedoms with larger coefficients. If this is done. one can imagine the complexity burden if faced with hundreds or thousands of MFCs.3 The complexity of slave selection is in fact equivalent to that of automatically selecting kinematic redundancies in the Force Method of structural analysis. 3 The safest technique to identify dependencies is to do a singular-value decomposition (SVD) of As .7. It is worth learning. Through this serious blunder the method gained a reputation for unreliability that persists to the present day. u 2 + u 3 − u 7 = 0. as in (8. from the one described here because the relation of FEM to energy methods was not clear at the time. the modified system is incorrect because we eliminate three equations when in fact there are only two independent constraints. can be recognized by a rank analysis of the As matrix defined in (8. The important application of master-slave to model reduction. The master-slave method became popular through its adoption by the general-purpose NASTRAN code developed in the late 1960s [20] and early assessments of its potential [745].5. If the program blindly choses u 2 . In floating-point arithmetic. is rarely mentioned in FEM textbooks.30). such detection may fail because that kind of computation is inexact by nature. As a general purpose technique for finite element analysis it suffers from complexity and lack of robustness. In conclusion. The implementation differs. 8–14 . The master-slave method was incorporated to treat MFCs as part of the DSM developed at Boeing during the 1950s. which by itself justifies teaching the method. This can be. This leads to a contradiction because having two constraints we must eliminate two slave degrees of freedom. (8. Notes and Bibliography Multifreedom constraints are treated in several of the FEM books recommended in §1. the master-slave method is useful when a few simple linear constraints are imposed by hand. the program would select u 6 as slave freedoms from both constraints. 1 u 5 3 + 6u 6 = u 7 . because of the great importance of congruent transformations in model reduction for static and dynamic problems. however.39). It has led implementors of programs that use this method to require masters and slaves be prescribed in the input data. For example: 1 u 6 2 = u6. Serious numerical problems can arise if the MFCs are not independent. prohibitively expensive if one is dealing with hundreds or thousands of constraints. thus transfering the burden to users. notably Zienkiewicz and Taylor [830]. References Referenced items have been moved to Appendix R. u 3 and u 7 as slaves. Exact linear dependence. fhat=Simplify[Transpose[T]. f 2 = 2. f 5 = 5. and to one MFC: u 2 − u 6 = 1/5.3.0. For [i=2. .0. . fu=K. The structure is subjected to one support condition: u 1 = 0 (a fixed left end).1]]=0.0.5 0.g)].K//MatrixForm]. g={0.umod]. f 4 = 4. Consequently K 11 = K 77 = 100. K 22 = .1.Kmod//MatrixForm].7}.0. the Mathematica script of Figure E8. (* Exercise 8.K[[i.27) apply the left-end support u 1 = 0 using the placeholder method of §3.u with reactions=". . = K 67 = −100. Return[{Kmod.u.K[[i.Exercises Homework Exercises for Chapter 8 MultiFreedom Constraints I EXERCISE 8.250 4 5 0.1]]=K[[7. Print["Recovered forces K.Master-Slave Method *) (* MFC: u2-u6 = 1/5 .i++.1}}. .1) Use Mathematica or Matlab to do the algebra is recommended.i++. K[[1. Solve this problem using the master-slave method to process the MFC.T//MatrixForm].umod+g.{7}]}.1.f]. {Kmod.fmod}]]. . 8–15 . K=MasterStiffnessOfSixElementBar[100].4.fhat_]:=Module[ {Kmod=Khat.fmod].0. .0}.2.0.0.{0.5.{0.fmod=fhat}.i<=6.0}.2]]=Kmod[[2.K.0}.0.275 3 0.{7}. Upon forming the modified system (8.0}.0}. Print["Modified RHS upon fixing node 1:". umod=LinearSolve[Kmod.0.0.0. Print["Numerical u=". Print["Numerical K.0.070 0.1 [C+N:20] The example structure of Figure 8. . Solve the equations and verify that the displacement solution and the recovered node forces including reactions are u = [ 0 0.i+1]]=K[[i+1.0. K 12 = K 23 = .1.1.4.1. Print["Stiffness K=". Return[K]].5 0.1 has E e Ae /L e = 100 for each element e = 1. T={{1. fmod[[1]]=0. u=T.0.1]]=1.0. FixLeftEndOfSixElementBar[Khat_.N[u]].fmod}=FixLeftEndOfSixElementBar[Khat.i]]=2*kbar]. Print["Constraint gap vector g=".T]. f 3 = 3.0.0. Khat=Simplify[Transpose[T].i<=6. Print["Complete solution u=". {0.0.u=". f 6 = 6 and f 7 = 7.i]]=-kbar].u]. . Script for solving Exercise 8.7]]=kbar.270 Ku = [ −27 26. taking u 6 as slave. Print["Transformation matrix T=".0.0.g]. {0.0.6.1. For [i=1.-1/5.{0.fhat]. Kmod[[1.0}.(f-K.0. Print["Applied forces=". Print["Computed umod (lacks slave u6)=".0}. For example. 6.1 .185 −18.0.0.1.{0.140 ]T 7 ]T (E8.fu].0. f={1. Figure E8.1 solves this Exercise.0.N[fu]]. = K 66 = 200. (* fix left end *) Print["Modified Stiffness upon fixing node 1:". The applied node forces are taken to be f 1 = 1. which are easy to remember.slave: u6 *) MasterStiffnessOfSixElementBar[kbar_]:=Module[ {K=Table[0.0.fmod]. Kmod[[1. 3072 16.u5.{i. 7.u4.u5->0.u4->0. 8–16 .u6}]].Chapter 8: MULTIFREEDOM CONSTRAINTS I EXERCISE 8. Otherwise form and enter T and g by hand.4 [A:25] In the general case discussed in §8. (Requires background in numerical analysis and advanced programming experience in matrix algebra).1176 −0.{j. T=Table[Coefficient[ums[[i]].075033 Ku = [ −4.u6. explain what it does and why it works.{u4. 0.268 −0. Print["Gap vector g=".4}]. (E8.g]. Figure E8.u2->0. u 5 and u 6 as slaves.u7->0}.2) Hint.4.sol[[1]].6 [A/C:35] Is it possible to establish a slave selection strategy that makes As diagonal or triangular? (This requires knowledge of matrix techniques such as pivoting. g=ums/.u5. Use “placeholders” for the slave freedoms. The main changes are in the formation of T and g.T//MatrixForm].30) diagonal and thus trivially invertible? EXERCISE 8. that is.2. Chose u 4 .4). 2u 3 − u 4 + u 5 = 0. (Hint: use ideas of §3.29582 −37. ]T . Much of the script shown for Exercise 8.086928 ]T .{u1->0.14575 16.15693 −8. ums={u1.3) EXERCISE 8.085 −0. under which condition is the matrix As of (8. If you are a Mathematica wizard (or willing to be one) those can be automatically formed by the statements listed in Figure E8. Script for partially solving Exercise 8.u3->0.2 [C+N:25] As in the previous Exercise but applying the following three MFCs.u2. u3+2*u4==-2/3. u 3 + 2u 4 = −2/3.124 −0. Print["Transformation matrix T=".043072 −0.u2.1.u3. two of which are non-homogeneous: u 2 − u 6 = 1/5. EXERCISE 8.1 can be reused.5 [A:25] Work out the general technique by which the unknowns need not be rearranged. If you do this.1.u7}/. sol=Simplify[Solve[{u2-u6==1/5. The numerical results (shown to 5 places) should be u = [ 0.7 [A/C:40] Work out a strategy that produces a well conditioned As by selecting new slaves as linear combinations of finite element freedoms if necessary.2. (E8.um[[j]]].2*u3-u4+u5==0}.u7}.2.u6->0.3 [A:25] Can the MFCs be pre-processed to make sure that no slave freedom in a MFC appears as master in another? EXERCISE 8.7}.118 10. u and uˆ are the same.) EXERCISE 8.4. um={u1.u3. 9 MultiFreedom Constraints II 9–1 . . . . . . . . . . . . . .4 §9. . . .4 Assessment of the Lagrange Multiplier Method . . .2. . . . . §9.1 Physical Interpretation of Penalty Method . . . . §9. . . . . . . . . . . . .4 Penalty Elements for General MFCs .2. . . §9. . . . .2 Choosing the Penalty Weight . Exercises . . . . . .3.2. §9. . *The Augmented Lagrangian Method . . . . . . . . . . . . . . 9–2 9–3 9–3 9–3 9–3 9–4 9–5 9–6 9–7 9–8 9–8 9–9 9–10 9–10 9–10 9–11 9–11 9–12 9–13 . . §9. . .3 §9. Introduction . . . . . . . . .5 *The Theory Behind the Penalty Method . . . . . . . . . . . . . . . §9. . . . . . . . . .5 §9. . . References . . §9. . . . . . . §9. . . . . . . . . . .3. . . . . . . .2. . . . Notes and Bibliography . . . . . . . . . . . . . . . . . . .3 *The Theory Behind Lagrange Multipliers . . . . . . . . . . . . . . . . . . . .1 §9.3 The Square Root Rule . .2. . §9. . . . . . . . . . . . . .2. . . . . §9. §9. . . . . Summary . . . . . . . . .2 Lagrange Multipliers for General MFCs . . . . . . . . . . . . . .3. .6 Assessment of the Penalty Method . . . .3. . . . . . . . . Lagrange Multiplier Adjunction . . .2 §9. . .Chapter 9: MULTIFREEDOM CONSTRAINTS II TABLE OF CONTENTS Page §9. .1 Physical Interpretation . §9. . The Penalty Method . . The penalty element stiffness equations. 9–3 . f3 u4 . Note that uˆ ≡ u. The example structure of Chapter 8. f4 (3) 3 u5 . leaving the mathematical formulation to a subsequent section. We now pass to the study of two other methods: penalty augmentation and Lagrange multiplier adjunction. f2 (1) (2) 2 u 3 .2) 0 0   u 4  =  f4  . and only K has changed. which shown in detail are stiffness equations: K      K 12 0 0 0 0 0 u1 f1 K 11 0 0 −w 0   u 2   f2   K 12 K 22 + w K 23      K 33 K 34 0 0 0   u 3   f3  K 23  0      (9.1. §9. f1 u 2 . 1 The general method to construct these equations is described in §9. K(7) u(7) = f(7) . but exhibits serious shortcomings for treating arbitrary constraints (although the method has important applications to model reduction).1 for convenience. as shown in Figure 9.2 THE PENALTY METHOD §9. Physical Interpretation of Penalty Method The penalty method will be first presented using a physical argument. f7 (6) 6 x 7 Figure 9. 0 K 34 K 44 K 45  0      K K 0 u f 0 0 0 K  5  5  45 55 56      u6 f6 0 −w 0 0 K 56 K 66 + w K 67 0 0 0 0 0 K 67 K 77 u7 f7 This system can now be submitted to the equation solver. Consider again the example structure of Chapter 8. Introduction In this Chapter we continue the discussion of methods to treat multifreedom constraints (MFCs).§9. albeit fictitious.1. which is reproduced in Figure 9. To impose u 2 = u 6 imagine that nodes 2 and 6 are connected with a “fat” bar of axial stiffness w. repeated for convenience. the two local element freedoms map into global freedoms 2 and 6. The Penalty Method 1 u 1 . can be treated exactly like another bar element insofar as continuing the assembly of the master stiffness equations. Both techniques are better suited to general implementations of the Finite Element Method.2. This bar is called a penalty element and w is its penalty weight.2.2.4. whether linear or nonlinear. respectively.1. f 6 (5) 5 u7 .1) −1 1 u6 0 Because there is one freedom per node. f5 (4) 4 u6 . are1      1 −1 u2 0 w = (9. Using the assembly rules of Chapter 3 we obtain the following modified master uˆ = ˆf. The master-slave method described previously was easy to explain.1. §9. labeled with element number 7. Such an element. 2 Such definitions are more rigurously done by working with binary numbers and base-2 arithmetic but for the present discussion the use of decimal powers is sufficient. 6 are unity.to enforce the MFC u 2 = u 6 .2. f3 u4 . identified as element 7. For example. f5 (4) 4 u6 . 9–4 . In fact.2) becomes   1 −1 0 0 0 0 0 0 −w 0   −1 2 + w −1 0   −1 2 −1 0 0 0   0  = K (9. suppose for definiteness that the rigidities E e Ae /L e of the actual bars e = 1. . .3) 0 −1 2 −1 0 0   0   0 0 −1 2 −1 0   0   0 −w 0 0 −1 2 + w −1 0 0 0 0 0 −1 1 As w → ∞ rows 2 and 6. Numerical analysts characterize such precision by saying that f = O(10−16 ). 106 to 107 can be expected to cut the constraint violation by roughly 10 if the physical stiffnesses are small compared to w. say. where eg = 0. However. tend to be more of a random nature than the constraint violation error. tend to become linearly dependent.2 The modified stiffness matrix of (9.Chapter 9: MULTIFREEDOM CONSTRAINTS II 1 u 1 . it can be shown that |eg | becomes proportional to 1/w as w gets to be sufficiently large (see Exercises).2) is solved numerically? If a finite weight w is chosen the constraint u 2 = u 6 is approximately satisfied in the sense that one gets u 2 − u 6 = eg . that w >> 1. Adjunction of a fictitious penalty bar of axial stiffness w. More precisely.2. f 6 (5) 5 u7 . in  approaches fact the negative of each other.2) becomes more and more ill-conditioned with respect to inversion. The “gap error” eg is called the constraint violation. §9. f4 (3) 3 u5 .2. as well as columns 2 and 6. . f7 (6) 6 x 7 (7) penalty element of axial rigidity w Figure 9. As the penalty weight w tends to ∞ the modified stiffness matrix in (9. If w << 1016 but w >> 1. the smaller the violation. Therefore K singularity as w → ∞. To make this point clear. this is misleading. f1 u 2 . Therefore it seems as if the proper strategy should be: try to make w as large as possible while respecting computer overflow limits. But linear dependency means singularity. Choosing the Penalty Weight What happens when (9. f2 (1) (2) 2 u 3 . if w exceeds 1/ f = 1016 the computer will not be able to  from an exactly singular matrix. raising w from. These errors. where | f | is the smallest power of 10 that perceptibly adds to 1 in floating-point arithmetic. however. and that the computer solving the stiffness equations has a floating-point precision of 16 decimal places. the effect will be seen in distinguish K increasing solution errors affecting the computed displacements uˆ returned by the equation solver. The magnitude |eg | of this violation depends on the weight: the larger w. In practice the heuristic square root rule is often followed.4 For the above example in which k ≈ 0 and p ≈ 16. the procedure used for constructing a penalty element is stated here as a recipe. which in turn is a topic in variational calculus.4) Rewrite this equation in matrix form [3 1 u3 −4 ] u 5 u6 . before adding penalty elements. §9. the optimal w given by this rule would be w ≈ 108 .. Penalty Elements for General MFCs For the constraint u 2 = u 6 the physical interpretation of the penalty element is clear. as well as the precision selected by the program. quad) floatingpoint precision.4. Consider the homogeneous constraint 3u 3 + u 5 − 4u 6 = 0.2 THE PENALTY METHOD §9. Nodal points 2 and 6 must move in lockstep long x. Suppose that the largest stiffness coefficient. Note that there is no simple way to do better than this accuracy aside from using extended (e. This w would yield a constraint violation and a solution error of order 10−8 . This is not easy to do when using standard low-level programming languages. (9.§9. is of the order of 10k and that the working machine precision is p digits. But how about 3u 3 + u 5 − 4u 6 = 1? Or just u 2 = −u 6 ? The treatment of more general constraints is linked to the theory of Courant penalty functions. It is seen that picking the weight by this rule requires knowledge of both stiffness magnitudes and floating-point hardware properties of the computer used. The Square Root Rule Plainly we have two effects at odds with each other. Because the necessary theory given in §9.5 is viewed as an advanced topic.1. Making w larger reduces the constraint violation error but increases the solution error. This rule can be stated as follows.3.2.g. √ The name “square root” arises because the recommended w is in fact 10k 10 p .2. This tradeoff value is difficult to find aside of systematically running numerical experiments.3 Then choose penalty weights to be of order 10k+ p/2 with the proviso that such a choice would not cause arithmetic overflow.2. which can be approximately enforced by the heavy bar device shown in Figure 9. The best w is that which makes both errors roughly equal in absolute value. (9. = 0.5) and premultiply both sides by the transpose of the coefficient matrix: . 3 1 [3 −4 1 u3 −4 ] u 5 u6 . = 9 3 −12 3 1 −4 −12 −4 16 . u3 u5 u6 . . 6) 3 Such order-of-magnitude estimates can be readily found by scanning the diagonal of K because the largest stiffness coefficient of the actual structure is usually a diagonal entry. =K 0 e e (9. the master stiffness should be scaled throughout or a better choice of physical units made. 4 If overflows occurs. 0 ¯ u = 0 . 9–5 .  f5   f6 f7 (9.7) If the constraint is nonhomogeneous the force vector is also modified.Chapter 9: MULTIFREEDOM CONSTRAINTS II ¯ is the unscaled stiffness matrix of the penalty element.2) with the w-scaled penalty element (9. consider the MFC: 3u 3 + u 5 − 4u 6 = 1. augmenting (9. Rewrite in matrix form as [3 1 u3 −4 ] u 5 u6 .6) yields e  K 11 K  12   0   0   0  0 0 K 12 K 22 K 23 0 0 0 0 0 K 23 K 33 + 9w K 34 3w −12w 0 0 0 K 34 K 44 K 45 0 0 0 0 3w K 45 K 55 + w K 56 − 4w 0    u1 0 0   u2      0   u3      0   u4  =     0   u5      K 67 u6 K 77 u7 0 0 −12w 0 K 56 − 4w K 66 + 16w K 67  f1 f2   f3   f4  . To illustrate this effect. For the example problem. This is now multiplied by the Here K penalty weight w and assembled into the master stiffness matrix following the usual rules. 8) Premultiply both sides by the transpose of the coefficient matrix: 9 3 −12 3 1 −4 −12 −4 16 . = 1. (9. u3 u5 u6 . = . . Suppose we have a set of m linear MFCs. m (9. with Pp = u T 1 2  aTp a p u − w p aTp b p = 12 uT K( p) u − uT f( p) . 3 1 . these will be stated as apu = bp. −4 (9.12) .2. To incorporate the MFCs into the FEM model one selects a weight w p > 0 for each constraints and constructs the so-called Courant quadratic penalty function or “penalty energy” P= m Pp . *The Theory Behind the Penalty Method The rule comes from the following mathematical theory. p = 1.10) §9.1.     0   u 5   f5 + w      K 67 u6 f 6 − 4w f7 K 77 u7 (9. p=1 9–6 (9. Using the matrix notation introduced in §8. .5.11) where u contains all degrees of freedom and each a p is a row vector with same length as u.9) Scaling by w and assembling yields  K 11  K 12   0   0   0  0 0 K 12 K 22 K 23 0 0 0 0 0 K 23 K 33 + 9w K 34 3w −12w 0 0 0 K 34 K 44 K 45 0 0 0 0 3w K 45 K 55 + w K 56 − 4w 0 0 0 −12w 0 K 56 − 4w K 66 + 16w K 67     0 u1 f1 0   u2   f2      0   u 3   f 3 + 3w      0   u4  =  f4  . .3. the system can be passed to the equation solver. is a serious one: the choice of weight values that balance solution accuracy with the violation of constraint conditions. This compact form. P is added to the potential energy function = 12 uT Ku − uT f to form the augmented potential energy a = + P. which derives from term Pp in (9. which is getting a solution. are usually processed separately for efficiency. u and uˆ are the same.2). (9. conceals the configuration of the penalty elements. To give a simplistic example. however. Such loss can affect the performance of certain numerical processes. solving the master stiffness equations by Cholesky factorization or conjugate-gradients. (9. Constraints may be programmed as “penalty elements. Minimization of a with respect to u yields  Ku + m  K( p) u = f + p=1 m f( p) .7) or (9. wasting the user time with numerical games that have no bearing on the actual objective. although its effective use calls for knowledge of the magnitude of stiffness coefficients.2 THE PENALTY METHOD where we have called K( p) = w p aTp a p and f( p) = w p aT bi . Then two penalty elements connecting 2 and 6 will be inserted. suppose that the constraint u 2 = u 6 appears twice. For simple cases the square root rule previously described often works.6. 9–7 . In fact using this method there is no need to distinguish between unconstrained and constrained equations! Once all elements — regular and penalty — are assembled. Then the penalty augmented system can be written compactly as (K + AT WA) u = f + WAT b.5 An important advantage with respect to the master-slave (elimination) method is its lack of sensitivity with respect to whether constraints are linearly dependent.14) where W is a diagonal matrix of penalty weights.10) it is obvious that the master equations need not be rearranged. 6 For example. For difficult cases selection of appropriate weights may require extensive numerical experimentation. §9. Assessment of the Penalty Method The main advantage of the penalty function method is its straightforward computer implementation. To use a even more compact form we may write the set of multifreedom constraints as Au = b.12). Such knowledge may be difficult to extract from a general purpose “black box” program. Looking at modified systems such as (9.2 is that positive definiteness is not lost.§9.2. doubling the intended weight but not otherwise causing undue harm. it is worth noting that the penalty method is easily extendible to nonlinear constraints although such extension falls outside the scope of this book. The deterioration of the condition number of the penalty-augmented stiffness matrix can have serious side effects in some solution procedures such as eigenvalue extraction or iterative solvers. may be viewed as contributed by a penalty element with globalized stiffness matrix K( p) = w p aTp a p and globalized added force term f( p) = w p aTp b p . That is.” and stiffness and force contributions of these elements merged through the standard assembler. An advantage with respect to the Lagrange multiplier method described in §9. such as those encountered in Chapter 3.6 Finally. (9. The main disadvantage. 5 Single freedom constraints.13) p=1 Each term of the sum on p. however. 3. +λ).1. f2 (1) (2) 2 u 3 . §9. f1 u 2 . From this assessment it is evident that penalty augmentation.3. is no panacea. the method of Lagrange multipliers can be given a rigorous justification within the framework of variational calculus.Chapter 9: MULTIFREEDOM CONSTRAINTS II 1 u 1 .3. Thus the constraint is imposed exactly. f 6 (5) 5 u7 .15) 0 0   u 4  =  f4  . the combined solution error cannot be lowered beyond a threshold value. Finally. f3 u4 . even if optimal weights are selected. These are called the constraint forces. Because λ is an unknown. let us transfer it to the left hand side by appending it to the vector of unknowns:      u1  f1 0 0 0 0 0 0 K 11 K 12  u2  0 0 0 0 1     f2   K 12 K 22 K 23 u     0 0 0 0   3   f3  K 23 K 33 K 34  0 u     (9.3. Lagrange Multiplier Adjunction §9. 0 K 34 K 44 K 45  0      0   u 5   f5  0 0 K 45 K 55 K 56  0      u6 f6 + λ 0 0 0 0 K 56 K 66 K 67 0 0 0 0 0 K 67 K 77 u7 f7 This λ is called a Lagrange multiplier. But of course the penalty method with an infinite weight would “blow up. f7 (6) 6 x 7 λ Figure 9. Incorporating these forces into the original stiffness equations (8. Consider again the constraint u 2 = u 6 . 0 K 34 K 44 K 45  0   u5     0 0 0 K K K 0 0 f    5  45 55 56 u     f6 0 0 0 0 K 56 K 66 K 67 −1  6  u7 f7 0 0 0 0 0 K 67 K 77 0 λ 9–8 . f5 (4) 4 u6 .10) we get      0 0 0 0 0 u1 f1 K 11 K 12 0 0 0 0   u 2   f2 − λ   K 12 K 22 K 23      0 0 0   u 3   f3  K 23 K 33 K 34  0      (9. Physical interpretation of Lagrange multiplier adjunction to enforce the MFC u 2 = u 6 .16) 0 0 0   4  =  f4  .” We may remove the link if it is replaced by an appropriate reaction force pair (−λ. Borrowing some ideas from the penalty method. although superior to the master-slave method from the standpoint of generality and ease of implementation. Physical Interpretation As in the case of the penalty function method. But in the same spirit it will be introduced for the example structure from a physical standpoint that is particularly illuminating. f4 (3) 3 −λ u5 . as illustrated in Figure 9. imagine that nodes 2 and 6 are connected now by a rigid link rather than a flexible one. §9. nineth and tenth equations:  K 11  K 12   0   0   0   0   0   0  0 0 K 12 K 22 K 23 0 0 0 0 1 5 0 0 K 23 K 33 K 34 0 0 0 0 0 3 0 0 K 34 K 44 K 45 0 0 0 0 0 0 0 0 K 45 K 55 K 56 0 0 0 1 0 0 0 0 K 56 K 66 K 67 −1 0 −4   0 0     u1  0     u2   0    u   0  3  u  =  K 67   4   u   K 77   5    u6  0    u7  −8 0  f1 f2   f3   f4   f5  . Lagrange Multipliers for General MFCs The general procedure will be stated first as a recipe. §9. are required to take care of three MFCs. To render the system determinate.3 LAGRANGE MULTIPLIER ADJUNCTION But now we have 7 equations in 8 unknowns.17) This is called the multiplier-augmented system.19) Three Lagrange multipliers: λ1 . λ2 and λ3 . Adjoin those unknowns to the nodal displacement vector. Solving this system provides the desired solution for the degrees of freedom while also characterizing the constraint forces through λ. f6   f7   0  3 1 (9. f5   f6   f7 0 (9. (9. is called the bordered stiffness matrix. Its coefficient matrix. Symmetrize the coefficient matrix by appending 3 columns that are the transpose of the 3 last rows in (9. which is symmetric.19).2. 5u 2 − 8u 7 = 3.3. and filling the bottom right-hand corner 9–9 . the constraint condition u 2 − u 6 = 0 is appended as eighth equation:  K 11  K 12   0   0   0   0  0 0 K 12 K 22 K 23 0 0 0 0 1 0 K 23 K 33 K 34 0 0 0 0 0 0 K 34 K 44 K 45 0 0 0 0 0 0 K 45 K 55 K 56 0 0 0 0 0 0 K 56 K 66 K 67 −1 0 0 0 0 0 K 67 K 77 0    u1 0 1   u2      0   u3      0   u4     =  0   u5      −1   u 6      0 u7 λ 0  f1 f2   f3   f4  .18) Adjoin these MFCs as the eighth. Suppose that we want to solve the example structure subjected to three MFCs u 2 − u 6 = 0. The process by which λ is appended to the vector of original unknowns is called adjunction. 3u 3 + u 5 − 4u 6 = 1. 22) The master stiffness matrix K in (9. which are of interest in many applications. More precisely. Using the matrix notation introduced in §8.22) is said to be bordered with A and AT . It provides directly the constraint forces. λ b (9. 9–10 . and more complicated storage allocation procedures.3.4.Chapter 9: MULTIFREEDOM CONSTRAINTS II with a 3 × 3 zero matrix:  K 11 K 12 0  K 12 K 22 K 23  K 23 K 33  0  0 K 34  0  0 0  0  0 0  0  0 0  0  1 0  0  0 5 0 0 0 3 0 0 K 34 K 44 K 45 0 0 0 0 0 0 0 0 K 45 K 55 K 56 0 0 0 1 0 0 0 0 K 56 K 66 K 67 −1 0 −4 0 0 0 0 0 K 67 K 77 0 −8 0 0 0 1 5 0 0 0 0 0 0 −1 0 0 −8 0 0 0 0 0 0    u1 0 0   u2      3   u3      0   u4      1   u5     =  −4   u 6      0   u7      0   λ1      0 λ2 λ3 0  f1 f2   f3   f4   f5  . compactly denote the set of m MFCs by Au = b. it can be extended without difficulty to nonlinear constraints.1. Finally. λ) = + λT (Au − b) = 12 uT Ku − uT f + λT (Au − b). adjoin m Lagrange multipliers collected in vector λ and form the Lagrangian L(u. *The Theory Behind Lagrange Multipliers The recipe illustrated by (9.20) §9.3. Its implementation. To impose the constraint. §9. Special care must be exercised to detect singularities due to constraint dependency and to account for the effect of loss of positive definiteness of the bordered stiffness on equation solvers. It does not require guesses as regards weights. requiring expansion of the original stiffness method.20) comes from a well known technique of variational calculus.3. On the whole this method appears to be the most elegant one for a general-purpose finite element program that is supposed to work as a “black box” by minimizing guesses and choices from its users. Solving this system provides u and λ. It introduces additional unknowns. (9. the bordered stiffness is obviously singular. Assessment of the Lagrange Multiplier Method In contrast to the penalty method. It renders the augmented stiffness matrix indefinite.21) Extremizing L with respect to u and λ yields the multiplier-augmented form  K A AT 0     u f = . the constraint forces are −AT λ. The latter can be interpreted as forces of constraint in the following sense: a removed constraint can be replaced by a system of forces characterized by λ multiplied by the constraint coefficients. It is not free of disadvantages. f6   f7   0  3 1 (9. is not simple. as the master-slave method. an effect that may cause grief with some linear equation solving methods that rely on positive definiteness.3. however. the method of Lagrange multipliers has the advantage of being exact (aside from computational errors due to finite precision arithmetic). The potential energy of the unconstrained finite element model is = 12 uT Ku − uT f. where A is m × n. As the penalty method. it is sensitive to the degree of linear independence of the constraints: if the constraint u 2 = u 6 is specified twice. 26) λk+1 = λk + W(b − Auk ). To maintain exactness of the second equation.24) Setting λ P = 0 in the first matrix equation yields (K + wAT SA) u = f + wAT Sb. Because the lower diagonal block of the bordered stiffness matrix in (9. robustness.24) collectively pertains to the class of augmented Lagrangian methods. It is emphasized that no method is uniformly satisfactory in terms of generality. *The Augmented Lagrangian Method The general matrix forms of the penalty function and Lagrangian multiplier methods are given by expressions (9. for k = 0. 9–11 .13) and (9. respectively. beginning with λ0 = 0. numerical behavior and simplicity of implementation. This strategy circumvents the aforementioned ill-conditioning problems when the weight w is gradually increased. it is not possible to directly eliminate λ. A useful connection between these methods can be established as follows.22) is null. Three of these: master-slave elimination.24) in tandem as follows: (K + AT WA) uk = f + AT Wb − AT λk .25) On taking W = wS. . solve equations (9. This relation suggests the construction of iterative procedures in which one tries to improve the accuracy of the penalty function method while w is kept constant [?].24).5. One such method is easily constructed by inspecting (9. Using superscript k as an iteration index and keeping w fixed. . the general matrix equation (9. (9. If the process converges one recovers the exact Lagrangian solution without having to solve the Lagrangian system (9. λ = λ P + wS(b − Au). §9. 1. (9. Summary The treatment of linear MFCs in finite element systems can be carried out by several methods. To make this possible.22). Then u0 is the penalty solution. (9. The family of iterative procedures that may be precipitated from (9.13) of the penalty method is recovered. Notes and Bibliography §9. For a general purpose program that tries to attain “black box” behavior (that is. minimal decisions on the part of users) the method of Lagrange multipliers has the edge. Figure 9.23) directly. The reciprocal of is a large number called w = 1/ . .§9. where S is a constraint-scaling diagonal matrix of appropriate order and is a small number. The results may be presented as (K + wAT SA) u = f + wAT Sb − AT λ P . This edge is unfortunately blunted by a fairly complex computer implementation and by the loss of positive definiteness in the bordered stiffness matrix. S−1 λ is added to the right-hand side:  K AT A S−1    u f = −1 P λ S λ  (9. have been discussed. replace this block by S−1 .4.” We can now formally solve for λ and subsequently for u. penalty augmentation and Lagrange multiplier adjunction. .4 gives an assessment of the three techniques in terms of seven attributes.23) Here superscript P (for “predicted value”) is attached to the λ on the right-hand side as a “tracer. 1. as part of the procedure for forming the function now called the Lagrangian.4. quite close to that described in §9. The use of the Augmented Lagrangian Multiplier method for FEM kinematic constraints is first discussed in [212]. There is a good description in the book by Zienkiewicz and Taylor [837]. Notes and Bibliography A form of the penalty function method. when they originated in the field of constrained optimization. The Lagrange Multiplier method is much older. 9–12 . Multipliers (called initially “coefficients”) were described by Lagrange in his famous M´ecanique Analytique monograph [435]. was first proposed by Courant in the early 1940s [154].5. References Referenced items have been moved to Appendix R. Its use in FEM is more recent than penalty methods.26) for the master stiffness equations is derived. The original papers are by Hestenes [360] and Powell [598]. wherein the iterative algorithm (9.Chapter 9: MULTIFREEDOM CONSTRAINTS II Master-Slave Elimination Penalty Function Lagrange Multipliers fair excellent excellent poor to fair good fair high high Generality Ease of implementation Sensitivity to user decisions Accuracy small to none variable mediocre excellent Sensitivity as regards constraint dependence high none high Retains positive definiteness yes yes no Modifies unknown vector yes no yes Figure 9. Assessment summary of three MFC application methods. It entered the FEM through the work of researchers in the 1960s. Augmented Lagrangian methods have received much attention since the late 1960s. e]}].Penalty Method *) (* MFC: u2-u6=1/5 variable w *) K=MasterStiffnessOfSixElementBar[100].5. (* increase w by 10 every pass *) Khat=K.7}. fhat[[6]]-=(1/5)*w.1.1. {Kmod.6]]-=w. the following Mathematica script solves this Exercise: (* Exercise 9.fhat].2]]+=w. The LinearSolve function ˆ for weights of order 1012 or bigger are ill-conditioned.0. PlotStyle-> {AbsolutePointSize[4]. e=Sqrt[(u-uexact). Matlab (or similar) to do the algebra.25. Matlab (or similar) to do the algebra. where u p is the computed solution and uex is the exact solution listed in (E8.2]]=Khat[[2. 4.1. fhat=f.1.6.fmod}=FixLeftEndOfSixElementBar[Khat.Log[10.{Log[10. in which k varies as k = 3. Khat[[6.-8}.w].j<=7.{8}].1 .6. Print["Applied forces=".1).0. PlotJoined->True. *) AppendTo[ew.N[w]//ScientificForm.Exercises Homework Exercises for Chapter 9 MultiFreedom Constraints II EXERCISE 9.275. (*Print["L2 solution error=". 16. ListPlot[ew.2. w=10*w.Frame->True. u=LinearSolve[N[Kmod].185. f={1.Lagrange Multiplier Method *) (* MFC: u2-u6=1/5 *) K=MasterStiffnessOfSixElementBar[100].1 [C+N:20] This is identical to Exercise 8.{8}. fhat=AppendTo[f. For[j=1.4. use Mathematica.0. Khat[[6.3) if the computations carry 16 digits of precision? As in Exercise 8.0.5. For each sample w compute the Euclidean-norm solution error e(w) = ||u p (w) − uex ||2 . ].fhat].RGBColor[1. fhat[[2]]+=(1/5)*w.4.u//InputForm].j]]=K[[i. Khat[[i. Khat=Table[0. Use Mathematica. 5. . f={1.1).N[fmod]].(u-uexact)].0. For [w=100.j]] ]]. Plot k = log10 w versus log10 e and report for which weight e attains a minimum. Does it roughly agree with the square root rule (§9.i<=7. Print["Stiffness K=".f]. Print["Weight w=".0]}. The results for the computed u and the recovered force vector Ku should agree with (E8. Take the weight w to be 10k . Khat[[2. ew={}. For example. .2 . Note: If you run the above program.0]."Log10(u error)"}].14}.0. you may get several beeps from Mathematica as it is processing some of the systems with very large weights.6]]+=w. (See Slide #5 for a check).07. is alerting you that the coefficient matrices K EXERCISE 9.2 [C+N:15] Again identical to Exercise 8.3.1.3.AxesOrigin->{5.K//MatrixForm]. Don’t be alarmed: those are only warnings. 9–13 .7}.fmod}=FixLeftEndOfSixElementBar[Khat.27. Here MasterStiffnessOfSixElementBar and FixLeftEndOfSixElementBar are the same modules listed in Exercise 8.AbsoluteThickness[2]. For [i=1." u=". uexact= {0.e//ScientificForm]. (*insert penalty *) {Kmod.j++. except that the MFC u 2 − u 6 = 1/5 is to be treated by the penalty function method.0.2.i++. w<=10^16. except that the MFC u 2 − u 6 = 1/5 is to be treated by the Lagrange multiplier method. For example.AxesLabel->{"Log10(w)". . the following Mathematica script solves this Exercise: (* Exercise 9. 1.fmod]. show the stiffness equations of those two elements in a manner similar to (9.u .8]]=Kmod[[8.Kmod//MatrixForm].u].3 [A:10] For the example structure.1) As answer.1)? EXERCISE 9. Kmod[[6.umod[[8]]]. Print["Recovered node forces=". Print["Solution u=".N[fmod]]. Print["Kmod=".1).2]]= 1. (b) u 2 − 3u 6 = 1/3.4 [A/C+N:15+15+10] Suppose that the assembled stiffness equations for a one-dimensional finite element model before imposing constraints are 2 −1 0 −1 2 −1 0 −1 2 . umod=LinearSolve[N[Kmod]. fmod[[8]]=1/5. Print["fmod=". (E9. u=Take[umod. show which penalty elements would implement the fol- lowing MFCs: (a) u 2 + u 6 = 0.Chapter 9: MULTIFREEDOM CONSTRAINTS II Kmod[[2.7]. EXERCISE 9.8]]=Kmod[[8.6]]=-1. Here MasterStiffnessOfSixElementBar and FixLeftEndOfSixElementBar are the same modules listed in Exercise 8.K. lambda=".". Does the computed solution agree with (E8. u1 u2 u3 . . u y2 . 100. (b) Impose the constraint (E9. u 3 for w = 0. leaving the weight w as a free parameter. (E9. Hint 2: the solution for u 1 should be (6w + 5)/(4w + 4). (E9. are E A/L 0 0 0 12E I /L 3 6E I /L 2 0 6E I /L 2 4E I /L .1 rests on a skew-roller that forms a 45◦ angle with the horizontal axis x. but before imposing the skew-roller MFC.2) This system is to be solved subject to the multipoint constraint u1 = u3. The member is loaded axially by a force P as shown. θ2 }. 10. Tabulate the values of u 1 .5 [A/C:10+15+10] The left end of the cantilevered beam-column member illustrated in Fig- ure E9.3) by the penalty function method. 1. The finite element equations upon removing the fixed right end freedoms {u x2 .3) by the master-slave method taking u 1 as master.3) by the Lagrange multiplier method. Hint 1: the value of u 2 should not change. and solve the resulting 2 × 2 system of equations by hand. = 1 0 2 . Show the 4 × 4 multiplier-augmented system of equations analogous to (9. (c) Impose the constraint (E9.3) (a) Impose the constraint (E9. u 2 . EXERCISE 9.13) and solve it by computer or calculator. Solve the equations by hand or CAS (Cramer’s rule is recommended) and verify analytically that as w → ∞ the solution approaches that found in (a). u x1 u y1 θ1 . = P 0 0 . (E9. and L is the member length.4) where E. θ1 is the left end rotation. 9–14 . For now consider (E9. A.4) as a recipe. . and I = Izz are given member properties.7 7 The stiffness equations for a beam column are derived in Part III of this book. 9–15 . 9 To answer the second question.6 [A:5+5+10+10+5] A cantiveler beam-column is to be joined to a plane stress plate mesh as depicted in Figure E9. Verify that as w → ∞ the answer obtained in (a) is recovered.1. Follow the rule of §9.6.. and solve the resulting 4×4 system of equations using a CAS (by hand it will take long). write down the stiffness equations of the three penalty elements assuming the same weight w is used. For infinitesimal displacements and rotaavg tions the latter is θ35 = (u x5 − u x3 )/H . 4. Partial solution: u x1 = αL(3E Aβ +wL)/(3E Aβ +wL(1+3β)). observe that the displacements along 3–4 and 4–5 vary linearly. Verify that you get the same solution as in (a). (a) Write down the three MFC conditions: two from (1) and one from (2). Beam shown slightly separate from plate for visualization convenience: nodes 2 and 4 actually are at the same location. respectively. Preliminary Exam. and express the following solutions in terms of α and β. Technically it is not difficult once the student understand what is being asked. which gives a T of order 9 × 6. 3 2 The beam end rotation θ2 and the mean rotation of the plate edge 3–5 are the same. Apply the skew roller constraint by Lagrangian multiplier adjunction.2. (b) Where does the above expression of θ35 come from? (Geometric interpretation is OK. and state whether they are linear and homogeneous.1. Apply the skew-roller constraint by the master-slave method (make u y1 slave) and solve for u x1 and θ1 in terms of L. y}. and I = β AL 2 . . and (for infinitesimal displacements) may be set equal to the tangent. but a HW is more relaxed. Can the penalty stiffness be physically interpreted in some way? beam-column member . 3.2. Plane stress elements have two degrees of freedom per node: two translations u x and u y along x and y. since the transformations for the other freedoms are trivial. Thus the angle of rotation about z is constant for each of them. To connect the cantilever beam to the mesh. in which α and β are dimensionless parameters. EXERCISE 9. This may be done by hand or a CAS. (b) (c) y θ Apply the skew-roller constraint with the penalty method by inserting a penalty element at node 1. 4 of plate) are the same. . A. 9 H/2 plane beam 1 6 4 7 10 H/2 nodes 2 and 4 occupy same position 5 y θ z x H 8 11 plane stress mesh Questions: Figure E9. (Do not proceed further) avg 8 This is extracted from a question previously given in the Aerospace Ph. 1 x P z E. I . This can take some time.Exercises To simplify the calculations set P = α E A. 2 × 2 and 3 × 3. .8 Both pieces move in the plane {x. Beam linked to plate in plane stress for Exercise 9. respectively.4 to construct the 2 × 2 penalty stiffness. It is sufficient to write down the transformation for the DOFs of nodes 2. Their stiffness matrices are of order 2 × 2. Partial solution: u x1 = αL/(1 + 3β). and 5. whereas a beam-column element has three: two translations u x and u y along x and y. D. and one rotation (positive CCW) θz about z.) Can it be made more accurate9 by including u x4 ? (c) Write down the master-slave transformation matrix if {u x2 . the following “gluing” conditions are applied: (1) (2) The horizontal (u x ) and vertical (u y ) displacements of the beam at their common node (2 of beam. u y2 .5. (a) 2 L 45 o Figure E9.. Compute u x1 from the modified equations (Cramer’s rule is recommended if solved by hand). (d) If the penalty method is used. Cantilevered beam-column on skew-roller for Exercise 9. α and β. θ2 } are picked as slaves. 6) Write down the matrix stationarity conditions with respect to to u and uˆ and take the limit w → ∞.26) quoted for the Augmented Lagrangian method.8) .5. how many Lagrange multipliers will you need to append? (Do not proceed further). EXERCISE 9.9 [A:40] (Advanced. Start from the augmented functional ˆ T (u − Tu) ˆ P = 12 uT Ku − uT f + 12 w(u − Tu) (E9.7) (E9. Hint: using Woodbury’s formula (Appendix C.7 [A:30] Show that the master-slave transformation method u = Tuˆ can be written down as a special form of the method of Lagrange multipliers. λ and uˆ in matrix form. Start from the augmented functional ˆ M S = 12 uT Ku − uT f + λT (u − Tu) (E9.8 [A:35] Check the matrix equations (9.23) through (9.2) (K + wTT ST)−1 = K−1 − K−1 TT (K + w−1 S−1 )−1 T K−1 . show that K −1 = TK−1 TT . EXERCISE 9. §C. Show that the master-slave transformation method u = Tuˆ can be expressed as a limit of the penalty function method as the weights go to infinity.Chapter 9: MULTIFREEDOM CONSTRAINTS II (e) If Lagrange multiplier adjunction is used. EXERCISE 9. close to a research paper).5) and write down the stationarity conditions of M S with respect to u. 9–16 (E9. 10 Superelements and Global-Local Analysis 10–1 . . . . 10–3 §10. . . .3 *Mathematical Requirements . . . . .1 Where Does the Idea Come From? . . . . . . . . . . .Chapter 10: SUPERELEMENTS AND GLOBAL-LOCAL ANALYSIS TABLE OF CONTENTS Page §10. . . 10–8 Notes and Bibliography .2 Condensation by Symmetric Gauss Elimination . . . . . . . . . . . . . . . . . . . . . . .3 §10. . . . 10–5 §10. .2 Subdomains . . . . . . .2.1 §10. . . . . . . .2. .1. . .1. . . .1. . . . . . . . . . 10–5 Static Condensation . . . . . . . 10–3 §10. 10–11 10–2 . . . . . . 10–8 Global-Local Analysis . . . . . . . . . . . . . . . 10–5 §10. . . . . . . .1 Condensation by Explicit Matrix Operations . . . . . 10–10 Exercises . . . . . . .3 Recovery of Internal Freedoms . . . . . . . §10. . . . . . 10–5 §10. 10–6 §10. . . . . . §10. . . . . Superelement Concept . . . . . . . .2 §10. . . . 10–10 References . . . . . . . .2. . . . . . . . . . Superelement Concept A superelement is a grouping of finite elements that. Facilitate division of labor. 2 See Notes and Bibliography at the end of this Chapter. which are introduced in later Chapters. The basic rule is that associated with condensation of internal degrees of freedom. superelements may originate from two overlapping contexts: “bottom up” or “top down. As noted in Chapter 6. ranging from individual elements to complete structures. Substructures with different functions are done by separate design groups with specialized knowledge and experience. Both macroelements and substructures are treated exactly the same way as regards matrix processing. whether composed of two or a million elements. 1. Also called mesh units when they are presented to program users as individual elements. the restrictions are not dwelled upon here. however. because efficient processing for large matrix systems requires exploitation of sparsity. that condensation applies to any superelement. To be considered as such. etc.” In a bottom up context one thinks of superelements as built from simpler elements. Complex assemblies of elements that result on breaking up a structure into distinguishable portions.1. Inasmuch as these conditions involve advanced concepts such as rank sufficiency. The technique is illustrated in the following section with a simple example. Three original motivating factors for substructuring can be cited. may be regarded as an individual element for computational purposes.1 §10. Substructures. In fact the generic term superelement was coined to cover the entire spectrum. Where Does the Idea Come From? Substructuring was invented by aerospace engineers in the early 1960s2 to carry out a first-level breakdown of complex systems such as a complete airplane. The concept is also natural for space vehicles operating in stages. The reader should note. These purposes may be driven by modeling or processing needs.3. upon assembly. When does a substructure becomes a macroelement or vice-versa? There are no precise rules.1. such as the Apollo short stack depicted in Figure 10. The decomposition may continue hierarchically through additional levels as illustrated in Figure 10. This imposes certain conditions stated mathematically in §10.2. For instance an aircraft company may set up a fuselage group.1.1. A random assortment of elements does not necessarily make up a superelement.§10. More specifically: a wing design group can 1 Of course the computer implementation becomes totally different as one goes from macroelements to substructures.1 SUPERELEMENT CONCEPT §10. In a top-down context.3. a landing-gear group. 10–3 . a grouping must meet certain conditions.1. This dual viewpoint motivates the following classification: Macroelements. as depicted in Figure 10. Informally we can say that it must form a structural component on its own. a wing group. This universality is helped by common processing features. These groups are thus protected from “hurry up and wait” constraints. These are superelements assembled with a few primitive elements. superelements may be thought as being large pieces of a complete structure. Of the three motivations. had a total high-speed memory of 131072 60-bit words or 1. and so are the stabilizers S4 and S5 . improvements and experimental model verification as long as the interface information (the wing-fuselage intersection) stays sensibly unchanged. The computers of the 1960s operated under serious memory limitations.3. the first two still hold today. The Apollo short stack. The decomposition process may continue down to the individual element level.1. the first supercomputer: the Control Data 6600.Chapter 10: SUPERELEMENTS AND GLOBAL-LOCAL ANALYSIS S2 S6 S4 S5 S1 S3 Figure 10.2. The third one has moved to a different plane: 10–4 . COMMAND MODULE SERVICE MODULE ADAPTER LUNAR MODULE INSTRUMENT UNIT THIRD STAGE SIV-B Figure 10. Overcome computer limitations. level two substructure level one substructure individual element Figure 10.) It was difficult to fit a complex structure such as an airplane as one entity. Even if the loading is not symmetric about that midplane. Further breakdown of wing structure. Take advantage of repetition. 3. 2. recognizing repetitions saves model preparation time.31 MB. (For example. Complete airplane broken down into six level one substructures identified as S1 through S6 . Substructuring permitted the complete analysis to be carried out in stages through use of auxiliary storage devices such as tapes or disks. keep on working on refinements. that machine cost $10M in 1966 dollars. the wing substructures S2 and S3 of Figure 10. Often structures are built of several identical or nearly identical units. For instance.1 are mirror images on reflection about the fuselage midplane. For example. Verification of the rank-sufficient condition guarantees that the static condensation procedure described below will work properly. At the other end of the superelement spectrum. See Figure 10. The common underlying theme is divide and conquer but the motivation is different. repetition favors the use of substructuring techniques. A more practical technique based on symmetric Gauss elimination is discussed later.2 below. *Mathematical Requirements A superelement is said to be rank-sufficient if its only zero-energy modes are rigid-body modes. These are groupings of finite elements that are entirely motivated by computational considerations. Subdomains Applied mathematicians working on solution procedures for parallel computation have developed the concept of subdomains. as shown in the next subsection. They are subdivisions of the finite element model done more or less automatically by a program called domain decomposer. it is better to keep the two separate.2 STATIC CONDENSATION parallel processing. or simply condensation. §10. the superelement does not possess spurious kinematic mechanisms. (10. §10. Static Condensation Degrees of freedom of a superelement are classified into two groups: Internal Freedoms.1. It was therefore natural to combine the latter to assemble the former. Those that are not connected to the freedoms of another superelement. They usually reside at boundary nodes placed on the periphery of the superelement. Although the concepts of substructures and subdomains overlap in many respects. §10. respectively. Equivalently. In the late 1960s the idea was picked up and developed extensively by the offshore and shipbuilding industries.2. Condensation may be presented in terms of explicit matrix operations. Boundary Freedoms.2.2.3. Going a step further one can assemble components such as “box elements” for applications such as box-girder bridges.1) Kib Kii ui fi 10–5 .§10. §10. as noted in §10.1. These are connected to at least another superelement. the assembled stiffness equations of the superelement are partitioned as follows:      Kbb Kbi ub f = b . Nodes whose freedoms are internal are called internal nodes.1.1. the products of which tend to be modular and repetitive to reduce fabrication costs. They were motivated by user convenience. The objective is to get rid of all displacement degrees of freedom associated with internal freedoms. in hand preparation of models. This elimination process is called static condensation. As noted above.4. Condensation by Explicit Matrix Operations To carry out the condensation process. quadrilateral and bricks involve less human labor than triangles and tetrahedra. the mesh units herein called macroelements appeared in the mid 1960s. 2) Kib ub + Kii ui = fi . (The FE mesh is pictured as two-dimensional for illustrative purposes.1. (a) shows the vertical stabilizer substructure S6 of Figure 10.1) yields the condensed stiffness equations ˜ bb ub = ˜fb . K In this equation. From this point onward. Often each superelement has its own “local” coordinate system. If the former condition is verified but not the latter. Classification of superelement freedoms into boundary and internal. which are connected to the fuselage substructure. the condensed superelement may be viewed. respectively. A transformation of (10. the transformation is done with respect to the next-level superelement coordinate system. respectively. where subvectors ub and ui collect boundary and interior degrees of freedom. (10.) Boundary freedoms are those associated to the boundary nodes labeled b (shown in red). 10–6 .3) Replacing into the first matrix equation of (10.5) to an overall global coordinate system is necessary upon condensation.3. of the substructure. This matrix is nonsingular if the superelement is rank-sufficient in the sense stated in §10. from the standpoint of further bb operations. The feasibility of the condensation process (10.Chapter 10: SUPERELEMENTS AND GLOBAL-LOCAL ANALYSIS (a) (b) i i b b b b b b b b b b Figure 10.2. and if fixing the boundary freedoms precludes all rigid body motions.1. ii (10. This coordinate transformation procedure automates the processing of repeated portions. as an individual element whose element stiffness matrix and nodal force vector are K ˜ and fb .4.3)–(10. among which one may cite the use of projectors and generalized inverses [?]. Take the second matrix equation: (10. Processing floating superelements demands more advanced computational techniques. ˜ bb = Kbb − Kbi K−1 Kib .5) rests on the non-singularity of Kii . K ii ˜fb = fb − Kbi K−1 fi . In the case of multiple levels. Remark 10. If Kii is nonsingular we can solve for the interior freedoms: ui = Kii−1 (fi − Kib ub ). (b) shows a quadrilateral macroelement mesh-unit fabricated with 4 triangles: it has one interior and four boundary nodes. the superelement is called floating. for an actual aircraft it will be three dimensional.4) (10.5) are called the condensed stiffness matrix and force vector. respectively. n]].5. K={{6. The equations of the substructure are not actually rearranged. For [i=1.2 STATIC CONDENSATION CondenseLastFreedom[K_.-2.Print["Upon condensing DOF 4:".K//MatrixForm.2.{ -2. " K=".i]]=Kc[[i. (10. 5 8 (10. The procedure may be in fact coded as a variant of symmetric Gauss elimination.j]]-c*K[[n.-1.j]] ]. If [n<=1. ].6.j]]=K[[i.{n-1}]. Return[{K.8}}.-2.6)–(10.{ -1.f]. Print["Before condensation:".8) 2 u3 4 5 Repeat the process for the third row and column to eliminate u 3 :  39 (−5/2)×(−5/2)    3− − − 19 − (−5/2)×(−5/2) u1 8 5 8 5 = (−5/2)×(−5/2) (−5/2)×(−5/2) 39 19 u2 − − − 6− 8 8 0×(−4) 8 5 10–7 4×(−5/2) 5 4×(−5/2) 5  .6)    =  .-1}. are classified as interior and are to be statically condensed out.{n-1}.i++. fc[[i]]=f[[i]]-c*f[[n]]. Mathematica module to condense the last degree of freedom from a stiffness matrix and force vector.4. Figure 10.Return[{K.f_]:=Module[{pivot. " Singular Matrix"]. c=K[[i.Kc." K=".-1. pivot=K[[n.-4. Kc=Table[0. f={3.fc}]] ]. There are two major differences.10).n]]/pivot. {K.2.7) 5 − (−1)×(−1) −2 − (−4)×(−1)   u 2  =  6 − 0×(−1)  .0}. calculations are not carried out as outlined above.  −2 −  −1 − 8 (−3)×(−4) 8 −2 − or 8 (−1)×(−4) 8  39 8  − 19 8 − 52 − 19 8 39 8 − 52 7− 8 (−4)×(−4) 8 u3 4− − 52   u 1   3  − 5   u2  =  6  . To eliminate u 4 ." f=". To convey the flavor of this technique.f}=CondenseLastFreedom[K. n=Length[K]}.-4}.9) . For [j=1.K//MatrixForm.f}]].§10. Return[Simplify[{Kc. {K.f}=CondenseLastFreedom[K.j++.f//MatrixForm]. perform symmetric Gauss elimination of the fourth row and column:      3 − 0×(−3) 6 − (−3)×(−3) −2 − (−1)×(−3) −1 − (−4)×(−3) u1 8 8 8 8     (−3)×(−1) (10.f}]].f//MatrixForm]. Print["CondenseLastFreedom:". The test statements carry out the example (10. fc=Table[0.f].-3}.-2.i<=n-1.c. If [pivot==0." f=".fc. and the explicit calculation of the inverse of Kii is avoided. Kc[[j. consider the following stiffness equations of a superelement:     3 6 −2 −1 −3 u1 u −2 5 −2 −1   2 6 (10.{n-1}]." f=". §10.7. u3 4 −1 −2 7 −4 u4 0 −3 −1 −4 8 Suppose that the last two displacement freedoms: u 3 and u 4 .K//MatrixForm. Condensation by Symmetric Gauss Elimination In the computer implementation of the the static condensation process.f//MatrixForm].{-3.Print["Upon condensing DOF 3:".5. " K=".j<=i. 2. is partitioned as A11 A21 A12 A22 . The symmetric Gauss elimination procedure. Module CondenseLastFreedom condenses the last freedom of a stiffness matrix K and a force vector f. for example that described in [211]. To do the example (10. It is invoked as { Kc. the module is called twice. 6 and 8. Obviously this procedure is much simpler than going through the explicit matrix inverse. as illustrated in steps (10.f].6)–(10. This permits the use of full matrix storage. 3 and 7. Figure 10. The static condensation process is a matrix operation called “partial inversion” or “partial elimination” that appears in many disciplines. suppose that the assembled superelement contains originally eight degrees of freedom and that the freedoms to be condensed out are numbered 1.10) These are the condensed stiffness equations. 5. is primarily useful for macroelements and mesh units.5 shows a Mathematica program that carries out the foregoing steps.10). For substructures containing thousands or millions of degrees of freedom — such as in the airplane example — the elimination is carried out using more sophisticated sparse matrix algorithms.2. 4. Suppose the linear system Ax = y. as illustrated in the test statements of Figure 10. It returns the condensed stiffness Kc and force vector fc as new arrays. Remark 10.6)–(10. Then Gauss elimination is carried out over those equations only.5.10).Chapter 10: SUPERELEMENTS AND GLOBAL-LOCAL ANALYSIS or  29 8 − 29 8 − 29 8  29 8 u1 u2    5 = .3. An implementation of this process is considered in Exercise 10.fc }=CondenseLastFreedom[K. Another important advantage of Gauss elimination is that equation rearrangement is not required even if the condensed degrees of freedom do not appear sequentially. and the condensed (3 × 3) stiffness and (3 × 1) force vector extracted from rows and columns 2. Here is the general form. where A is n × n square and x and y are n-vectors. 8 (10. Remark 10. For example. since the number of stiffness equations for those typically does not exceed a few hundreds. x1 x2 . = . (10. 10–8 . it is conventional to condense out the bottom vector x2 . y1 .2. y2 (10. the interior freedoms can be recovered directly from (10.11) Assuming the appropriate inverses to exist. to retain symmetry in (10. so the right identity is relevant. If A is symmetric. §10. y2  −1 A11 − A12 A−1 22 A21 A12 A22 −A−1 A−1 22 A21 22  x1 y2   =  y1 .12) it is necessary to change the sign of one of the subvectors.3. Recovery of Internal Freedoms After the boundary freedoms are obtained by the solution process.3).12) x2 We say that x1 has been eliminated or “condensed out” in the left identity and x2 in the right one. or equation by equation as a backsubstitution process. In FEM applications. then the following are easily verified matrix identities:  A−1 −A−1 11 11 A12 −1 A21 A−1 A − A 22 21 A11 A12 11  y1 x2   =  x1 . This process may be carried out either directly through a sequence of matrix operations. The whole system is first analyzed as a global entity. Figure 10. the applied boundary displacements are interpolated from the global mesh solution.6. Right: a FEM mesh for a one-shot analysis. technique is multiscale analysis. And so on.7 illustrates the global-local analysis procedure. which contains three small holes. it serves to illustrate the basic ideas. The gist of the global-local approach is explained in the example illustrated in Figures 10. The key ingredient for the local analyses is the application of boundary conditions (BCs) on the finer mesh boundaries. the internal forces or stresses obtained from the global calculation are converted to nodal forces on the fine meshes 10–9 .7. The global analysis is done with a coarse but regular FEM mesh that ignores the effect of the holes. If the former.3. Although the structure is admittedly too simple to merit the application of global-local analysis.§10. Global-Local Analysis As discussed in the first Chapter. If the latter. discarding or passing over details deemed not to affect its overall behavior. The process can be continued into the analysis of further details of local models.3 coarse mesh GLOBAL-LOCAL ANALYSIS finer meshes Figure 10. This is followed by local analysis of the region near the holes using refined finite element meshes. Such details are a posteriori incorporated in a series of local analyses. Connecting the coarse and fine meshes usually involves using multifreedom constraints because the nodes at mesh boundaries do not match. complex engineering systems are often modeled in a multilevel fashion following the divide and conquer approach. as depicted in that figure. Left: example panel structure for global-local analysis. In the global stage the behavior of the entire structure is simulated with a finite element model that necessarily ignores details such as cutouts or joints. When this procedure is restricted to two stages and applied in the context of finite element analysis.6 and 10. Suppose one is faced with the analysis of the rectangular panel shown on the top of Figure 10. but not identical. it is called global-local analysis in the FEM literature. but may have a bearing on safety. A related. These BCs may be of displacement (essential) or of force (natural) type. Local details are then analyzed using the results of the global analysis as boundary conditions. These details do not affect the overall behavior of the structure. The bottom of that figure shows a standard (one-stage) FEM treatment using a largely regular mesh that is refined near the holes. §10. The superelement technique is a practical realization of that approach.6. The global-local analysis procedure described here is also primarily used in industry and as such it is rarely mentioned in academic textbooks. It is unclear when this idea was first applied to substructures or macroelements. The BC choice noted above gives rise to two basic variations of the global-local approach. Global-local analysis of problem of Figure 10. as a scheme to eliminate unloaded DOF in the displacement method.242. Experience accumulated over several decades3 has shown that the stress-BC approach generally gives more reliable answers. The application of domain decomposition to parallel FEM solvers has produced an enormous and highly specialized literature.Chapter 10: SUPERELEMENTS AND GLOBAL-LOCAL ANALYSIS Global analysis with a coarse mesh. it is receiving increasing attention from various science and engineering communities for complex products such as the thermomechanical analysis of microelectronic components. Przemieniecki’s book [603] contains a fairly complete bibliography of early work. References Referenced items have been moved to Appendix R. 10–10 . The first application for reduced dynamical models is by Guyan [326]. Procedures for handling floating superelements using generalized inverse methods are discussed in [234. 3 Particularly in the aerospace industry. The generic term superelement was coined in the late 1960s by the SESAM group at DNV Veritas [196].6. in which the global-local technique has been used since the early 1960s. The global-local technique can be extended to more than two levels. see [809]. Notes and Bibliography Substructuring was invented by aerospace engineers in the early 1960s. Although this generalization is still largely in the realm of research. The matrix form of static condensation for a complete structure is presented in [23]. Most of this was in the form of largely inaccessible internal company or lab reports and so the actual history is difficult to trace. Quadrilateral macroelements fabricated with triangles are described in [205]. Macroelements appeared simultaneously in many of the early FEM codes. in which case it receives the more encompassing name multiscale analysis. For a survey of uses of the static condensation algorithm in FEM. ignoring holes.571].7. followed bylocal analysis of the vicinity of the holes with finer meshes: Figure 10. through a lumping process. −44   u 3   15  u4 220 20 (E10.1 [N:15] The free-free stiffness equations of a superelement are  88 −44  −44 132  −44 −44 0 −44  −44 −44 176 −44    0 u1 5 −44   u 2   10  = .Exercises Homework Exercises for Chapter 10 Superelements and Global-Local Analysis EXERCISE 10.2.2. Use either the explicit matrix inverse formulas 10.1) by static condensation.5 or the symmetric Gauss elimination process explained in §10. and show (but do not solve) the condensed equation system.1) Eliminate u 2 and u 3 from (E10. Hint: regardless of method the result should be 52 −36 −36 184 . u1 u4 . = . 30 (E10. EXERCISE 10. Kc[[ii.j<=n.f. fc[[ii]]=f[[i]]-c*f[[k]]. k may range from 1 to n.5 to a module CondenseFreedom[K. For [i=1. Apply that program to solve the previous Exercise. the static condensation process can be viewed as a special case of the master-slave transformation method discussed in Chapter 8.j++.3 [D:15] Explain the similarities and differences between superelement analysis and globallocal FEM analysis. Continue[]]. ]. To prove this.k]]/pivot.j]] ]. For [j=1.2 [C+N:20] Generalize the program of Figure 10. jj++.i++.fc}] EXERCISE 10. take exterior freedoms ub as masters and interior freedoms ui as slaves. That is.2) EXERCISE 10. If [j==k. Assume the master-slave transformation relation .Continue[]]. Return[{Kc. 15 .jj]]=K[[i.4 [A:20] If the superelement stiffness K is symmetric.k] that is able to condense the kth degree of freedom from K and f.i<=n. ii++. Hint: here is a possible way of organizing the inner loop: ii=0. jj=0.j]]-c*K[[k. where n is the number of freedoms in Ku = f. c=K[[i. which is not necessarily the last one. If [i==k. . . ) equations (10. if any. and show that K Work out K T ˆ (Take advantage of the symmetry properties Kbi = Kib .3) u= − u [ ] b ui −Kii−1 Kib −Kii−1 fi ˆ uˆ = ˆf coalesces with the condensed stiffness ˆ = TT KT and ˆf = TT (f − Kg).5) if ub ≡ u.7.4)–(10.6 and 10. EXERCISE 10.5 [D:30] (Requires thinking) Explain the conceptual and operational differences between one-stage FEM analysis and global-local analysis of a problem such as that illustrated in Figures 10. def ub I 0 = = Tub − g. by the global-local approach over the one-stage FEM analysis? 10–11 . Are the answers the same? What is gained. (E10. (Kii−1 )T = Kii−1 . 4) ˆ − ωˆ 2 K)ˆ ˆ vi = 0 Compute and compare the vibration frequencies of the eigensystems (M − ωi2 K)vi = 0 and (M i before and after reduction. −1  1 (E10. lowest 0. with the Matlab eig function.5) which in partitioned matrix form is ω2 Mbb Mib Mbi Mii . The largest is 2. Hints. respectively:  2 0  ω2  1 0 0 2 0 1 1 0 4 1    0 v1 1 1   v4   0 = 1   v2   −1 v3 4 0 −1 0 2 −1 0 1 0 −1   0 v1 −1   v4  . Use this procedure to eliminate the second and third DOF of the mass-stiffness system:  2 1 M= 0 0 1 4 1 0 0 1 4 1  0 0 .Chapter 10: SUPERELEMENTS AND GLOBAL-LOCAL ANALYSIS EXERCISE 10.3) as master-slave transformation to both the stiffness and the mass matrix of the superelement. The four original squared frequencies are the eigenvalues of M−1 K. which may be obtained. 1 2  −1 2 −1 0 1  −1 K= 0 0  0 −1 2 −1 0 0 . To perform the Guyan reduction it is convenient to reorder M and K so that rows and columns 2 and 3 become 3 and 4. −1   v2  v3 2 (E10.6 [N:20] The widely used Guyan’s scheme [326] for dynamic model reduction applies the static-condensation relation (E10. for example. vb vi . = Kbb Kib Kbi Kii . . 6) Next show that static condensation of K is equivalent to a master-slave transformation  1 . vi (E10. vb . I  0 = T= −Kii−1 Kib 2/3 1/3  0 1  1/3  2/3  relating   v1 1  v4   0  v  =  2/3 2 v3 1/3  0 . Is the condensed stiffness the same as that of a beam element of length 2L and rigidity E I ? (For expressions of the beam stiffness matrices. Form M eigensystem and verify that they approximate the two lowest original squared frequencies. EXERCISE 10. see Chapter 12. θ2 . The macroelement has 6 degrees of freedom: {v1 .7) ˆ = TT KT.7 [A:20] Two beam elements: 1–2 and 2–3. v2 . Eliminate the two DOF of node 2 by condensation. find the two squared frequencies of the condensed ˆ = TT MT and K The rest is easy.  v4 1/3 2/3 (E10. θ1 . 1  v1 . v3 .) 10–12 . θ3 }. each of length L and rigidity E I are connected at node 2. 11 Variational Formulation of Bar Element 11–1 . . Bar Element Discretization . *Weighted Residual Methods .3. . .1.5. Exercises . . . .4. . . §11. .5.1. . §11. . The Consistent Node Force Vector . . . . . §11.2.3.6.4. . . . . . . . §11. . TPE Discretization . . . . . . §11. . . .1. .Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT TABLE OF CONTENTS Page §11. . . .3. . . . . . . . . The Total Potential Energy Functional . . . 11–2 . . §11. *Nodal Exactness and Superconvergence . . . . . . . . . . . . . . .2. . Admissible Variations .4.3. . . . . .6. §11. . §11. . . .7. . . . . .5. . The Strain-Displacement Matrix . . .2.1. . . . . . .4. §11. . . §11. . References . . . .6. . . . . Notes and Bibliography . . . . . . . Interpolation by Shape Functions . . . . . . . . . . . . . §11. . .3. . The Stiffness Matrix . . . . Principle of Virtual Work as Balanced Weak Form §11. . . . . . . . *Trial Basis Functions . . . §11. *Robin Boundary Conditions . . .5. . .2. . . . . . . . . §11. . . . . . . . .5. . .5. . .2. . . . Weak Form Based Approximation Example . . . §11. . §11.3. . . . . . . *Accuracy Analysis §11. . . §11. .4. . . *Fourier Patch Analysis . . . . . Weak Forms §11. . .3. . . . . . . . . . . . . From Strong to Weak . .3. . . . . §11. . . . . . . . §11. The Finite Element Equations §11. .3. . . .3. . . . .5. . . .5. . . . . §11. .6. . . . . Balanced Weak Forms . . .3.8. . . . .6. 11–3 11–3 11–4 11–4 11–6 11–6 11–7 11–8 11–9 11–9 11–9 11–10 11–10 11–11 11–13 11–13 11–14 11–15 11–15 11–16 11–16 11–16 11–17 11–18 11–19 11–20 11–21 . . . The Minimum Total Potential Energy Principle . . .3. . A New Beginning Definition of Bar Member Variational Formulation §11. . . . §11. . . .1. . §11. . . . . . . . . . . . . such as variable cross section or more than two nodes. BC application and solution. 3 and 5 as the truss member. y} plane highlighting some quantities that are important in bar analysis. See Figure 11. which we have already encountered in Chapters 2..1(a).. Definition of Bar Member In structural mechanics a bar is a structural component characterized by two properties: (1) One preferred dimension: the longitudinal dimension or axial dimension is much larger that the other two dimensions. The longitudinal dimension defines the longitudinal axis. which are collectively known as transverse dimensions.2. A New Beginning This Chapter begins Part II of the course. although these elements may be used in one. . The intersection of a plane normal to the longitudinal dimension and the bar defines the cross sections. (2) The bar resists an internal axial force along its longitudinal dimension. x axial rigidity EA cross section u(x) . .1. For uniform properties the resulting equations are the same as those found previously using the physical or Mechanics of Materials approach.§11. The formulation of 2D finite elements from a variational standpoint is discussed in Chapters 14 and following. The simplest one-dimensional structural element is the two-node bar element. 11–3 .2 DEFINITION OF BAR MEMBER §11. z q(x) P P x L Longitudinal axis cross section Figure 11. it is better understood by going through specific elements first. exceeding structural mechanics. Individual elements are constructed in this Part beginning with the simplest ones and progressing to more complicated ones. From a geometrical standpoint the simplest finite elements are one-dimensional or line elements. The variational method has the advantage of being readily extendible to more complicated situations. Those operations are not element dependent. Why only elements? Because the other synthesis steps of the DSM: globalization. This Part focuses on the construction of structural and continuum finite elements using a variational formulation based on the Total Potential Energy. two or three space dimensions upon transformation to global coordinates as appropriate.1. In this Chapter the bar stiffness equations are rederived using the variational formulation. merge. This means that the intrinsic dimensionality is one. (b) 2D view on {x. §11.. y (a) (b) .. Although the scope of that formulation is broad. remain the same as in Part I. A fixed-free bar member: (a) 3D view showing reference frame. 2 pertains to the continuum bar model rather than to the discrete one.2 displays the governing equations of the bar in a graphic format called a Tonti diagram. The Total Potential Energy Functional In Mechanics of Materials it is shown that the internal energy density at a point of a linear-elastic material subjected to a one-dimensional state of stress σ and strain e is U = 12 σ (x)e(x). The formal similarity with the diagrams used in Chapter 5 to explain MoM elements should be noted. This U is also called the strain energy density. We will consider here only straight bars. (11.1.) u(x) q(x) L E A EA e = du/d x = u  σ = Ee = Eu  F = Aσ = E A e = E Au  P ∗ x is used in this Chapter instead of x¯ (as in Chapters 2–3) to simplify the notation. may vary with x Axial rigidity Infinitesimal axial strain Axial stress Internal axial force Prescribed end load x (. Figure 11. bar elements are used to model cables. chains and ropes. In addition to trusses.3. They are also used as fictitious elements in penalty function methods.3.1) . (The qualifier “strong form” is explained in the next Chapter. although the diagram of Figure 11.) §11. given per unit of bar length Total bar length Elastic modulus Cross section area. although their cross section may vary.1 collects the necessary terminology for the governing equations. and that displacements and strains are infinitesimal. Integration over the volume of the bar gives the total internal energy  U= 1 2  σ e dV = V 1 2 0 L  Fe d x = 1 2 L   (E Au )u d x = 0 11–4  1 2 L 0 u  E A u  d x. Our one-dimensional mathematical model assumes that the bar material is linearly elastic obeying Hooke’s law.)/d x Axial displacement Distributed axial force.1(b) pictures some relevant quantities for a fixed-free bar.Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT Table 11.1 Nomenclature for Mathematical Model of Axially Loaded Bar Quantity Meaning Longitudinal bar axis∗ d(. as discussed in Chapter 9. Table 11. where σ is to be regarded as linked to the displacement u through Hooke’s law σ = Ee and the straindisplacement relation e = u  = du/d x. Figure 11. Variational Formulation To illustrate the variational formulation. the finite element equations of the bar will be derived from the Minimum Potential Energy principle. §11. To display both primary and independent variables we write.§11. 2. The distributed load q(x).3) Mathematically is a functional. According to the rules of Variational Calculus. called the Total Potential Energy functional or TPE. The second source may be folded into the first by conventionally writing any point load P acting at a cross section x = a as a contribution P δ(a) to q(x). Field equations and BCs are represented as lines connecting the boxes. It depends only on the axial displacement u(x). All integrand quantities in (11. (11.1) may depend on x. When the dependence of on u needs to be emphasized we shall write [u] = U [u]−W [u]. This contributes a cross-section density of q(x)u(x) because q is assumed to be already integrated over the section.1 the end load P would contribute P u(L). in which δ(a) denotes the one-dimensional Dirac delta function at x = a. with brackets enclosing the primary variable.2) 0 The total potential energy of the bar is given by =U −W (11. For the fixed-free example of Figure 11.1. This potential is denoted by W . Strong-form Tonti diagram for the continuum model of a bar member. Any specified axial point load(s).4) . The external work potential is the work performed by applied mechanical loads working on the bar displacements. Yellow (brown) boxes contain unknown (given) quantities. In the ensuing derivations W will be used instead of V . for example. (The external energy V is the negative of the work potential: V = −W . the Euler-Lagrange equation for is E= ∂ d ∂ − = −q − (E A u  ) ∂u d x ∂u  11–5 (11. Remark 11. [u(x)] = U [u(x)] − W [u(x)].3 VARIATIONAL FORMULATION Prescribed end displacement Displacement Axial BCs displacement u(x) Kinematic Distributed axial load q(x) F'+q=0 e=u' Axial strain e(x) F = EA e Constitutive Equilibrium Axial force F(x) Force BCs Prescribed end load Figure 11. In Variational Calculus u(x) is called the primary variable of the functional. If this is done the external energy can be concisely expressed as  W = L q u d x.) It collects contributions from two sources: 1.2. that is. Note that the variation δu(L) at the free end x = L is not necessarily zero because that boundary condition is natural. Concept of admissible variation of the axial displacement function u(x). On the other hand. with the variation restricted over the class of finite element interpolation functions.Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT u(x)+δu(x) u δu(x) δu(L) u(L) u(x) u(0) = 0 x x Figure 11. where for convenience u(x) is plotted normal to x.1. Admissible Variations The concept of admissible variation is fundamental in both variational calculus and the variationally formulated FEM. (ii) It satisfies exactly any displacement boundary condition. This agrees with the conditions of classical variational calculus.3.3. The variation δ u(x) pictured in Figure 11. which reduces to E A u  + q = 0 if E A is constant. Both u(x) and u(x) + δu(x) shown above are kinematically admissible. 1 The symbol δ not immediately followed by a parenthesis is not a delta function but instead denotes variation with respect to the variable that follows. Only the primary variable(s) of a functional may be varied. u(x) ∈ C 0 in x ∈ [0. It is instead replaced by δ = 0. For convenience u(x) is plotted normal to the longitudinal axis.3 is kinematically admissible because both u(x) and u(x) + δ u(x) satisfy the foregoing conditions. not specified directly in terms of the displacement u(L). A kinematically admissible axial displacement u(x) obeys two conditions: (i) It is continuous over the bar length. (11. The stationary condition for is E = 0. For the TPE functional (11. L]. See of Figure 11.1 This is illustrated in Figure 11. Note that the variation δu(L) is not zero because the BC at x = L is natural. such as the fixed-end specification u(0) = 0 of Figure 11. and so is the variation δu(x).1. δ(0) = 0.3) this is the axial displacement u(x). or (E A u  ) + q = 0 (11. The variation δ u(x) should not be confused with the ordinary differential du(x) = u  (x) d x since on taking the variation the independent variable x is frozen.3. §11. δx = 0.3. that is. This equation is not explicitly used in the FEM development. The TPE functional changes accordingly as = [u] ⇒ + δ = [u + δu]. Suppose that u(x) is changed to u(x) + δ u(x). that is. The physical meaning of conditions (i)–(ii) is the subject of Exercise 11. 11–6 . and are restated next. A displacement variation δu(x) is said to be admissible when both u(x) and u(x) + δ u(x) are kinematically admissible in the sense of the Principle of Virtual Work (PVW).6) The function δ u(x) and the scalar δ are called the variations of u(x) and .2.5) This is the strong (pointwise) equation of equilibrium in terms of the axial displacement. respectively. f3 u 4. Remark 11. The Minimum Total Potential Energy Principle The Minimum Total Potential Energy (MTPE) principle states that the actual displacement solution u ∗ (x) that satisfies the governing equations is that which renders stationary:2 δ = δU − δW = 0 iff u = u∗ (11. A piecewise. . δW = δW (1) + .3 u 1. and renders [u] a minimum over the class of kinematically admissible displacements. The last attribute explains the “minimum” in the name of the principle.3) to the derivation of FEM equations we replace the continuum mathematical model by a discrete one consisting of a union of bar elements.7) exists.3) may be decomposed into a sum of contributions of individual elements: = (1) + (2) + .§11. . . FEM discretization of bar member. f5 5 u(x) u2 u5 u4 u3 x u1 = 0 Figure 11. + δW (Ne ) = 0. Using standard techniques of variational calculus3 it can be shown that if E A > 0 and kinematic boundary conditions weed out any rigid motions.8) in which Ne denotes the number of elements. (11. the TPE functional (11.4. Therefore. + δ (Ne ) = 0. is unique. It is assumed that the left end is fixed.2. f4 (1) (2) (3) (4) 1 2 u 4 3 VARIATIONAL FORMULATION u 5.7) is an abbreviation for “if and only if”. . Functionals are scalars. . §11. . thus u 1 = 0.3. f1 u 2. For example.9) as well as to the stationarity condition (11. 3 See references in Notes and Bibliography at the end of Chapter.4 illustrates the subdivision of a fixed-free bar member into four two-node elements.4. 11–7 (11.4.10) . Figure 11. + (Ne ) (11. TPE Discretization To apply the TPE functional (11. §11.3.7) with respect to admissible variations u = u ∗ + δu of the exact displacement field u ∗ (x).7): δ = δ (1) + δ (2) + . The same decomposition applies to both its internal energy and external work potential components: δU = δU (1) + . + δU (Ne ) = 0.linear admissible displacement trial function u(x) is drawn underneath the mesh. . 2 The symbol “iff” in (11.3. for a discretization such as that shown in Figure 11. f2 u 3. the solution u ∗ (x) of (11. . Remark 11.5.5.3. which measures the distance from its left end.5(a) depicts a generic bar element e.11) is called a first variation form..b2. (c) element shape functions. which are labeled 1 and 2. as described next. e. In mechanics it states the Principle of Virtual Work or PVW for each element: δU e = δW e . 5 Note the notational change from the labels i and j of Part I. Using the fundamental lemma of variational calculus.) The element length is = L e .10) implies that for a generic element e we may write δ e = δU e − δW e = 0.g.12) 4 See. which is covered in more detail later.5 The element is referred to its local axis x¯ = x − x1 .3. The exact displacement u ∗ is replaced by an approximate displacement u ∗ (x) ≈ u e (x) (11. 11–8 . (b1. TPE-based bar element: (a) element configuration and axial displacement variation (plotted normal to element axis for better visibility). Chapter II of Gelfand and Fomin [297]. The mathematical concept of bar finite elements is based on approximating axial displacement u(x) over the element. Bar Element Discretization Figure 11.b3) displacement interpolation expressed in terms of linear shape functions.11) This variational equation is the basis for the derivation of element stiffness equations once the displacement field has been discretized over the element. (Bars are not necessary since the directions of x¯ and x are the same. §11.4 it can be shown that (11. It has two nodes. It is a special case of a more general expression called a weak form. The two degrees of freedom are u e1 and u e2 . which says that the virtual work of internal and external forces on admissible displacement variations is equal if the element is in equilibrium [588]. This will facilitate transition to multidimensional elements in Chapters 14ff. A two-node. These are called the local node numbers.Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT _ (a) u e (x) (e) 2 _ u1 = u2 + _ x x = xγ − x1 (b3) = Le = u1 1 (c) _ + 1 u2 1−x/ 1 N1e 0 _ x/ 0 (b2) u2 u1 u1 1 (b1) u2 N2e 1 Figure 11. (11. In mathematics (11. (11. In this case Ne reduces to a row vector.3. It follows from the fact that element displacement interpolations such as (11.3 VARIATIONAL FORMULATION over the finite element mesh. §11.17) . This approximate displacement.4. 2. For this element. with x¯ = x − x1 measuring the axial distance from the left node i.15) is a dimensionless coordinate.13) The functions N1e and N2e that multiply the node displacements u 1 and u 2 are called shape functions. which is graphically developed in Figure 11. See Figure 11. N e .13) are based on physical node values. The Strain-Displacement Matrix The axial strain associated with the trial function u e is  dNe dNe   e  1 du e u1 e  1 2 = [ −1 = (u ) = e= e u dx dx dx 2  ue 1 ] 1e u2  = B ue . . 11–9 (11. the shape functions are N1e = 1 − x¯ = 1 − ζ. The shape functions interpolate the internal displacement u e directly from the node values.b2.7. taken over all elements e = 1. is called the finite element trial expansion or simply trial expansion. Conversely. also known as a natural coordinate.3.5(b1. Here ζ = N2e = x¯ = ζ. The shape function N1e has the value 1 at node 1 and 0 at node 2. shape function N2e has the value 0 at node 1 and 1 at node 2. (11.16) in which B= 1 [ −1 1]. .14) x − x1 x¯ = . Note that d x = dζ and dζ = d x/ . while N is called the shape function matrix. is called the strain-displacement matrix. as in the development that follows. The most common choices fpr u e are polynomials in x. it must be C 0 continuous over and between elements. Note that B is constant over the element. Consequently. (11. §11.6. It can be expressed by the following interpolation formula. u e (x). They are pictured in Figure 11.b3):  u (x) = e N1e u e1 + N2e u e2 =[ N1e N2e ue ] 1e u2  = Ne ue . This is a general property of shape functions. .§11. Interpolation by Shape Functions In a two-node bar element the only possible polynomial choice of the displacement u e that satisfies the interelement continuity requirement is linear. This FE trial expansion must belong to the class of kinematically admissible displacements defined in ?.5(c). (11. that varies from 0 through 1 over the element. 6. U e and W e are only function of the node displacements ue . such as that used in the two-node bar. See Figure 11.) Note that U e and W e depend quadratically and linearly. hat function) for node 3 of a four-element bar discretization. do satisfy this requirement.Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT (b) (a) u (1) 1 (2) 2 (3) N3 (thick line) N3(2) N3(3) (4) 4 3 x 5 Figure 11. *Trial Basis Functions Shape functions are associated with elements. Taking the variation of e with respect to the node displacements gives6  e T e e ∂ e e δ = δu = δu u − f K = 0. Suffices for now to say that the shape functions (11. as well as the associated trial functions. 6 The 12 factor disappears on taking the variation because U e is quadratic in the node displacements. (11. respectively. shape and trial functions must satisfy a completeness requirement with respect to the governing variational principle.19) Here Ke and fe are called the element stiffness matrix and the element consistent nodal force vector.8. This condition is stated and discussed in later Chapters. in which i = 3. this function has the shape of a hat. e1 = 2.4.14). is associated with a node.4. (11. The trial basis function Ni is defined as  (e1) Ni if x ∈ element (e1) Ni (x) = N (e2) if x ∈ element (e2) (11. Thus it is also called a hat function or chapeau function. §11.21) These are the familiar element stiffness equations. on those displacements. (11.20) ∂ue Because the variations δue can be arbitrary. The Finite Element Equations In linear FEM the discretization process based on the TPE functional leads to the following algebraic form in the node displacements e = U e − W e . or simply basis function. which yields e  e T Ke ue = fe . see Appendix D. Remark 11. the bracketed expression must vanish. (This is a consequence of displacements being the only primary variable of the TPE functional. Suppose node i of a bar discretization connects elements (e1) and (e2). respectively.3.k.6. In addition to continuity. The concept is important in the variational interpretation of FEM as a Rayleigh-Ritz method. A trial basis function.18) i 0 otherwise For a piecewise linear discretization. The three scalars e . §11. Trial basis function (a. def 1 e T (u ) 2 in which U e = Ke ue and def W e = (ue )T fe . For a review on the calculus of discrete quadratic forms. and e2 = 3. Hence the foregoing names given to Ke and fe are justified a posteriori. 11–10 .a. whence d x = dζ . (11. This form is symmetrically expanded using the strain-displacement matrix relation (11.22).22) U =2 0 x1 Note that the integration variable x has been changed to the natural coordinate ζ defined in (11.4 THE FINITE ELEMENT EQUATIONS §11. by inserting e = e T = (ue )T BT and e = B ue into the first and second e of (11. respectively. to get    e  1  1 1 1 −1 u e e T T e 1 1 (u ) B E A B u dζ = 2 E A [ −1 1 ] 1e dζ. Also BT E A B = E A BT B since E A is a scalar:    e  1  1 EA 1 −1 u1 T e e 1 e T 1 e e E A B B dζ u = 2 [ u 1 u 2 ] dζ (11.19) this is expressible as 12 ue Ke ue . dζ = −1 1 0 (11.16). 2 u −1 1 2 0 0  T By (11.24) U = 2 (u ) e . Ke is extracted as  1 K = e  1 E A B B dζ = T 0 0 EA 2  1 −1 −1 1    1 1 1 −1 E A dζ. Its internal energy U e is  x2  1 e 1 1 e E A e dx = 2 e E A e dζ. For a homogeneous and prismatic bar of constant rigidity.4.§11.1. U =2 [ u e1 u e2 ] u 1 2 0 0 (11.23) The nodal displacements do not depend on position and can be moved out of the integral. The Stiffness Matrix We now apply the foregoing expressions to the two-node bar element.15) that varies from 0 through 1. .25) This is the bar element stiffness matrix. Since ue is arbitrary. 28) .  f = e x2 x1  1−ζ q ζ   dx = 0 11–11 1  1−ζ q ζ  dζ. (11.4.26) This is the same element stiffness matrix of the prismatic truss member derived in Chapters 2 and 5 by a Mechanics of Materials approach.27) W = ζ 0 0 x1 Since ue is arbitrary. but now obtained through a variational argument.19) comes from the element contribution to the external work potential W :    x2  1   e T 1 1−ζ def  T T e e q u dx = q N u dζ = u q dζ = ue fe . 1 1 −1 (11.25) collapses to EA K = e   −1 . 0 dζ = 1 and (11. §11.2.1 E A can be moved outside the integral. The Consistent Node Force Vector The consistent node force vector fe defined in (11. (11. 7. which may be formally represented as q I (x) = P δ(L) (11. The master stiffness equations constructed using the prismatic stiffness matrix (11.33) Here supercript m identifies the load case. Case III involves a “box” distributed load q(x) that is constant and equal to q0 from the fixed end x = 0 through midspan x = L/2. Case I involves a point load P at the free end.1..c.d) FEM discretization and load cases. fI I I = ..15). If q is constant over the element. in which ζ is defined by (11.. (11. A fixedfree.29) dζ. homogeneous. The consistent node forces computed from (11.. else 0 1 1 2 Figure 11. it may be taken out of the integral:   1 1−ζ e f =q (11..Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT .. constant EA x P (c) Load case II: q(x) varies linearly from q1 at x=0 through q2 at x=L 1 1 L 2 2 (d) Load case III: q(x)=q0 (constant) from x=0 through x=L/2..3. (b) Load case I: point load P at x=L 1 1 (a) .7. fI I = .28) with = L and x¯ → x are   L  2q1 + q2  q0 L  3  0 . elastic modulus E and cross section area A has the configuration illustrated in Figure 11. The two-node bar element is tested on the benchmark problem defined in Figure 11. It is discretized with a single element as shown in Figure 11.34) fI = P 1 6 q1 + 2q2 8 11–12 .30) where δ() denotes the delta function with argument x.d).31) in which ζ = 1 − x/L. Fixed-free. prismatic bar example: (a) configuration. ζ 0 This gives the same results as with the EbE lumping method of Chapter 7.26) with = L and x¯ → x are EA  1 L −1 −1 1  u m1 u m2  =  f 1m f 2m  = fm . Case II involves a distributed axial load that varies linearly from q1 = q(0) at the fixed end through q2 = q(L) at the free end: q I I (x) = q1 (1 − ζ ) + q2 ζ.c. prismatic bar of length L. and subjected to the three load cases pictured there.7(a). See Exercise 11. (11. Example 11.7(b. (11. and zero otherwise:  q I I I (x) = q0 H (x) − H (x − 12 L) ..32) in which H () denotes the Heaviside unit step function with argument x. (11. (b. EA u 2I I = (q1 + 2q2 )L 2 . But suppose that insisting on r (x) = 0 everywhere is too demanding. x − 12 L2 means (x − 12 L)2 if x ≥ 12 L.5. u I I (x) = .1.35) The analytical solutions for u(x). u I (x) = For case I this agreement is no surprise: the exact u I (x) is linear in x. which stands for residual. Confusion is compounded by the use of disparate terminology. §11. some application oriented. obtained on integrating the ODE E Au  + q = 0 with boundary conditions u(0) = 0. From Strong to Weak The governing differential equation for a bar member in terms of axial displacements is    E A u (x) + q(x) = 0. respectively. whereas the FEM interpolation would give q0 L 2 /(16E A) there. and set the result to zero:  L r (x) v(x) d x = 0. or if E A is constant: r (x) = E A u  (x) + q.38) is called a weak form. or E A u  (x) + q(x) = 0 if the rigidity E A is constant. which is often abbreviated to WF in the sequel. F(L) = E A u  (L) = P for case I and F(L) = E A u  (L) = 0 for cases II and III.5 WEAK FORMS On applying the fixed end support condition u m1 = 0 and solving for u m2 . else zero (Macauley’s bracket notation for discontinuity functions). The fact that the exact solution is verified at the free end node is an instance of the nodal exactness property discussed in §11.38) J= 0 Here v(x) is supposed to be sufficiently well behaved for the integral to exist. however. integrate over the problem domain. . There are so many variants and procedural kinks. that their position in the mathematical food chain is fuzzy. We would like to relax that condition so it is satisfied only in an average sense. which is contained in the span of the linear shape functions.5. Hence the term strong form (SF) used for this kind of mathematical model.36) In the expression of u I I I (x).37) The governing ODE may be compactly stated as r (x) = 0. which vary linearly.35). §11. To reduce such internal discrepancies the member may be divided into more elements.§11. are Px x [3(q1 +q2 )L 2 −3q1 L x+(q1 −q2 )x 2 ] q0  L x−x 2 +x− 12 L2 . This must hold at each point over the member span. Evaluating (11. Weak Forms Weak forms are expressions notoriously difficult to explain to newcomers. in error by 100%. Note that in cases II and III the FEM displacement solutions inside the element. 11–13 . 6E A u 2I I I = q0 L 2 .36) at x = L and comparing to (11. (11. For example the exact midspan displacement is u I I I ( 12 L) = q0 L 2 /(8E A) = u I I I (L).1. L]. one finds that the three computed end deflections are exact. They occupy an intermediate position between differential equations and functionals. will not agree pointwise with the exact solutions. say x ∈ [0. (11. (11. which do not. 8E A (11. we go through a specific example: the bar member. some generic. Ignoring boundary conditions for now. multiply the residual by a function v(x). the free end deflections are u 2I = PL . To shed some sunlight into this murky swamp.6. u I I I (x) = EA 6E A 2E A (11. No ambiguity so far. But for II and III this is far from obvious since the exact solutions are cubic and piecewise quadratic. in x. To accomplish that. and move it to the left-hand side:   r (x) = E A u  (x) + q(x). Replace the zero by r (x). 2E A (11. (11. homogeneous bar member (that is.43) ODE aficionados would recognize this as the general solution of E Au  + q0 = 0 so Uncle Boris has done the job.41) in which ai and bi are numerical coefficients. v(x) = b0 + b1 x + b2 x 2 . We will call the end result a Galerkin solution. b1 . x 2 } of dimension 3.40) gives a0 = 0 and a1 = q0 /(E A) whence the final solution is q0 x(2L − x). F(L) = E A u  (L) = 0. which is spanned by exactly the same basis. (11. prismatic.7 .Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT Function v(x) receives two names in the literature: test function in a general mathematical context. The assumed u(x) is now called a trial function.41) we find that a0 = 0 and a1 = −2a2 L. (11. consider again a fixed-free. Replacing (11. under uniform load q(x) = q0 along its length and zero load at the free end. The trial function becomes u(x) = a2 x (x − 2L). b2 }.40) We will restrict both u(x) and v(x) to be quadratic polynomials: u(x) = a0 + a1 x + a2 x 2 . Instead of applying the end conditions a posteriori we may try to incorporate them a priori into the trial function assumption. §11. There is a special name for the scenario when the trial and weight function bases coalesce: the Galerkin method. On extracting the expressions that multiply those coefficients we obtain the same equation thrice: 2E A a2 + q0 = 0. The WF (11. Consequently the Galerkin solution before BC is u(x) = a0 + a1 x − q0 2 x .41) into (11.39) we get J= L (6b0 + 3b1 L + 2b2 L 2 ) (2E A a2 + q0 ). more terminology kicks in. Once assumptions such as those in (11.5. which is spanned by the linear-space basis {1. (11. and weight function (also weighting function) in the context of approximation methods based on weak forms. The assumed v(x) is called a weight function. x. Applying the end conditions (11.45) Introduced by Boris Galerkin in 1912. see Notes and Bibliography 11–14 . whereas a0 and a1 remain arbitrary. On enforcing (11.2. In what follows both terms will be used within the appropriate context.40) it may be verified that this is the exact analytical solution.41) are made. real in this case. 6 (11.38) becomes  L  E A u  (x) + q0 v(x) d x = 0. E A is constant).44) u(x) = 2E A Replacing into (11.39) J= 0 subject to the end conditions u(0) = 0.37) and (11. For a brief account of the general methodology. Thus a2 = −q0 /(2E A). 7 (11. Weak Form Based Approximation Example To show how weak forms can be used to generate approximate solutions.40) into the assumed u(x) of (11.42) Now J must vanish for any arbitrary value of {b0 . Second derivatives of u(x) appear. A look at (11.41) are used? Then Galerkin goes gaga. we can apply transformations to the residual integral as done in the next subsection. and the exact solution (11. Accordingly only one weight basis function is needed: either 1. §11. This places unequal restrictions on smoothness of the trial and test function spaces. x or x 2 does the job. See Exercise 11.3. several procedural choices are apparent. volatility zooms up. Furthermore.§11. Compared to the well ordered world of variational-based FEM. linearly and the same quadratic polynomial assumptions (11. If we allow the trial and weight function spaces to differ.39) reveals an unpleasant asymmetry. say. confusion reigns supreme. Even for this trivial example. but none of v(x). Balanced Weak Forms Some method in the madness can be injected by balancing. Integration by parts restores derivative order L .5.5 WEAK FORMS and only one free coefficient remains.8 What happens if the load q(x) varies.44) is obtained again.8. L . 5. as may be expected.or post-imposing the end conditions (11. For a bar with variable axial rigidity replace E A u  by (E A u  ) in the first integrand. proclaim that the trial function must satisfy all BC ab initio. (11. or simply a balanced weak form (BWF). Replacing 0 E A u  v d x = − 0 E A u  v  d x + (E Au  )v 0 and rearranging terms yields  L  L L    J= E A u (x) v (x) d x − q(x) v(x) d x − E A u  (x) v(x) 0 .47) J= 0 0 Indeed this is the first variation of the TPE functional:   L   1 u (x) E A u (x) d x − =U −W = 2 0 8 L q(x) u(x) d x (11. and the same final solution. for example Crandall [159]. set the test function to be an admissible variation of u(x): v(x) = δ u(x). §11. [260. Then assume that J is the first variation of a functional :  L  L L def    E A u (x) δu (x) d x − q(x) δu(x) d x − E A u  (x) δu(x) 0 = δ .46) and one of the fundamental tools of Analytical Mechanics: the Principle of Virtual Work (PVW). and (ii) end BC appear explicitly in the non-integral term. this rule applies to both trial and test functions since the spaces coalesce).40).L balance. Generally the latter choice is far more convenient in a computer implementation. It displays obvious advantages: (i) same smoothness requirements for assumed u and v. neatly factored into essential and natural.46) 0 0 This will be called a balanced-derivative weak form. Again one has the choice of pre. In practice this rule can be often relaxed further. applying essential BCs at the last moment. (11. e. 11–15 . Principle of Virtual Work as Balanced Weak Form There is a close relationship between the BWF (11.2.g. relax that rule to BC of essential type (in Galerkin methods. On repeating the Galerkin procedure of the previous subsection with the assumptions (11. Later ones. as in the example of §11.48) 0 Some early works covering weighted residual methods. To exhibit it. in which δu(x) strongly satisfies all essential BC.41) one finds an identical J .261]. A minor flaw is that the original residual is no longer clearly visible.4.5.. If so. 11–16 . This 0 immersion is a bit tricky. The only applied loads are point forces at the nodes. *Accuracy Analysis Low order 1D elements may give surprisingly high accuracy. Solve these equations for the coefficients ai . These are the trial function space and the test function space. This is the subject of Exercise 11. §11. respectively:   u(x) = span φi (x). (11. which may be real or complex depending on the nature of the problem. 1 ≤ i ≤ Nv  (11.9 9 The internal equilibrium equation p  + q = E A u  + q = 0 is trivially verified because q = 0 from the second assumption.5.  v(x) = span ψi (x).5.Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT Hence J = 0 is the same as δ = 0 or δU = δW .13) and (11. and depends on redefining q(x) to include prescribed end point forces such as N (L) = E A u  (L) = P through delta functions. any u(x) and v(x) can be represented as linear combination of the basis functions: u(x) = Nu  ai φi (x). which are spanned by basis functions φi (x) and ψ(x). This leads to a rich class of approximation methods unified under the name Method of Weighted Residuals or MWR.5. The distributed load q(x) is zero between nodes.9. and replace in the first of (11. into δW . §11.6. element by element. respectively. The bar properties are constant along the length (prismatic member). but does not exhaust all possibilities of using a weak form as source for obtaining numerical solutions. The MWR methodology is of course not restricted to one space dimension. and extract the Nv expressions that are coefficients of the bi . Some references are provided under Notes and Bibliography. and u  = 0 because of shape function linearity.2.50) i=1 Here ai and bi are scalar coefficients. This relationship can be used to prove an important property: Galerkin method is equivalent to a variational formulation if the residual is the Euler-Lagrange equation of a functional. which is the PVW for an elastic bar member.6. perform the necessary integrations.50) to get the approximate solution u(x).1. 2. It also extends to time-dependent problems. L  Remark 11. Both u(x) and v(x) are restricted to belong to linear function spaces of finite dimension Nu and Nv . *Nodal Exactness and Superconvergence Suppose that the following two conditions are satisfied: 1.47) go? Actually. This phenomenon is studied in this advanced section as it provides an introduction to modified equation methods and Fourier analysis along the way. 1 ≤ i ≤ Nu . In particular the lowly two-node bar element can display infinite accuracy under some conditions. all of the governing equations listed in Figure 11. The main generalization consist of allowing trial and test (weight) functions to be different.14) is the exact solution over each element since constant strain and stress satisfy. a linear axial displacement u(x) as defined by (11.49) in which usually Nu = Nv . v(x) = i=1 Nv  bi ψi (x). Insert these into the weak form. The key idea is as follows. *Weighted Residual Methods Galerkin method is widely used in computational mechanics. It can be merged smoothly with the FEM concept of piecewise approximation using shape functions. Where does the boundary term E A u  (x) δu(x) in (11. §11. Since the spaces are linear. 52) 0 Here N j (x) is the “hat” trial basis function for node j. prismatic two-node bar elements.2.11 For a 1D lattice of equal-length. the solution is no longer nodally exact but convergence at the nodes is extremely rapid (faster than could be expected by standard error analysis) as long as consistent node forces are used. This phenomenon is called superconvergence in the FEM literature. It follows that if the foregoing conditions are verified the FEM solution is exact. That is the reason behind the truss discretizations used in Chapters 2–3: one element per member is enough if they are prismatic and loads are applied to joints. 0 and 1 at nodes i.554].8. The total length of the lattice is L. an interesting and more difficult result is: the solution is nodally exact for any loading if consistent node forces are used. Such models are called nodally exact.8. 12 A patch is the set of all elements connected to a node.6 *ACCURACY ANALYSIS (a) (b) q(x) j i xi = xj − xj xk = xj + 1 − (xj −x)/ = 1−ψ k Trial basis function Nj for node j 1 EA = const Two-element patch ijk L i 1 + (x j−x)/ = 1+ψ j k Figure 11.6. Superconvergence patch analysis: (a) lattice of bar elements. and ψ = (x − x j )/ is a dimensionless coordinate that takes the values −1. *Fourier Patch Analysis The following analysis is based on the modified differential equation (MoDE) method of Warming and Hyett [?] combined with the Fourier patch analysis approach of Park and Flaggs [553.8. (11. depicted in Figure 11. (11.51) in which the node force f j is obtained by consistent lumping:   xk fj = q(x)N j (x) d x = xi  0 1 q(x j + ψ )(1 + ψ) dψ + −1 q(x j + ψ )(1 − ψ) dψ. If conditions such as equal-length are relaxed. as illustrated in Figure 11.8. Consider a lattice of two-node prismatic bar elements of constant rigidity E A and equal length . (b) two element patch. it agrees with the analytical solution of the mathematical model. From the lattice extract a patch12 of two elements connecting nodes xi .§11.7. and several elements per member may be beneficial if spurious mechanisms are avoided. The FEM patch equations at node j are  EA [ −1 2 −1 ] ui uj uk  = fj. This is proven in the subsection below. The system is subject to an arbitrary axial load q(x). 11 These can happen when transforming such elements for 2D and 3D trusses. If q(x) is expanded 10 In variational language: the Green function of the u  = 0 problem is included in the FEM trial space. See Exercise E11. respectively.10 Adding extra elements and nodes would not change the solution. §11. 11–17 . x j and xk as shown in Figure 11. that is. j and k. This result underlies the importance of computing node forces correctly. What happens if the foregoing assumptions are not met? Exactness is then generally lost. in this case j. The only requirement on q(x) is that it has a convergent Fourier series in the space direction. 6..56) This is an ODE of infinite order.58) 0 Divide [0. f jm = qm m=1 sin2 ( 12 βm ) 1 2 2 β 4 m eiβm x2 . . If so u jm = −βm2 u jm . E Aβm2 (11.56) to qm eiβm x is harmonic: u jm eiβm x . expand the displacement by Taylor series centered at node j. (11. The response to a uniform q = q0 is a quadratic in x. 2! j 4! j 6! = fj. . In other words. u ivjm = βm4 u jm . (11. In between nodes the two solutions will not agree. §11. 11–18 .51) to get  −2E A  1  2 iv 4 vi u + u + uj + .54) shows that u jm = u ∗m for any m > 0. Replace these series into (11. Coefficients a and b will affect both K and f. u jm = 4E A sin2 ( 12 βm ) u jm = f jm = qm 1 22 2 eiβm x j .56) and the original ODE: E Au  + q = 0 have the same value at x = x j for any load q(x) developable as (11. *Robin Boundary Conditions Suppose that for a bar of length L one has the following end conditions: u  (0) = au(0) + b at x = 0 and u  (L) = au(L) + b at x = L.L] into Ne elements and N = Ne + 1 nodes. in which a and b are given coefficients. Those are called Robin BCs in the literature.53). (11. . βm = mπ/L .53) m=1 (the term m = 0 requires special handling) the exact solution of the continuum equation E A u  + q = 0 is u ∗ (x) = M  u ∗m eiβm x . This proves nodal exactness. and it is not difficult to prove nodal exactness. etc. K the master stiffness matrix and f the master force vector. Consequently u j = u ∗j . and u k = u j + u j + 2 u j /2 + 3 u j /3! + 4 u ivj /4! + . which compared with (11.. . Adjoining them as Courant penalty terms gives the functional  L [ 12 E A (u  )2 − q u] d x + 12 [u  (0) − au(0) − b]2 + 12 [u  (L) + au(L) + b]2 .3.. insert into F(u) to get Fd (u) = 12 uT Ku − fT v.57) Solving gives u jm = qm eiβm x j /(E Aβm2 ). 2! 4! 6! β 4 m (11. the MoDE (11. F(u) = (11. It can be reduced to an algebraic equation by assuming that the response of (11.13 2E A βm2 The case m = 0 has to be treated separately since the foregoing expressions become 0/0.Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT in Fourier series q(x) = M  qm eiβm x .54) Evaluation of the consistent force using (11. .52) gives fj = M  f jm . Do C 0 linear interpolation over each element. . in which u is the vector of node values. u ∗m = m=1 qm eiβm x . and the MoDE becomes   sin2 ( 1 βm ) β 2 2 β 4 4 1 − m + m − . 13 The FEM solution varies linearly between nodes whereas the exact one is generally trigonometric.55) To construct a modified differential equation (MoDE). Evaluate at i and k: u i = u j − u j + 2 u j /2! − 3 u j /3! + 4 u ivj /4! + . 147]. The proof of the MPE principle can be found in texts on variational methods in mechanics. whether deterministic or chaotic. Other attempts at unification during this period may be found in [19.327.2.5. moments (1932)..g. For example: Langhaar [435]. the PVW was placed on firm mathematical grounds by Lagrange in the late XVIII Century [430]. Curved bar elements. three of which are mentioned next. The topic has recently attracted interest from applied mathematicians because modified equations provide a systematic tool for backward error analysis of differential equations: the discrete solution is the exact solution of the modified problem. but as accessories to 2D and 3D high order continuum elements (for example. The Robin BCs at x = 0 and x = L will affect the stiffness and force contributions of the first and last elements. al. It was noted that weak forms occupy an intermediate position between two older classical areas: differential equations (introduced in the XVII Century by the Calculus founders) and variational forms (introduced by Euler in the XVIII Century). Elements that ”touch” the convention boundary are affected. 11–19 . which is now available in an inexpensive Dover edition. for example [749].554]. were unified in 1956 under the label Method of Weighted Residuals or MWR. These elements are rarely useful on their own right.) For that reason they are not considered here.e.. by Crandall [159]. The first correct derivation of modified equations appeared in [783]. Tonti diagrams were introduced in the 1970s in papers now difficult to access. least squares (1928). But their rapid development as tools for producing approximate solutions of ODEs and PDEs took place in the early XIX Century.2. In that case the heat flux is proportional to the difference of the (unknown) surface temperature and that of the cooling fluid. but not those of interior elements. and collocation (1937). especially Galerkin’s. This kind of boundary value problem (i. which is the most readable “old fashioned” treatment of the energy principles of structural mechanics. For arbitrary loads it was proven by Park and Flaggs [553.dic. with a clear treatment of virtual work. which led to incorrect conclusions. Recommended references along these lines are [318. for example Przemieniecki [596].6. The first accuracy study of FEM discretizations using modified equation methods is by Waltz et.709].it/perspage/discretephysics The fundamentals of Variational Calculus may be studied in the excellent textbook [297]. e. These can be derived using isoparametric mapping. Refined bar models. Notes and Bibliography Vanishing of the first variation: δ Fd = 0 yields the FEM equations Ku = f to be solved for u. Adding internal nodes we can pass from linear to quadratic and cubic shape functions. Matrices for straight bar elements are available in any finite element book. Use in 2D and 3D truss structures. with Robin BCs) is common in heat conduction and heat transfer with convection given over cooling surfaces.units. from http://www. (Out of print but used copies may be found via the web engines cited in §1. The only additional ingredients are the local-to-global transformations discussed in Chapters 3 and 6. Scanned images are available. Five important variants are: Galerkin (1915). Nodal exactness of bar models for point node loads is a particular case of a theorem by Tong [746]. as well as a few others of less importance. Some weak forms in disguise are also ancient. as enabling devices to generate finite element equations developed rapidly following the pioneer paper [820]. These. [780]. Notes and Bibliography The foregoing account pertains to the simplest structural finite element: the two-node bar element. The 3-node bar element is developed in exercises assigned in Chapter 16. The use of MWR methods. howewer. or is inconvenient to use. a device introduced later. however their procedures were faulty. The chief motivation was to accommodate application problems where a classical variational formulation does not exist.) The elegant treatment by Lanczos [434] is recommended as reading material although it is more oriented to physics than structural mechanics. subdomain (1923). to model edge reinforcements. who followed a variant of the scheme of §11. This is particularly important for the study of long term behavior of discrete dynamical systems.§11. For bar members these developments may be generalized in several directions. 10. There is a monograph [781] devoted to the subject. References Referenced items moved to Appendix R.Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT A different technique is used in Exercise 11. it covers only Poisson problems but provides a comprehensive reference list until 1995. The budding concept of superconvergence. 11–20 . is outlined in the book of Strang and Fix [698]. which emerged in the late 1960s. A=Ai*(1-ζ )+Aj*ζ .{x. (E11. and ζ = x e / is the dimensionless coordinate defined in §11. ζ =x/Le. Be={{-1. In this and following scripts Le stands for . namely ruling out the possibility of gaps or interpenetration as the bar material deforms.0.Be.6.1}}/Le.4. EXERCISE 11.29) and . Show that this yields the same answer as that of a stiffness of a constant-area bar with cross section 1 (Ai + A j ). Ke=Simplify[Ke].Le}]. Print["Ke for varying cross section bar: ".Ke//MatrixForm]. to each node. Note: the following Mathematica script may be used to solve this exercise:14 2 ClearAll[Le.x. Ke=Integrate[Em*A*Transpose[Be].1 [D:10] Explain the kinematic admissibility requirements stated in ? in terms of physics. Show that this vector is the same as that obtained with the element-by-element (EbE) “lumping” method of §8.Exercises Homework Exercises for Chapter 11 Variational Formulation of Bar Element EXERCISE 11.3.1) where Ai and A j are the areas at the end nodes. derive the stiffness matrix for a tapered bar element in which the cross section area varies linearly along the element length: A = Ai (1 − ζ ) + A j ζ.Ai.Aj]. which simply assigns half of the total load: 12 ρg A .2 [A/C:15] Using (11. EXERCISE 11.25).3 [A:10] Find the consistent load vector fe for a bar of constant area A subject to a uniform axial force q = ρg A per unit length along the element. Hint: use (11.A.Em. EXERCISE 11.x].] at the start of the script is recommended programming practice to initialize variables and avoid “cell crosstalk. fe=Integrate[q*Ne. and constant density ρ. ClearAll[A]. in which x ≡ x e . end areas Ai and A j with A interpolated as per (E11.” In a Module this is done by listing the local variables after the Module keyword. Print["fe for uniform load q: ".ρ. Taking axis x along the rotating bar with origin at node i. rotates on a plane at uniform angular velocity ω (rad/sec) about node i. EXERCISE 11. fe=Simplify[fe].. A j . Ne={{1-ζ . A=Ai*(1-ζ )+Aj*ζ .A.5 [A/C:20] A tapered bar element of length . The ClearAll[A] before the last statement is essential. ω and . ζ =x/Le.{Ai->A. else A would retain the previous assignation. 11–21 .1 0 ζ dζ = /. q=ρ*g*A.fe//MatrixForm].{x. and specialize the result to the prismatic bar A = Ai = A j . Print["fe check: ". the centrifugal axial force is q(x) = ρ Aω2 x along the length.Le. Note: the following Mathematica script may be used to solve this exercise:15 ClearAll[q.Aj. Find the consistent node forces as functions of ρ.4 [A/C:15] Repeat the previous calculation for the tapered bar element subject to a force q = ρg A per unit length. Check that if Ai = A j one recovers f i = f j = 12 ρg A . in which A varies according to (E11.1).g..Ai.ζ }}.Simplify[fe/.Aj->A}]//MatrixForm].Le}].1) whereas ρ and g are constant. Partial result check: f j = 13 ρω2 A 2 for A = Ai = A j . Ai .0. 14 15 The ClearAll[. EXERCISE 11. The trial and weight function assumptions are the quadratic polynomials (11. and differentiate the MoDE (11.” Take up again the example of §11. I.. Show that the integral (11.2) and that the resulting 3 equations for a2 are inconsistent unless q1 = q2 . fe=Simplify[ Integrate[q*Ne.x]. Prove that (11.56) repeatedly in x while truncating all derivatives to a maximum order n ≥ 2.2. close to research paper level].Chapter 11: VARIATIONAL FORMULATION OF BAR ELEMENT EXERCISE 11. Here is a partial fix: make the test function satisfy the essential BC a priori. Only one weight function gives the correct solution at x = L.6 [A:15] (Requires knowledge of Dirac’s delta function properties. which one? Note that the Galerkin method is generally viewed as the “most reliable” member of the MWR tribe. But unforeseen surprises have a silver lining: more papers can be written to explain them.Q.8 [C+D:15] This exercise illustrates “Galerkin surprises.) Find the consistent load vector fe if the bar is subjected to a concentrated axial force Q at a distance x = a from its left end. as in (11. thus linking the PVW with the TPE functional. 2–3 and 1–3.41). ζ =x/Le. 4.a. Prove nodal exactness of the two-node bar element for arbitrary but Taylor expandable loading without using the Fourier series approach. at the midpoint of members 1–2.9 [A:20]. EXERCISE 11. Show that the original ODE: E Au  + q = 0.fe//MatrixForm]. in which δ(a) is the one-dimensional Dirac’s delta function at x = a. emerges as an identity regardless of how many derivatives are kept.ζ }}.10 [A:35.5 for a hint on how to treat the boundary term in (11. q=Q*DiracDelta[x-a].5. See Remark 11. but suppose now that the axial load varies linearly. Try Dr. Print["fe for point load Q at x=a: ".q. Ne={{1-ζ .47) is the first variation of (11.39) is given by    12 J/L = b0 24E A a2 + 6(q1 +q2 ) + b1 12E A a2 + 2(q1 +2q2 ) + b2 8E A a2 + (q1 +3q2 ) . . . C. Explain physically what happens. EXERCISE 11. Use (11. Hints: expand q(x) = q(x j ) + ( ψ)q  (x j ) + ( ψ)2 q  (x j )/2! + . (E11.52).{x. compute the consistent force f j (x) from (11. respectively.Infinity}] ].28). Note: the following script does it by Mathematica.31). EXERCISE 11. Clueless proposes “improving” the result for the example truss by putting three extra nodes.48). Dr.-Infinity. but it is overkill: ClearAll[Le. with q(x) = Q δ(a). 5 and 6. His “reasoning” is that more is better. where ψ = x − x j is the distance to node j.7 [C+D:20] In a learned paper.47). 11–22 .’s suggestion using the Mathematica implementation of Chapter 4 and verify that the solution “blows up” because the modified master stiffness is singular. M. 12 Variational Formulation of Plane Beam Element 12–1 . . .2 Shape Functions . . . References . . . . . . .1 Terminology . .5 Strains. . . . .6 §12. . . . . . 12–2 12–3 12–3 12–3 12–3 12–4 12–4 12–4 12–5 12–5 12–5 12–5 12–6 12–7 12–8 12–8 12–9 12–10 12–11 12–15 12–15 12–16 . . . . . . . Notes and Bibliography . . . . . . . §12. . . . . . . . . . . . . . . . . . . . §12.6. .2 Kinematics . . . . . . §12. . .3. . . . .2. Stresses and Bending Moments . .3. . . . . . . . . . . . . . . . . . . . . . . . .5 §12. . . . . . . . . . . .2 §12. . .4 §12. §12.4 Support Conditions . . .3 Assumptions of Classical Beam Theory . . . . . . §12. . . . . . .2 Mathematical Models . . . . . . .2. . . . . . . The Finite Element Equations . . . . . Total Potential Energy Functional . . §12. . . . . . . . . . . . §12. . . . . . . . .6. . . §12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . §12. §12. . . . . .1 The Stiffness Matrix of a Prismatic Beam . . . . . . . .3 §12. .Chapter 12: VARIATIONAL FORMULATION OF PLANE BEAM ELEMENT TABLE OF CONTENTS Page §12. . . . §12. . . Beam Finite Elements . . . . . Exercises . . . The Bernoulli-Euler Beam Theory . . . . . . .3. . . .5. . . . . . . . .1 Element Coordinate Systems . .3 Loading . . . .3. . . . .2. . . §12. . . . . . . . . . . . . What is a Beam? . . . . . . §12. . . . . . Introduction . . §12. .2 Consistent Nodal Force Vector for Uniform Load . . .5. . . . . . . .1 §12. . . . . . . . . . . . . . . .1 Finite Element Trial Functions . . . . . .3. . Beam transverse loads are primarily resisted by bending action.1. This Chapter applies that technique to a more complicated one-dimensional element: the plane beam described by engineering beam theory. which was illustrated for the bar element. §12. Figure 12. A beam is a bar-like structural member whose primary function is to support transverse loading and carry it to the supports. A beam is straight if its longitudinal axis is straight. Mathematically. To meet this requirement both deflections and slopes are matched at nodal points. The intersection of planes normal to the longitudinal dimension with the beam member are called cross sections.1. 12–3 . particularly in Civil and Mechanical Engineering. What is a Beam? Beams are the most common type of structural component.2 WHAT IS A BEAM? §12. Bending produces compressive longitudinal stresses in one side of the beam and tensile stresses in the other. transverse shears.1. It is prismatic if its cross section is constant. Introduction The previous Chapter introduced the TPE-based variational formulation of finite elements. If it is subjected primarily to bending forces.2. Slopes may be viewed as rotational degrees of freedom in the small-displacement assumptions used here. This dimension is called the longitudinal dimension or beam axis. A beam resists transverse loads mainly through bending action. and possibly torsion. This Chapter considers only plane beams. The combination of tensile and compressive stresses produces an internal bending moment. §12.§12. If the beam is subject primarily to bending and axial forces. See Figure 12. If the internal axial force is compressive. This moment is the primary mechanism that transports loads to the supports. Neutral surface Compressive stress Tensile stress Figure 12. axial stretching or compression. A plane beam resists primarily transverse loading on a preferred longitudinal plane. By “bar-like” it is meant that one of the dimensions is considerably larger than the other two. it is called a beam-column. A longitudinal plane is one that passes through the beam axis. the main difference of beams with respect to bars is the increased order of continuity required for the assumed transverse-displacement functions to be admissible. A spatial beam supports transverse loads that can act on arbitrary directions along the cross section. Terminology A general beam is a bar-like member designed to resist a combination of loading actions such as biaxial bending. The mechanism is illustrated in Figure 12.2. Not only must these functions be continuous but they must possess continuous x first derivatives. it is called simply a beam. the beam has also to be designed to resist buckling.2.2. The two regions are separated by a neutral surface of zero stress.1. A beam is a structural member designed to resist transverse loads. rotations and deformations are considered so small that the assumptions of infinitesimal deformations apply.3. The material is assumed to be elastic and isotropic. 5.1. Therefore a neutral surface that undergoes no axial strain exists between the top and the bottom. Cross section variation. such as reinforced concrete. 2 If the beam is homogenous. The simplest and best known models for straight.Chapter 12: VARIATIONAL FORMULATION OF PLANE BEAM ELEMENT §12.2. which collects advanced material. All other contributions. a reinforced concrete beam — the neutral axes passes through the centroid of an “equivalent” cross section. Material model.3. Element Coordinate Systems Under transverse loading one of the top surfaces shortens while the other elongates. Assumptions of Classical Beam Theory The Bernoulli-Euler or classical beam theory for plane beams rests on the following assumptions: 1. The intersection of this surface with each cross section defines the neutral axis of that cross section. The Bernoulli-Euler Beam Theory §12. Elements based on Timoshenko beam theory. Transverse deflections. §12. Linearization. Heterogeneous beams fabricated with several isotropic materials. Normality. Because beams are actually three-dimensional bodies.2 1 The qualifier “Hermitian” relates to the use of a transverse-displacement interpolation formula studied by the French mathematician Hermite. 3. also known as C 0 elements. see Figure 12. and the Timoshenko beam theory. incorporate a first order correction for transverse shear effects. Strain energy. 4. 2.3. Mathematical Models One-dimensional mathematical models of structural beams are constructed on the basis of beam theories.5. This topic is covered in Mechanics of Materials textbooks.2.1.1 These are also known as C 1 elements for the reason explained in §12. and is the one emphasized in this Chapter. The longitudinal axis is straight and the cross section of the beam has a longitudinal plane of symmetry. are ignored. If the beam is fabricated of different materials — for example. 6. all models necessarily involve some form of approximation to the underlying physics. The cross section is either constant or varies smoothly. Both models can be used to formulate beam finite elements. The support conditions are also symmetric about this plane.2. 12–4 . This model assumes additional importance in dynamics and vibration. the neutral axis passes through the centroid of the cross section. Planar symmetry. for example Popov [595]. The internal strain energy of the member accounts only for bending moment deformations. The resultant of the transverse loads acting on each section lies on that plane. This model neglects the effect of transverse shear deformations on the internal energy.2. Plane sections originally normal to the longitudinal axis of the beam remain plane and normal to the deformed longitudinal axis upon bending. The Bernoulli-Euler beam theory leads to the so-called Hermitian beam elements. The Bernoulli-Euler theory is that taught in introductory Mechanics of Materials courses. prismatic beams are based on the Bernoulli-Euler beam theory (also called classical beam theory and engineering beam theory). notably transverse shear and axial force. The Timoshenko beam model is presented in Chapter 13. are not excluded. The term has nothing to do with the mathematical model used. §12. 3. Axis z is directed along the neutral axis. §12. The normality assumption of the Bernoulli-Euler model can be represented mathematically as u(x.5. forming a RHS system with x and y. it contributes Fδ(a) to q(x). (12. This is permissible because θ represents to first order. Terminology and choice of axes for Bernoulli-Euler model of plane beam.3. These are illustrated in Figures 12.3. at neutral axis height. Loading The transverse force per unit length that acts on the beam in the +y direction is denoted by q(x). The origin is placed at the leftmost section. Kinematics The motion under loading of a plane beam member in the x. as illustrated in Figure 12. it contributes Cδ  (b) to q(x).§12.3. y) where u and v are the axial and transverse displacement components. ∂x v(x. y) = −y ∂v(x) = −yv  = −yθ. If the concentrated moment C acts at x = b.4. if a transverse point load F acts at x = a. respectively. 12–5 .v _ zc L Neutral surface x. §12. u z Neutral axis Beam cross section Centroid Symmetry plane Figure 12. according to the kinematic assumptions of this model.3 y.1) v(x. is of no interest. §12.2. Concentrated loads and moments acting on isolated beam sections can be represented by the delta function and its derivative. respectively. The Cartesian axes for plane beam analysis are chosen as shown in Figure 12. The total length (or span) of the beam member is called L. y plane is described by the two dimensional displacement field   u(x. For example.3. y) . Two canonical cases are often encountered in engineering practice: simple support and cantilever support. the rotation of a cross section about z positive CCW. in which case the support conditions are of more complex type. v THE BERNOULLI-EULER BEAM THEORY q(x) y. (12. Beams often appear as components of skeletal structures called frameworks. which is primarity due to Poisson’s ratio effects. Axis x lies along the longitudinal beam axis. of an arbitrary beam material point.4 and 12.3. where δ  denotes a doublet acting at x = b. Axis y lies in the symmetry plane and points upwards. positive CCW.3.2) Note that the slope v  = ∂v/∂ x = dv/d x of the deflection curve has been identified with the rotation symbol θ . y) = v(x). Support Conditions Support conditions for beams exhibit far more variety than for bar members. The motion in the z direction. ..3.. Figure 12.5) A  Here I ≡ Izz denotes the moment of inertia A y 2 d A of the cross section with respect to the z (neutral) axis.5. which to first order is κ ≈ d 2 v/d x 2 = v  . The bending stress σ = σx x is linked to e through the one-dimensional Hooke’s law σ = Ee = −E y d 2v = −E yκ. which is defined as the cross section integral  d 2v M= −yσ d A = E 2 dx A  y 2 d A = E I κ. Positive sign convention for M and V . .... and axial strains ex x .. as illustrated in Figure 12. dx2 (12..Chapter 12: VARIATIONAL FORMULATION OF PLANE BEAM ELEMENT .. of the beam cross section. The product E I is called the bending rigidity of the beam with respect to flexure about the z axis.4. This convention explains the negative sign of y in the integral (12. which will be abbreviated to e. Bending produces axial stresses σx x .6..7.4) where E is the longitudinal elastic modulus.. Strains...5. A simply supported beam has end supports that preclude transverse displacements but permit end rotations.5).2): e= ∂u d 2v ∂ 2v = −y 2 = −y 2 = −yv  = −yκ. The strains can be linked to the displacements by differentiating the axial displacement u(x) of (12.3) Here κ denotes the deformed beam axis curvature... y M x z V Figure 12. which will be abbreviated to σ .. (12. §12. The bending moment M is considered positive if it compresses the upper portion: y > 0.. .. The most important stress resultant in classical beam theory is the bending moment M... ∂x ∂x dx (12.6. 12–6 . Airplane wings and stabilizers are examples of this configuration. Figure 12. Stresses and Bending Moments The Bernoulli-Euler or classical model assumes that the internal energy of beam member is entirely due to bending strains and stresses. A cantilever beam is clamped at one end and free at the other.. .... The governing equations of the Bernoulli-Euler beam model are summarized in the Tonti diagram of Figure 12. 8) 0 The three functionals . in the Bernoulli-Euler model U includes only the bending energy:  U= 1 2  σe dV = V 1 2 L  Mκ d x = 0 1 2 L  E Iκ dx = 2 0 1 2 L  2 E I v  d x = 0  1 2 L v  E I v  d x. U and W must be regarded as depending on the transverse displacement v(x). because v  = κ appears in U . This number is called the variational index. Remark 12.5 Prescribed end displacements Displacement BCs Transverse displacements Distributed transverse load v(x) q(x) Kinematic κ = v'' BEAM FINITE ELEMENTS M''=q Equilibrium M = EI κ Curvature κ(x) Bending moment Force BCs Prescribed end loads M(x) Constitutive Figure 12. 12–7 . Such kind of distributed loading is uncommon in practice although in framework analysis occasionally the need arises for treating a concentrated moment between nodes.6) where as usual U and W denote the internal and external energies.4. If there is an applied distributed moment m(x) per unit of beam length. Note that [v] includes up to second derivatives in v. This is further elaborated in Exercises 12. (12.1. This continuity requirement can be succintly stated by saying that admissible displacements must be C 1 continuous. respectively. U [v] and W [v].8) must be augmented with a 0 m(x)θ(x) d x term.5. have continuous first derivatives (slopes or rotations). When this dependence needs to be emphasized we write [v]. This condition guides the construction of beam finite elements described below. admissible displacements v(x) must be continuous. §12.7. 0 (12. Total Potential Energy Functional The total potential energy of the beam is =U −W (12. the external energy L (12. The Tonti diagram for the governing equations of the Bernoulli-Euler beam model.7) The external work W accounts for the applied transverse force:  W = L qv d x. Variational calculus tells us that since the index is 2.§12.4 and 12. and satisfy the displacement BCs exactly. As previously explained. 9) θ2 P'(x+u. Deflection of a clamped-SS beam discretized with four elements. which pictures the undeformed and deformed configurations. grossly exaggerated for visibility. The latter maintains only C 0 continuity.9. (12. and in particular between beam elements.8.y+v) y. Remark 12. because section rotations jump between elements. (a) Cubic deflection elements.5. C 1 continuity can be trivially met within each element by choosing polynomial interpolation shape functions as shown below. 12–8 . (b) linear deflection elements. I 2 x The element is shown in Figure 12.5. in which the lateral deflection curve v(x) is grossly exaggerated for visibility. The physical reason for C 1 continuity is illustrated in Figure 12. leading to unacceptable material gap and interpenetration at nodes.Chapter 12: VARIATIONAL FORMULATION OF PLANE BEAM ELEMENT §12. which maintain the required continuity. The C 1 continuity requirement says that both v(x) and the slope θ = v  (x) = dv(x)/d x must be continuous over the entire member. as well as at the clamped left end. Beam Finite Elements Beam finite elements are obtained by subdividing beam members longitudinally. and four degrees of freedom (DOF).  x. because polynomials are C ∞ continuous. §12. The left figure shows the approximation of v(x) by four cubic functions. interpenetration (a) gap (b) v(x) v(x) Figure 12. In this case material gap and interpenetration occur at the nodes. Finite Element Trial Functions The freedoms (12.9) are used to define uniquely the variation of the transverse displacement v e (x) over the element. The right figure shows an attempt to approximate v(x) by four piecewise linear functions that maintain only C 0 continuity.1. The simplest Bernoulli-Euler plane beam element has two end nodes: 1 and 2.8.y) Figure 12.9. u P(x. The two-node Bernoulli-Euler plane beam element with four DOFs. These are collected in the node displacement vector ue = [ v1 θ1 v2 θ2 ]T . v θ1 v2 v1 1 E.2. Matching nodal displacements and rotations with adjacent elements enforces the necessary interelement continuity. Nθe1 e Nv2 Nθe2 = = = Nv2e (ξ) 1 (1 − ξ )2 (1 + ξ ).3.10.11)  where  is the element length. The 4/2 factor in (12.6 THE FINITE ELEMENT EQUATIONS §12. (12. noting that d(2/)/d x = 0 one gets d f (x) d f (ξ ) dξ 2 d f (ξ ) = = .5.14) Remark 12. The interpolation formula based on these functions is   v1 θ  e e v e = [ Nv1 (12. 4 − 18 (1 + ξ )2 (1 − ξ ).12) θ2 = 1 ξ = −1 These four functions are depicted in Figure 12. v2 θ2 These shape functions are conveniently expressed in terms of the dimensionless “natural” coordinate 2x − 1. If f (x) is a function of x. The shape functions in terms of ξ are ξ= v1 = 1 Nv1e (ξ) θ1 = 1 Nθ1e (ξ) e Nv1 = 14 (1 − ξ )2 (2 + ξ ). Coordinate ξ varies from ξ = −1 at node 1 (x = 0) to ξ = +1 at node 2 (x = ). and ξ = 2x/ − 1. dx dξ d x  dξ  0   d f (ξ ) d(2/) d f (ξ ) 2 d 4 d 2 f (ξ ) d 2 f (x) = = + .§12. (12. The curvature κ that appears in U can be expressed in terms of the nodal displacements by differentiating twice with respect to x: 4 d 2 v e (ξ ) 4 dNe e d 2 v e (x) = 2 = 2 2 u = B ue = N ue . Nθ2e (ξ) ξ=1 Figure 12.13) Here B = N is the 1 × 4 curvature-displacement matrix B= 1 ξ 6  3ξ − 1 ξ −6   3ξ + 1 .13) comes from the differentiation chain rule.2. (12.10) Nθe1 Nv2 Nθe2 ]  1  = Ne ue . κ= 2 2 dx  dξ  dξ (12. Note that d x/dξ = 12  and dξ/d x = 2/. 8 1 (1 + ξ )2 (2 − ξ ).9) are called the Hermitian cubic shape functions. Cubic shape functions of plane beam element.15) dx2 dx dξ  dx dξ 2 dξ 2 12–9 . v2 = 1 (12.10. Shape Functions The simplest shape functions that meet the C 1 continuity requirement for the nodal DOF configuration (12. (12. Ne={{2*(1-ξ)^2*(2+ξ).20) 12–10 . More complex cases are treated in the Exercises. Print["fe^T for uniform load q:\n". §12. fe=(q*l/2)*Integrate[Ne. The Finite Element Equations Insertion of (12.-6*ξ . Using Mathematica to form fe for uniform transverse load q.ξ ].19)  −6ξ  3ξ − 1 3ξ + 1    2 −1  −1  3ξ + 1 Expanding and integrating over the element yields     −36ξ 2 6ξ(3ξ +1) 36ξ 2 6ξ(3ξ −1) 12 6 −12 6  1 2 2 2 2  EI (3ξ −1)  −6ξ(3ξ −1) (9ξ −1)  42 −6 22    dξ = E I  Ke = 3   12 −6 36ξ 2 −6ξ(3ξ +1)  2 −1  3 symm 42 symm (3ξ +1)2 2 (12. Be={{6*ξ . Print[Ke//MatrixForm].18) T −1 0 (12.−(1+ξ)^2*(1-ξ)*l}}/8.12) and (12. The calculation of the entries of Ke and fe for prismatic beams and uniform load q is studied next.{ξ. The Stiffness Matrix of a Prismatic Beam If the bending rigidity E I is constant over the element it can be moved out of the ξ -integral in (12.12.-1.1.6.11.l.17) NT q 12  dξ. 6 EI l2 2 EI l 6 EI l2 4 EI l fe^T for uniform load q: lq l 2q l q _ l 2q 2 Figure 12.(3*ξ +1)*l}}/l^2. 12 2 12 Figure 12. Print[Simplify[Ke*l^2/EI]//MatrixForm]. 2*(1+ξ)^2*(2-ξ).-1. where   K = e  E I B B dx = 1 E I BT B 12  dξ. §12. Ke for prismatic beam: 12 EI 6 EI _ 12 EI l3 l l3 6 EI 4 EI _ 6 EI l2 l l2 _ 12 EI _ 6 EI 12 EI l3 l2 l3 6 EI 2 EI _ 6 EI l2 l l2 _ ClearAll[q.fe//MatrixForm].ξ].6. Ke=Simplify[Ke]. Ke=(EI*l/2)*Integrate[Transpose[Be].Chapter 12: VARIATIONAL FORMULATION OF PLANE BEAM ELEMENT ClearAll[EI.l. yields the quadratic form in the nodal displacements e = 12 (ue )T Ke ue − (ue )T fe . (12. fe=Simplify[fe]. (12.16) is the element stiffness matrix and  f = e   N q dx = 1 T 0 −1 is the consistent element node force vector.Be. (1-ξ)^2*(1+ξ)*l.(3*ξ -1)*l.14) into the TPE functional specialized to this element. Print["Ke for prismatic beam:"]. Using Mathematica to form Ke for a prismatic beam element.1}].17):  6ξ   1  1    E I  3ξ − 1   6ξ −6ξ BT B dξ = Ke = 12 E I  dξ.1}].{ξ . . and subjected to the three load cases pictured there.6. A EI constant x M 2 1 (c) Load case II x B L 1 x P 2 1 q uniform (d) Load case III 1 x 2 1 Figure 12.§12..20) using the Integrate function. (b) Load case I 1 (a) y.21) This shows that a uniform load q over the beam element maps to two transverse node loads q/2.1. Consistent Nodal Force Vector for Uniform Load If q does not depend on x it can be moved out of (12..1: (a) structure.. §12. M E I  12 L 3 −6L −6L 4L 2  v2I I θ2I I  =   P .22) Introduced by Hardy Cross in 1930 (long before FEM) as a key ingredient for his moment distribution method.11 processes (12. Cantilever beam problem for Example 12. For example the Mathematica script listed in the top box of Figure 12.2. 0 (12. in which fe is printed as a row vector to save space. it is equally expedient to use a CAS such as Mathematica or Maple.” 12–11 . The latter are called the fixed-end moments in the structural mechanics literature. The beam is prismatic with constant rigidity E I and span L. and case III a uniformly distributed load q over the entire beam.v . corroborates the hand integration result. For the first two load cases. case II a transverse end force P.20) with  = L. Case I involves an applied end moment M. (b-c): one-element FEM idealizations for three load cases. The FEM equations are constructed using the stiffness matrix (12. forces at end node 2 are directly set up from the given loads since no lumping is needed.13(b. .. The output. . Indeed the title of his famous paper [174] is “Analysis of continuous frames by distributing fixed-end moments.13.d).13(a). .. Example 12.c.18). q  2  1  − 16   (12. plus two nodal moments ±q2 /12.3 The hand result (12.. To see the beam element in action consider the cantilever illustrated in Figure 12..21) can be verified with the Mathematica script of Figure 12. giving   1 (1 − ξ )2 (2 + ξ ) 4  1  1 1  2  8 (1 − ξ ) (1 + ξ )  e T 1 1 N dξ = 2 q f = 2 q  dξ =  1 2 −1 −1  4 (1 + ξ ) (2 − ξ )  − 18 (1 + ξ )2 (1 − ξ )  1  1  1  6 .12... shown in the bottom box. It is discretized with a single element as shown in Figure 12. Applying the support conditions v1 = θ1 = 0 gives the reduced stiffness equations E I  12 L 3 −6L 3 −6L 4L 2  v2I θ2I  =   0 . as may be expected.6 THE FINITE ELEMENT EQUATIONS Although the foregoing integrals can be easily carried out by hand. In addition the nodal values are exact (a superconvergence result further commented upon in the next Example). respectively. Both are included in the span of the element shape functions.4 0.24)-(12. and discretized with two elements of length L 1 = L(/ + α) and L 2 = L − L 1 = L(/ − α).8 1 Figure 12. FEM versus analytical solutions for load case III of Example 12. depicted in Figure 12.1 0. The results for load case III are more interesting since now the exact deflection is a quartic polynomial.3 Lateral deflection Analytical FEM.4 0.05 1 Bending moment Analytical FEM.2 0. 24 E I θexI I I (x) = q(L − x)2 .3 0. Solving gives the tip deflections v2I = M L 2 /(2E I ) and v2I I = P L 3 /(3E I ).1. respectively.5 0. β = 0 FEM. The second example involves a simply supported beam under uniform line load q. The reason is that the analytical deflection profiles v(x) are quadratic and cubic polynomials in x for cases I and II.24) q x (6L 2 −4L x+x 2 ) . From this one recovers the displacement. Displacements v(x). β = 1 0. It is prismatic with constant rigidity E I .2 0.1 0. (12.8 x/L x/L 1 0. rotations θ (x) and moments M(x) expressed as functions of x also agree with the analytical solution. 24 E I L(6−β) − 3x . A dimensionless parameter 0 ≤ β ≤ 1 is introduced in the reduced stiffness equations to study the effect of load lumping method on the solution: E I  12 L 3 −6L −6L 4L 2  v2I I I θ2I I I  = 1 2  qL  1 . which lies beyond the span of the FEM shape functions.14. These agree with the analytical values provided by Bernoulli-Euler beam theory.05 0.21) whereas β = 0 gives the EbE (here same as NbN) load lumping f 2I I I = 12 q L with zero fixed-end moments.23) Setting β = 1 gives the energy consistent load lumping (12.2. β = 0 FEM. β = 0 FEM. span L.4 0.25) are graphically compared in Figure 12.2 0. β = 1 0.25) The FEM and analytical solutions (12.8 x/L 0. /) is introduced to study the effect of unequal element sizes. 12 (12. For the bending moment the values provided by the EbE lumping β = 0 are nodally exact but over the entire beam the β = 1 solution gives a better linear fit to the parabolic function MexI I I (x).6 0. for load cases I and II.23) is v2I I I = q L 4 (4 − β)/(24 E I ) and θ2I I I = q L 3 (3 − β)/(12 E I ). and the tip rotations θ2I = M L/E I and θ2I I = P L 2 /(2E I ).Chapter 12: VARIATIONAL FORMULATION OF PLANE BEAM ELEMENT EI θ(x)/(qL 3 ) EI v(x)/(qL4 ) 0. Thus a one-element idealization is sufficient for exactness. Deflections and rotations obtained with the consistent load lumping β = 1 agree better with the analytical solution.15 0.2 M(x)/(qL2 ) Section rotation Analytical FEM. β = 1 0.15(a). as may be expected. (Ordinarily two elements of the same length / L would be used.15 0.25 0. 12 E I M I I I (x) =  q L L(6−β) − 6x .1 0.2 0.2 0.6 0. The solution of (12. the scalar α ∈ (−/. − 16 β L (12.) 12–12 .6 0. 6 EI MexI I I (x) = 1 2 θ I I I (x) = q L x The analytical (exact) solution is III vex (x) = q x 2 (3L 2 −3L x+x 2 ) . Example 12. rotation and bending moment over the beam as v I I I (x) = q L 2 x 2 L(6−β) − 2x . respectively.4 0.14. v (b) 3 L2= 12 L(1−α) L/2 1.5 0. A general proof of nodal exactness is given in §13. a phenomenon already discussed in §11. this can be observed in Figure 12. 12–13 α 0.v L1=L(12 +α) L 3 2 . .14(a.v L2=L(12 −α) Figure 12. The exact deflection is v(x) = q L 4 (ζ − 2ζ 3 + ζ 4 )/(24E I ) with ζ = x/L. .. x 1 1 2 . since the analytical solution is a quartic polynomial in x we have no reason to think that a cubic element will be exact. 1 L1= 12 Lα _ W 1. (a): structure. (c) scaled external energy of FEM model as function of α. D C B L1= 12 Lα q(x)=−w constant . First.3. one would expect accuracy deterioration as the element sizes differ more and more with increasing α.5. (a) y.25 1 0.2 0.7. Continuum beam problem for Example 12. assembling and applying the support conditions v1 = v3 = 0.§12. but it does require advanced mathematical tools. The result seems prima facie surprising...5 w 2 (c) .v (a) E L4= 12 Lα L3= 12 L(1−α) L/2 L x 1 2 .2: (a) structure.b) for load case III of the previous example.15... A EI constant L2= 12 L(1−α) L/2 . .5 . provides the reduced stiffness equations  8L 2 1+2α   −24L 2 EI   (1+2α) 2  3 L  4L  1+2α 0 −24L (1+2α)2 192(1+12α 2 ) (1−4α 2 )3 192Lα (1−4α 2 )2 24L (1−2α)2 4L 2 1+2α 192Lα (1−4α 2 )2 16L 2 1−4α 2 4L 2 1−2α   L(1+2α)2  θ  24 1   24L    1 2 v  q L 2 (1−2α)   .6 THE FINITE ELEMENT EQUATIONS q (uniform) EI constant B . θ  = 2 Lα    4L 2  2 − 3   1−2α  θ3 2 0 − 8L 2 1−2α (12.. Second.16.1 0. x . x A (b) y. Note that displacements and rotations inside elements will not agree with the exact one. which is the same as the FEM result. The fact that the solution at nodes is exact for any combination of element lengths is an illustration of superconvergence. y. Replacing x = L 1 = L(/ + α) yields v2exact = q L 4 (5 − 24α 2 + 16α 4 )/(384E I ). Likewise θ2 is exact.20) and (12. (b) two-element FEM model of half beam.75 0.25 0. .4 Figure 12.26) L(1−2α) 24 Solving for the lateral displacement of node 2 gives v2 = q L 4 (5 − 24α 2 + 16α 4 )/(384E I ). SS beam problem for Example 12.3 0.21) to form the stiffness and consistent forces for both elements. Using (12. (b) two-element FEM idealization. . y. C and D. 768 E I θ1 =  wL 3  (1 + α)3 − 2 .3. Since the problem is symmetric about midspan C only one half of the structure. Support C is at midspan whereas B and D are at distances L 1 = L 4 = 12 Lα from the left and right free ends. The external energy at equilibrium is W (α) = fT u = w 2 L 5 W¯ (α)/(18432 E I ). The master stiffness equations are  24 6L − 243 0 0 α α2  6L L2  − 0 0 2 α    α    24 6L 24 1−3α αˆ − 6L(1−2α) − 24 6L 4E I  − α 3 − α 2 α 3 αˆ 3 α 2 αˆ 2 αˆ 3 αˆ 2  2 2 2 L 3  6L 6L(1−2α) L 2L − 6L2 L −  2 2 2 α α αˆ αˆ α αˆ αˆ  α  24 6L 24  0 0 − 3 − 2 − 6L2  αˆ αˆ αˆ 3 αˆ 2 2 6L L 2L 6L 0 0 − 2 2 α ˆ α ˆ αˆ αˆ 6L α2 2L 2 α α3 6L α2        −α  v1 0  θ   −Lα 2   0   1      12   v  wL  −1   fr   2     2 =    + 4  L(2α−1)   0    θ2   12       v3  −αˆ   f 3r    θ3 m r3 L αˆ 2  12 (12.16(c). Minimizing W with respect to α may be interpreted as finding the stiffest structure (in the energy sense) under the given load vector f.16(b).27) to simplify application of the general recovery technique discussed in §3.28) 12 α αˆ Solving yields v1 = −   wL 4 α (1 + α)3 − 2 . The support BCs are v2 = v3 = θ3 = 0. B and C. 16 αˆ fr 3 = wL 5 − 10α − α 2 .4. Note that reaction forces are carefully segregated in (12. need to be discretized. It has two beam elements and three nodes placed at A. (Adapted from a driven-tank experiment by Patrick Weidman).27 as shown in Figure 12. It remains to find the best α. respectively. respectively. in which W¯ (α) = 1 − 5α − 2α 2 + 26α 3 + 5α 4 + 3α 5 . 16 αˆ mr 3 = − wL 2 (1 − 2α − α 2 ). which is carried along as a variable.Chapter 12: VARIATIONAL FORMULATION OF PLANE BEAM ELEMENT Example 12. 32 (12. The finite element model of this portion is shown in Figure 12.29) 384 E I The complete solution is u = [ v1 θ1 0 θ2 0 0 ]T . (12. This example displays the advantages of symbolic computation for solving a problem in geometric design: optimal location of supports. Of course “best” depends on the optimality criterion. which to 5 places is αbest = 0. Element lengths depend on the design parameter α.26817. 384 E I θ2 = wL 3 αˆ (1 − 2α − 5α 2 ).27) and solving for reactions gives fr 2 = wL 3 + 2α + α 2 . Removing those freedoms provides the reduced stiffness equations  24 6L 6L      −α α3 α2 α2 v   1 4E I  6L 2L 2 L 2  wL  −Lα 2    = θ   2  .30) whence the support reactions follow as R B = fr 2 and RC = 2 fr 3 . Inserting into (12. The six degrees of freedom are collected in u = [ v1 θ1 v2 θ2 v3 θ3 ]T . 12–14 . The prismatic continuous beam shown in Figure 12. Minimum External Energy. The beam has total span L and constant bending rigidity E I .3. Solving the quartic equation d W¯ /dα = 0 gives one positive real root in the range α ∈ [0.16(a) is free at ends A and E. and simply supported at B. Four choices are examined below.27) in which αˆ = 1 − α. 1). 1 α α 12 4 L3  α  L(2α−1) θ2 6L L 2 2L 2 α2 α (12. say AC. Here 0 ≤ α < 1 is a design parameter to be determined as discussed later. It is loaded by a uniform distributed load q(x) = −w. where the latter comes from the symmetry condition at C. A plot of W¯ (α) over 0 ≤ α ≤ 12 clearly displays a minimum at α ≈ 0. 11. or αbest = 0.30). the optimal α from the foregoing criteria varies between 0. respectively. On the other hand. The derivation of stiffness matrices is carried out there using differential equilibrium equations rather than energy methods. The computations are far more complex than for the previous two criteria and are the subject of Exercise 12. Setting fr 2 = 2 fr 3 with their expressions taken from (12. recent studies [43] argue that Leonardo da Vinci made crucial observations a century before Galileo. as influenced by the use of transfer matrix methods [578] on the limited memory computers of the time. one finds that the best α is the positive root of 2 − 4α − 15α 2 = 0. This is the topic of Exercise 12. This quadratic has the roots α = 13 (−11 ± 142).28. This problem is less well posed than the previous one because M(x. x j } ∈ [0. Minimum Relative Deflection. it was not applied in structural design and analysis until the second half of the XIX Century. 12–15 . however.30546 makes R B = RC = R D = wL/3. In summary. We seek the α ∈ [0.491]. To get a better result a finer mesh would be needed. As a reasonable compromise an engineer could pick αbest ≈ 0.306. References Referenced items have been moved to Appendix R. is nonzero at node 1 and discontinous at node 2. We seek an α ∈ [0. Consider two sections located at xi and x j . If this < wL 4 /(67674E I ). the exact bending moment varies parabolically. The maximum relative deflection is defined as max v max ji (α) = max |v j − vi | for a fixed α. This is an intrinsic weakness of displacement-based FEM since internal forces are obtained by differentiation. with lateral displacements vi = v(xi ) and v j = v(x j ).§12. are identical. The optimal solution using the exact moment distribution. in which {xi . Energy derivations were popularized by Archer [35.25540. because of symmetry. 12 L]. which boosts errors. α) and taking the average M at node 2.12. α) denote the bending moment function recovered from the FEM solution for a fixed α. Result: the best α is the positive real root of 4 + 11α − 81α 2 − 49α 3 − 47α 4 = 0. While Galileo Galilei is credited with first attempts at a theory. which to 5 places is αbest = 0.√yields 3 + 2α + α 2 = 10 − 20α − 2α 2 . R D = R B ). Result: using the FEM-recovered M(x.26681. 1) that minimizes it. 12 L]. Results for prismatic elements. Although the model was first enunciated by 1750. da Vinci lacked Hooke’s law and calculus to complete the theory. This was in fact the common practice before 1962. Martin [473] and Melosh [490. however. as may be expected.255 to 0. Notes and Bibliography The Bernoulli-Euler (BE) beam model synthesizes pioneer work by Jacob and Daniel Bernoulli as well as that of Leonhard Euler in the XVIII Century. 1) that minimizes v ji (α). is zero at node 1 and continuous at node 2. Notes and Bibliography Equal Reactions.36]. A comprehensive source of stiffness and mass matrices of plane and spatial beams is the book by Przemieniecki [603]. for which M max < wL 2 /589. α)| for x ∈ [0. value is adopted. However. The maximum absolute moment is M max (α) = max |M(x. The positive real root αbest = 0. α) varies linearly over each element. the relative deflection does not exceed vimax j Minimum Absolute Moment. or 7 − 22α − 3α 2 = 0. A second choice is to require that supports at B and C take the same load: R B = RC (note that. Let M(x. is quite different. 5) where NξT denote the column vectors of beam shape function derivatives with respect to ξ .3) Again use of a CAS is recommended.5) in which m(x) = C δ(a). 4 ClearAll[EI] discards the previous definition (E12. and keep EI inside the argument of Integrate. EXERCISE 12. a =  and a = /2. EXERCISE 12.2) of EI. this check can be simply done after you got and printed the tapered beam Ke.4 EXERCISE 12.2) EI = EI1*(1-ξ )/2 + EI2*(1+ξ )/2.   (E12. Check whether you get back (12. Use the Dirac’s delta function expression  q(x) = P δ(a) and the fact that for any continuous function f (x). the same effect can be achieved by writing EI=.3 [A:20] Obtain the consistent node force vector fe of a Hermitian beam element subject to a transverse point load P at abscissa x = a where 0 ≤ a ≤ .5 [A:20] Obtain the consistent node force vector fe of a Hermitian beam element subject to a concentrated moment (“point moment”. 0 f (x) δ(a) d x = f (a) if 0 ≤ a ≤ . and hand computations are error prone. and printing this matrix.2 [A/C:20] Use (12. Mathematica hint: write (E12.   (E12. positive CCW.Chapter 12: VARIATIONAL FORMULATION OF PLANE BEAM ELEMENT Homework Exercises for Chapter 12 Variational Formulation of Plane Beam Element EXERCISE 12. (E12. Mathematica hint: write (E12. Can you see a shortcut that avoids the integral altogether if m is constant? EXERCISE 12.21) if q1 = q2 = q (See previous Exercise for Mathematica procedural hints). and keep q inside the argument of Integrate. (dot). Use the Concentrated moment load on beam element expression (E12. Check the special cases a = 0 and a = . defined by the law m(x) = m 1 (1 − ξ )/2 + m 2 (1 + ξ )/2. Use the fact that the external work per unit length is m(x)θ(x) = m(x) v  (x) = (ue )T (dN/d x)T m(x). particularly since the polynomials to be integrated are quartic in ξ .1 [A/C:20] Use (12.{EI1->EI. Check whether you get back (12.18) to derive the consistent node force vector fe for a Hermitian beam element under linearly varying transverse load q defined by q(x) = q1 (1 − x x ) + q2 = q1 12 (1 − ξ ) + q2 12 (1 + ξ ).1) Use of Mathematica or similar CAS tool is recommended since the integrals are time consuming and error prone. Check the special cases a = 0. For arbitrary m(x) show that this gives   f = e 0 ∂NT m dx = ∂x  1 −1 ∂NT 2 1 m  dξ = ∂ξ  2  1 −1 NξT m dξ. positive CCW) C applied at x = a. 12–16 .4 [A:25] Derive the consistent node force vector fe of a Hermitian beam element subject to a linearly varying z-moment m per unit length. If you use Mathematica.4) q = q1*(1-ξ )/2 + q2*(1+ξ )/2.17) to derive the element stiffness matrix Ke of a Hermitian beam element of variable bending rigidity given by the inertia law I (x) = I1 (1 − x x ) + I2 = I1 12 (1 − ξ ) + I2 12 (1 + ξ ). by writing ClearAll[EI].EI2->EI}]. Ke=Simplify[ Ke/. where δ(a) denotes the Dirac’s delta function at x = a.20) if EI=EI1=EI2. and expand to 4 × 4 by letting node 1 translate and rotate. 5 Gauss integration is studied further in Chapter 17. A CAS is recommended. .6) √ √ . which are determined by matching the two zero-displacement BCs at node 1 and the two force BCs at node 2. repeat Example 12.6 [A/C:25] Consider the one-dimensional Gauss integration rules. and draw conclusions.7) and (E12.11 [C:25] For the continuous beam of Example 12. for example Be[ξ ].2. Plot the moment diagram when α = αbest . Hint for the explanation: consider the order of the ξ polynomials you are integrating over the element. −1  1 −1 ξ 2 dξ. The process yields four constants of integration C1 through C4 .10 [C:20] Using Mathematica. EXERCISE 12. (E12. This provides a 2 × 2 flexibility matrix relating forces and displacements at node j. say f[ξ ]:=6ξ ^4-3ξ ^2+7. Invert to get a deformational stiffness. or use the substitution operator /.6). To form an element by Gauss integration define matrix functions in terms of ξ . To do this integrate the homogeneous differential equation E I v  = 0 four times over a cantilever beam clamped at node 1 over x ∈ [0.. f (ξ ) dξ = 2 f (0). f (ξ ) dξ = f (−1/ 3) + f (1/ 3). and print int. (E12.7 [A/C:25] Repeat the derivation of Exercise 12. If using Mathematica you may use a function definition to 1 save typing. (E12. (E12. 9 9 9 (E12. study the ratio v2 /v2exact as function of α. respectively. Plot the deflection profile when α = αbest . For example to evaluate −1 f (ξ ) dξ in which f (ξ ) = 6ξ 4 − 3ξ 2 + 7. In this way verify that rules (E12.8) One point : −1  1 Two points:  −1 1 Three points: −1 Try each rule on the monomial integrals   1 1 ξ dξ. by the 3-point Gauss rule (E12. (Labor-saving hint: for odd monomial degree no computations need to be done.8 [A/C:25] As above but for Exercise 12. 5 f (ξ ) dξ = f (− 3/5) + f (0) + f ( 3/5). whatever you prefer. 12–17 .20) using the method of differential equations. EXERCISE 12.5  1 .3.7)  5  8 . verify the results given there for the optimal α that minimizes the maximum relative deflection. int=Simplify[(5/9)*(f[-Sqrt[3/5]]+f[Sqrt[3/5]])+(8/9)*f[0]]. dξ.Exercises EXERCISE 12. why?).9 [A/C:30] Derive the Bernoulli-Euler beam stiffness matrix (12.8) are exact for polynomials of degree up to 1.1 using the two-point Gauss rule (E12. verify the results given there for the optimal α that minimizes the absolute bending moment.12 [C:25] For the continuous beam of Example 12. Check whether one obtains the same answers as with analytical integration. . and explain why there is agreement or disagreement.8). EXERCISE 12.9) −1 until the rule fails.3. ] to get v(x).) Is v2 the same as the exact analytical solution? If not. EXERCISE 12. .7) to evaluate integrals in ξ .26) to zero.2 but using EbE lumping of the distributed force q. 3 and 5. (It is sufficient to set the nodal moments on the RHS of (12. EXERCISE 12. EXERCISE 12. 13 Advanced One-Dimensional Elements 13–1 . 1. . . . .4. .2. .2. . . . *Accuracy of Bernoulli-Euler Beam Element . . . .5. . . . . . . . . . Self-Equilibrated Force System . 13–3 13–3 13–3 13–4 13–4 13–5 13–5 13–6 13–7 13–9 13–11 13–11 13–16 13–16 13–16 13–17 13–19 13–19 13–20 13–20 13–21 13–24 13–27 13–27 13–29 13–30 13–31 13–32 . . . . .5. Timoshenko Plane Beam Element . . . . §13. Legendre Polynomials . . .1. . . . . .6. . .2. . . . . . . . . .1. . . . .8.2. . . . *Accuracy of Timoshenko Beam Element . .Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS TABLE OF CONTENTS Page §13. . . . . . . . . . .3. Introduction Generalized Interpolation §13. . . Shear-Curvature Recovery .2.2. . . Flexibility Based Derivations §13. . . . . . . . §13. Applications . . . . §13.4. . . . . . §13.1. . . Transforming to Physical Freedoms: BE Model . . . . . .4. . . . . . . . . .2. . . .7. §13. .5. . . . . . . . . . . . . . . . . . . . . . . . §13.5. . . . Flexibility Equations . . . . . . . §13. . . . . Handling Applied Forces . .6.4. . . . . . . §13. . . . . . §13. . . . . . . .6. . . .2. §13. Plane Circular Arch in Local System . §13.3. . . . . §13. . §13. Generalized Stiffnesses . . . 13–2 . . §13. . . . . . . . . . . .2. . . .1. . Transforming to Physical Freedoms: Shear-Flexible Model §13. . .3.3. .3. . . . §13. . . Plane Circular Arch in Global System . .4. . . . . . . . . §13. . .4. . . . . Beam on Elastic Supports . . . .2. . §13. . §13.2.6. . References .2. . . . . . Notes and Bibliography .4. . Exact Winkler/BE-Beam Stiffness . . §13.1. .2. . . . . Rigid Motion Injection . . . *Accuracy Analysis §13. Hinged Plane Beam Element . . . . . Interpolation with Homogeneous ODE Solutions §13. . . . . . . . §13.5. . . . Timoshenko Plane Beam-Column . . .5. Equilibrium Theorems §13. . Exercises .4. . . . . §13. 10–12.1) is a generalized interpolation. (13. the L i have a clear physical meaning: L1 L2 L3 L4 Translational rigid body mode.) ≡ 48 diag [ 0 0 3 25 ] . Unlike the shape functions (12. T  0 0 (L )T L d x = 0 Q3 = Q2 = 14400 (L )T L d x = diag [ 0 0 0 1 ] . A more seminal expression is v(ξ ) = L 1 c1 + L 2 c2 + L 3 c3 + L 4 c4 = L c.100]. The techniques used are less elementary.12) as an instance when c1 = v1 .2) where the L i are the first four Legendre polynomials L 1 (ξ ) = 1. L 3 (ξ ) = 12 (3ξ 2 − 1). for example a first graduate FEM course in Civil Engineering.3) are the orthogonality properties   Q0 = L L d x = diag [ 1 1/3 1/5 1/7 ] . but this matrix is not used here. 3 d(. Formula (13. however. Generalized Interpolation For derivation of special and C 0 beam elements it is convenient to use a transverse-displacement cubic interpolation in which the nodal freedoms v1 . §13. Linear-curvature deformation mode. v2 . c2 = v1 . §13.g. 1 They do not reach.4) Qn is called the covariance matrix for the n th derivative of the Legendre polynomial interpolation. The Chapter concludes with beam accuracy analysis based on the modified equation method. antisymmetric with respect to ξ = 0.1 and may be found in books on Advanced Mechanics of Materials. 13–3 . The  first-derivative covariance Q1 = 0 (L )T L d x is not diagonal.3) and their first two ξ -derivatives are plotted in Figure 13. [91. θ1 and θ2 are replaced by generalized coordinates c1 to c4 : v(ξ ) = Nc1 c1 + Nc2 c2 + Nc3 c3 + Nc4 c4 = Nc c.2. such as thick beams.§13. Functions (13. Constant-curvature deformation mode.2 GENERALIZED INTERPOLATION §13. What distinguishes the set (13.1) Here Nci (ξ ) are generalized shape functions that satisfy the completeness requirement discussed in Chapter 19.1. Introduction This Chapter develops special one-dimensional elements.) . but this turns out not to be particularly useful.12). All of this Chapter material would be normally bypassed in an introductory finite element course. L 2 (ξ ) = ξ. These properties are also shared by the standard polynomial c1 + c2 ξ + c3 ξ 2 + c4 ξ 3 .2. Legendre Polynomials An obvious generalized interpolation is the ordinary cubic polynomial v(ξ ) = c1 + c2 ξ + c3 ξ 2 + c4 ξ 3 .1.1. c3 = v2 and c4 = v2 . e. the capstone level of Advanced Finite Element Methods [?]. Readers are expected to be familiar with ordinary differential equations and energy methods. Such courses may skip most of Part I as being undergraduate material. 5 in which (. that require mathematical and modeling resources beyond those presented in Chapters 11–12.3) Here c1 through c4 have dimension of length. Nc is a 1×4 matrix whereas c is a column 4-vector. symmetric with respect to ξ = 0. It is primarily provided for offerings at an intermediate level. Rotational rigid body mode. It includes the Hermite interpolation (12. dx (13. L 4 (ξ ) = 12 (5ξ 3 − 3ξ ). (13. arches and beams on elastic foundations. (13. (13.4). (13. Assuming R Bs and R Ba to be uniform along the element we get Kc = KcBs + KcBa . For the latter is its assumed that the mean shear distortion γ at a cross section is γ = ϒ 2 v  . n! (13. . R B = E I is constant. which are associated with the responses to modes L 3 and L 4 . Denote the beam bending and shear rigidities by R B and R S . respectively. deformational modes (L 3 and L 4 ) in color. e.3) is FEM oriented. Furthermore if the element is prismatic. respectively. the contribution KcS of (13. §13. The general definition for n = 0.1. The notation (13. (13.6) They can also be defined through a 3-term recurrence relation: (n + 2)Pn+2 (ξ ) − (2n + 3) Pn+1 (ξ ) + (n + 1) Pn (ξ ) = 0 started with P0 (ξ ) = 1 and P1 (ξ ) = ξ . Those interpretable as beam rigid body modes (L 1 and L 2 ) in black.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS 1 L4 L3 −1 0. KcS = 0 R S ϒ 2 4 (L )T L d x. is L n+1 (ξ ) ≡ Pn (ξ ) =  n     n −n−1 1−ξ k k k=0 k 2 1 = n 2 n  2  n k=0 k (ξ −1) n−k 1 (ξ +1) = n 2 k  n 2n−2k  n/2 k=0 k n ξ n−2k . Chapter 22 of the handbook [2]. the shear contribution is dropped: Kc = KcB .7) 0 In the case of a Bernoulli-Euler (BE) beam.5 1 10 5 0. ∞  or alternatively k=0 1 Pn (ξ ) z n = e x z J0 (z 1 − ξ 2 ).9) . If so KcS = R B and KcB = E I Q2 .g.2. 1].5 −5 1 d 2L1 /dξ2 and d 2L 2 /dξ2 −10 −2 −1 d 2L4 /dξ 2 −15 Figure 13. 1 . The Legendre polynomials and their first two ξ -derivatives shown over ξ ∈[−1. Pn (−1) = (−1)n .5 dL 2 /dξ 0. where ϒ is a dimensionless coefficient that depends on the mean-shear model used. where Q2 is the second diagonal matrix in (13. Kc is split into 3 contributions (two bending and one shear): Kc = KcBs + KcBa + KcS . Legendre polynomials are normalized by Pn (1) = 1.5 −0. With view to future use it is convenient to differentiate between symmetric and antisymmetric bending rigidities R Bs and R Ba .2)–(13. . Assuming R S to be constant over the element.1.5 2 −1 −0. Remark 13.5 1 −1 −0. with KcS = R S ϒ 2 4 Q3 = 13–4 14400R S ϒ 2 diag [ 0 0 0 1 ] .8) If shear flexibility is accounted for. Then Kc = KcB + KcS . Then   KcB = R B (L )T L d x.5 dL1 /dξ d 2L3 /dξ 2 0.7) is kept.5) where k is the binomial coefficient. where KcB comes from the bending energy and KcS from the shear energy. KcBs = 144R Bs diag [ 0 0 1 0 ] . Generalized Stiffnesses The beam stiffness matrix expressed in terms of the ci is called a generalized stiffness. 3 KcBa = 1200R Ba diag [ 0 0 0 1 ] . 3 (13.2.5 15 6 dL4 /dξ dL /dξ 3 4 L1 L2 −0. L 1 through L 4 are called P0 through P3 in the mathematical literature. One important application of these polynomials in numerical analysis is the construction of one-dimensional Gauss integration rules: the abscissas of the n-point rule are the zeros of L n+1 (ξ ) = Pn (ξ ). They can also be indirectly defined by generating functions such as n ∞  Pn (ξ ) z = n k=0 1 1 − 2ξ z + z 2 . with H B = G−1 B . (13.4.2. The additional freedom conferred by (13. the transformations (13. which reflects the fundamental “plane sections remain plane” kinematic assumption of the BE model. −6Ra  (3Ra + Rs ) 2 (13.2.3.10) change to        30 5 30 −5 1 −1 c1 c1 v 3 36+30 − 3  1  c2   c2  1  − 36+30 − − 6 12+10  1+ 1+ 1+ 1+  θ1    .12) e e u = H u . But in a element built via cubic interpolation of v(x).20) is recovered. Thus γ = 120ϒc4 / is constant over the element.11) is exhibited later in two unconventional applications. §13. The physical stiffness is  Ke = HTB KcBs 12Ra 1  6Ra + KcBa H B = 3  −12Ra 6Ra 6Ra (3Ra + Rs ) 2 −6Ra (3Ra − Rs ) 2 −12Ra −6Ra 12Ra −6Ra  6Ra (3Ra − Rs ) 2  . Beam element with hinge located at midspan.2. ue = G S c and c = G−1 S c S the stiffness used to construct the Timoshenko beam element in §13.13) 4 −2  −2 2 y §13.2 GENERALIZED INTERPOLATION §13.   =      1 1 c3 c3 60 0 −5 0 5  v2 6 12+10 6 3 6 3 c4 c4 θ2 − 1+ 1+ 1+ 1+ (13. 13–5 z y hinge x 2 x 1 /2 /2 Figure 13. the generalized coordinates ci of (13. The top figure sketches a hinge fabrication method. Transforming K of (13. 5   v2  θ2 3 (13.11) If Rs = Ra = E I the well known stiffness matrix (12.2). Hinged Plane Beam Element The two-node prismatic plane BE beam element depicted in Figure 13. If ϒ is constant and v(ξ ) interpolated by (13. Transforming to Physical Freedoms: Shear-Flexible Model A shear flexible beam has mean shear distortion γ = ϒ 2 v  . Gaps on either side of the hinged section cuts are filled with a bituminous material that permits slow relative rotations. Here θ1 ≡ v1 and θ2 ≡ v2 . 1 1 1   c3  c4 2/ 6/ 12/    c1 30 1  c2   −36 c  =  0 60 3 c4 6 5 −3 −5 3 30 36 0 −6   −5 v1 −3   θ1  .2.2 has a mechanical hinge at midspan (ξ = 0).6:    1 v1 0  θ1   v =  1 2 θ2 0 −1 2 1 2  0 R Bs  0 e T K = H S Kc H S = 0 0 0 0 1 0 0 0 −1 0   0 4 −1  12R Ba + R S 2 2  2 +  −4 0 4 3 (1 + )2 2 1 2 2 −2 2  −4 2 −2 2  . as can be expected.10)   In compact form: ue = G B c and c = H B ue .2) can be connected to the physical DOFs by    v1 1  θ1   0 v  = 1 2 θ2 0   −1 1 −1 c1 2/ −6/ 12/   c2  . Transforming to Physical Freedoms: BE Model For a BE beam model. v  = 120 c4 / 3 .2.5. The end rotational freedoms become θ1 = v1 + γ and θ2 = v2 + γ . The top figure also sketches a fabrication method sometimes used in short-span pedestrian bridges.9) to physical freedoms yields In compact form.§13. . Using = 12ϒ to simplify the algebra. Both the curvature κ and the bending moment M must vanish at midspan. The cross sections on both sides of the hinge can rotate respect to each other. κ = v  must vary linearly in both ξ and x. This has two spans with lengths αL and L. provides the reduced stiffness equations EI L3  12/α 3 6L/α 2 6L/α 2 6L/α 2 4L 2 /α 2L 2 /α v  6L/α 2 1 q0 L 2L 2 /α θ1 = 2 2 L (4 + 3α)/α θ2   α . Example 13. ∂x γ = V .21) is used to build the consistent node forces for both elements.” This is illustrated in Figure 13.14) to the last row of H B in (13. respectively. α2 = −0. The key kinematic assumption changes to “plane sections remain plane but not necessarily normal to the deformed neutral surface. where α is a design parameter. The eigenvector associated with the nonzero eigenvalue pertains2 Matrix (13. There is a hinge at the center of the 2–3 span..3620434.14) can be derived by more sophisticated methods (e. 13–6 .14). and is subjected to uniform load q0 . respectively. which to 8 places are α1 = −1. y.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS Consequently the mean curvature. with θ= ∂v + γ = v + γ . y) = −yθ.52399776. Assembling and applying the support conditions v2 = v3 = θ3 = 0. The stiffnesses for elements (1) and (2) are those of (12. and three zero eigenvalues. the displacement field is analogous to that of the Bernoulli-Euler model (12. Of interest is the design question: for which α > 0 is the tip deflection at end 1 zero? . α3 = 0.3(b).2. . going from 1 to 2 and 2 to 3. G As (13. mixed variational principles) but the present technique is the most expedient one. Ke has one nonzero eigenvalue: 6E I (4 + 2 )/ 3 .10) to the antisymmetric deformational mode L 3 .. (b) deflection profile when α = 0. respectively. Plugging into (13.3. the solution is α = 0. The beam is free. Ignoring axial forces.17137898.1. The kinematic constraint of zero mean curvature is enforced by setting the symmetric bending rigidity R Bs = 0 whereas the antisymmetric bending rigidity is the normal one: R Ba = E I . simple supported and fixed at nodes 1.11) yields  4 3E I 2  Ke = 3  −4 2    −4 2 2 −2 2  3E I   = 3 [ 2 −2 ]  . 2 v(x.4(a) for a 2-node plane beam element. The equation v1 = 0 is quartic in α and has four roots. The cross section rotation θ differs from v  by γ . whereas (12. θ1 = q0 L 3 (1 − 6α 2 − 6α 3 )/(36E I ) and θ2 = q0 L 3 (1 − 6α 2 )/(36E I ).362. 2 and 3. The deflection profile for this value is pictured in Figure 13.362 Figure 13.1. which is controlled by the Legendre function L 2 (shown in blue on Figure 13. as it can be expected from the last (dyadic) expression in (13. as shown in the figure. (a): beam problem.14). Lα 2 /6 L(1 − α 2 )/6 (13.2.20) and (13.1) must be zero.v (a) 1 EI constant x (1) αL q0 2 3 (2) hinge L/2 L/2 L (b) 2 1 The beam is discretized with two elements: (1) and (2). respectively.6. y) = v(x). 3 α = 0. Beam problem for Example 13.362.2) but with a shear correction: u(x. This example deals with the prismatic continuous beam shown in Figure 13. 4 −2  −2  −2 2 2 2 −2 2 (13. §13.16) Compare the vector in the last expression in (13. and α4 = 0.14) This matrix has rank one. the Timoshenko beam model [735] includes a first order correction for transverse shear flexibility. Timoshenko Plane Beam Element As observed in §12. .3(a).15) Solving for the node displacements gives v1 = q0 L 4 α(12α 2 + 9α 3 − 2)/(72E I ).2.g. Since the latter is the only positive root. 13–7 . Here V is the transverse shear force. 2-Φ. As is calculated by equating the internal shear energy 12 V γ = 12 V 2 /(G As ) to that produced by the shear stress distribution over the cross section. 2-Φ }. Module to produce stiffness matrix for Timoshenko beam element. ]. The Mathematica module TimoshenkoBeamStiffness[Le. 1200R Bs / 3 + 14400 R S ϒ 2 / = 1200 E I (1 + )/ 3 .Φ_]:=Module[{Ke}. The calculation of the consistent node forces for uniform transverse load is covered in Exercise 13. u Positive M.-12/Le^2.g. (c) concurrence of sign conventions for V and γ . TimoshenkoBeamStiffness[Le_. -6/Le . Ke=EI/(Le*(1+Φ))*{{ 12/Le^2. 6/Le }.-6/Le}. γ = ϒ 2 v  = V /(G As ). listed in Figure 13.8)–(13.2. γ1 = γ2 = γ ). Two-node Timoshenko plane beam element: (a) kinematics (when developed with cubic shape functions. -6/Le . v θ1 γ1 v'1 =|dv/dx|1 θ2 γ (b) γ2 Deformed cross section (c) γ y M v'2 =|dv/dx|2 v1 v2 v(x) 1 2 V x.13) yields the Timoshenko beam stiffness   12 6 −12 6 EI  6 2 (4 + ) −6 2 (2 − )  (13. 4+Φ }}. To correlate def with the notation of §13.EI_. implements (13. Replacing R Bs = R Ba = E I and R S = G As = 12E I /( 2 ) into (13. 4 Note that in (13. 3 A concept defined in Mechanics of Materials.3. Chapter 10 of Popov [588] or Chapter 12 of Timoshenko and Goodier [737].3 The product R S = G As is the shear rigidity. γ the “shear rotation” (positive CCW) averaged over the cross section. so ϒ = E I /(G As 2 ) and = 12ϒ = 12E I G A s 2 (13. { 6/Le . For a thin rectangular cross section and zero Poisson’s ratio. Figure 13. V conventions V(+) x z A positive transverse shear force V produces a CCW rotation (+γ) of the beam cross section Figure 13. giving a simple interpretation for .20).4 It is not an intrinsic beam property because it involves the element length.4.2 GENERALIZED INTERPOLATION (a) y. see e. note that V = E I v  . A hinged Timoshenko beam is constructed in Exercise 13. { 6/Le .5. 6/Le.5. 12/Le^2.EI. (b) M and V sign conventions. 4+Φ. {-12/Le^2.18) Ke = 3  −6 12 −6  (1 + ) −12 6 2 (2 − ) −6 2 (4 + ) If = 0 this reduces to (12.§13.2.9).18). As → 0 the Timoshenko model reduces to the BE model. As = 5A/6.4. -6/Le.17) This dimensionless ratio characterizes the “shear slenderness” of the beam element. Return[Ke]]. G the shear modulus and As the effective shear area. 21) (13. Example: cantilever beam discretized with two Timoshenko beam elements.7. in which L e = L/2 and = 12 E Izz /(G As (L/2)2 ) = 48 E Izz /(G As L 2 ). The objective is to find deflections.19) def Subtracting: uγ = ueT − ueB R = (I − G B H S )ueT = [ 0 γ e 0 γ e ]T .. The master stiffness equations are  48 12L −48 12L 0 2 (4+ ) −12L 2 (2− ) L 0 12L L  2E Izz  −48 −12L 96 0 −48  2 0 2L 2 (4+ ) −12L L 3 (1+ )  12L L (2− ) 0 0 −48 −12L 48 0 0 12L L 2 (2− ) −12L Setting the displacement B.22) . . The recovery process can be effectively done by passing first to generalized coordinates: ce = H S ue . Recover the mean shear distorsion γ e and the curvature κ e over the element on the way to internal forces and stresses. It is subject to two point loads as shown. §13. curvatures and shear distortions and associated bending moments and shear forces.. L 2 (2− )    θ2   0  P v3 −12L 0 L 2 (4+ ) θ3 L (22 + ) 24 3 2 T . the following arises during postprocessing. where the curvature displacement matrix Be is that given in the previous Chapter.C. in which ueB E = G B ce = G B H S ue = TBT  T BT = −G B H S = I − 0  L1e 0 1+ 1 Le  0 0 0 1 2 1 Le 1 2 0 0 0 1 2 1 Le 1 2  (13.20) Le 1 The curvature is obtained from the Bernoulli-Euler vector: κ = Be ueB E . Consider the prismatic cantilever beam of length L pictured in Figure 13. Shear flexibility is to be accounted for using the Timoshenko model. and then to Bernoulli-Euler node displacements: e ueT . γe = Example 13. It is sufficient to discretize the beam with two Timoshenko beam elements oflength L/2 as shown in the figure. Shear-Curvature Recovery When using the Timoshenko beam model.18). The stiffness matrices for both elements are given by (13. Explicitly 1 e (v − v2e ) + 12 (θ2e + θ1e ) (13. x 1 1 2 P 3 (a) Finite element 2 discretization L/2 L/2 L Mz = PL 2 (b) Transverse shear force Vy − Vy =−P + (c) Bending moment Mz Figure 13.6. The problem is not trivial because γ e is part of the rotational freedoms. The bending and shear rigidities E Izz and G As are constant along the span.2.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS EIzz and GA s constant along beam P y.2.6(a). v1 = θ1 = 0 and solving yields u= P L2 4E Izz  0 0 L 4 1 13–8     0 v1 0 0 θ  1   0  12L   v2   −P   = .v . (13. Suppose that the element node displacement vector ue = ueT is given following the solution process. respectively. (ii) Beam supported by discrete but closely spaced flexible supports.7. §13. The internal energy stored in the d x slice of Winkler springs is −/ v d f F = / k F v 2 d x.. zz zz The transverse shear force resultant and bending moment are easily recovered as Vye = G As γ (e) and Mze = E Izz κ e .2 GENERALIZED INTERPOLATION The mean element shear distortions are calculated from (13.. bed of springs Figure 13. Beam-foundation separation effects that may occur in case (i) are ignored here because that would lead to a nonlinear contact problem. The Winkler model may be viewed as a “continuification” of case (ii).6(b..§13. This is the case in foundations. (13. The spring-reaction force acting on the beam is taken to be d f F = −k F v(x) d x. Here v(x) is the transverse deflection and k F the Winkler foundation stiffness. γ (2) = − P L2 P =− 48E Izz G As (13. Two common configurations that occur in structural engineering are: (i) Beam resting on a continuum medium such as soil.24) (1) (2) 1 Note that θ B2 = 1 = θ B2 = 1 + 12 . u(2) B = P L2 4E Izz L 4 1+ 12 L (22 + ) 24 3+ 2 12 T . Such uncertainties are inherent in soil mechanics.22) using (13. This occurs in railbeds (structurally rails are beams supported by crossties) and some types of grillworks. Take a beam slice going from x to x + d x. B = 4E I (1 − ξ ). Consequently the effect of elastic supports is to modify the internal energy U Be of the beam element so that it becomes y. Beam on Elastic Supports Sometimes beams.. pushing up if the beam moves down and pulling down if it moves up. when the presence of physical uncertainties would not justify a more complicated model..7. This gives γ (1) = 0. as in the “bed of springs” pictured in Figure 13.25) B = 2E I . A beam supported by a bed of springs. Continuification of this configuration leads to the Winkler foundation model treated in this subsection.. which has dimension of force per length-squared. It is a simplification of (ii) because the discrete nature of supports is smeared out.23) The element-level Bernoulli-Euler node displacements are obtained from (13.c).. Force d f F has the opposite sign of v(x).8.20). 13–9 . particularly in foundation and railway engineering.22) on subtracting the shear distortions (13.2. It is nonetheless popular. v q(x) beam x .. The curvatures are now recovered as PL PL (2) κ (1) = B(1) u(1) κ (2) = B(2) u(2) (13. The results are drawn in Figure 13. as well as other structural members. The Winkler foundation is a simplified elastic-support model.23) from the rotations: u(1) B = P L2 4E Izz  0 0 L 4 1 T . It is an approximation for (i) because it ignores multidimensional elasticity effects as well as friction. may be supported elastically along their span. the “kink” being due to the shear distortion jump at node 2. TimoshenkoWinklerStiffness[Le_. ] listed in Figure 13. This holds regardless of beam model.8.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS  U = e U Be + U Fe .kF.29). KeW={{4*(78+147*Φ+70*Φ^2). Le*(26+63*Φ+35*Φ^2).29) The module TimoshenkoWinklerStiffness[Le. (13. with U Fe = k F v 2 d x. This is best handled by doing the generalized stiffness KcF first. Return[KeW]].-Le^2*(6+14*Φ+7*Φ^2).3. 13–10 .28) KeF = k F HTB Q0 H B =  54 13 156 −22  420 2 2 −13 −3 −22 4 If instead the supported member is modeled as a Timoshenko beam.26) 0 Therefore the total stiffness of the element is computed by adding the foundation stiffness to the beam stiffness.8 implements the stiffness (13. that the same set of nodal freedoms is used.1. -Le*(44+77*Φ+35*Φ^2). Le*(44+77*Φ+35*Φ^2).kF_. the generalized Winkler foundation stiffness for constant k F is  KcF = k F L T L d x = k F Q0 . and then using the appropriate generalized-to-physical transformation.10) as generalized-to-physical transformation matrix to get   156 22 54 −13 k F  22 13 −3 2  4 2 . Care must be taken.28).2) as v = L c. Now if the member resting on the foundation is modeled as a BE beam. Le^2*(8+14*Φ+7*Φ^2)}}* kF*Le/(840*(1+Φ)^2). (13. invoke with = 0. {Le*(44+77*Φ+35*Φ^2). -Le^2*(6+14*Φ+7*Φ^2)}. 4*(78+147*Φ+70*Φ^2). -Le*(44+77*Φ+35*Φ^2)}. 1 2 (13.Φ_]:=Module[{KeW}. {-Le*(26+63*Φ+35*Φ^2). one picks H S of (13. {4*(27+63*Φ+35*Φ^2). 4*(27+63*Φ+35*Φ^2).27) 0 where Q0 is the first diagonal matrix in (13. Examples of use of this module are provided in §13. however. Le*(26+63*Φ+35*Φ^2).12) to get KeF = k F HTS Q0 H S  4(78+147 +70 2 ) kF  (44+77 +35 2 ) =  4(27+63 +35 2 ) 840(1+ )2 − (26+63 +35 2 ) (44+77 +35 2 ) 2 (8+14 +7 2 ) (26+63 +35 2 ) − 2 (6+14 +7 2 )  4(27+63 +35 2 ) − (26+63 +35 2 ) (26+63 +35 2 ) − 2 (6+14 +7 2 )  4(78+147 +70 2 ) − (44+77 +35 2 )  − (44+77 +35 2 ) 2 (8+14 +7 2 ) (13. To get the BE-beam Winkler stiffness (13. Figure 13. If the transverse deflection v is interpolated with (13.4). Stiffness matrix module for a Winkler foundation supporting a Timoshenko beam element. -Le*(26+63*Φ+35*Φ^2)}. one picks H B of (13. Le^2*(8+14*Φ+7*Φ^2). respectively. When used as shape functions in the generalized interpolation (13.7. The solution (13.1.2). fe = 2  2  . §13. v1 . KeF and fe for constant E I and k F . The Mathematica script listed in Figure 13.§13. and uniform transverse load q(x) = q0 . the resulting stiffness matrix is exact if the FEM model is loaded at the nodes. and are sufficiently simple to be amenable to analytical integration. It can be used to derive exact stiffness matrices if homogeneous solutions are available in closed form. the Legendre polynomials L 1 (ξ ) through L 4 (ξ ) are exact solutions of the homogeneous. The physical stiffness is Ke = KeB + KeF with KeB = HTF KcB H F and KeF = HTF KcF H F . Computation with transcendental functions by hand is unwieldy and error-prone. with ζ = χ x/ and χ = 4 kF . as further discussed in §13. The following subsection illustrates the method for a BE beam resting on a Winkler elastic foundation.32) In compact form this is ue = G F c. and at this point it is better to leave that task to a CAS.30) 4E I Here the ci are four integration constants to be determined from four end conditions: the nodal degrees of freedom v1 . The nodal freedoms are linked to generalized coordinates by      0 1 0 1 v1 c1 χ / χ / χ / −χ /  θ1     c2  v  =  c . eχ cos χ e−χ sin χ e−χ cos χ eχ sin χ 1 3 χ χ −χ −χ χ e (cos χ+ sin χ ) χ e (cos χ − sin χ ) χ e (cos χ − sin χ ) −χe (cos χ + sin χ ) θ1 c4 (13. The technique can be extended to more complicated onedimensional problems. The governing equilibrium equation for constant E I > 0 and k F > 0 is E I d 4 v/d x 4 + k F v = q(x).31) 0 This defines KcB and KcF as generalized element stiffnesses due to beam bending and foundation springs. KeB = 3 2     3 2 B1 −B2 F1 −F2 f1 4 g 16χ g χ g symm B3 symm F3 − f2 (13.30) is used as generalized interpolation with eζ sin ζ through e−ζ cos ζ as the four shape functions. Differentiating twice gives v  = dv/d x and v  = d 2 v/d x 2 . Exact Winkler/BE-Beam Stiffness Consider again a prismatic. The TPE functional of the element in terms of the generalized coordinates can be expressed as  ec = 1 2 E I (v  )2 + 12 k F v 2 − q0 v d x = 12 cT (KcB + KcF ) c − cT fc .3 INTERPOLATION WITH HOMOGENEOUS ODE SOLUTIONS §13. Inverting gives c = H F ue with H F = G−1 F . plane BE beam element resting on a Winkler foundation of stiffness k F .3. v2 and v2 . These constants are treated as generalized coordinates and as before collected into vector c = [ c1 c2 c3 c4 ]T .33) 13–11 .9 is designed to produce KeB . Interpolation with Homogeneous ODE Solutions For both BE and Timoshenko beam models. (13.6. plane beam equilibrium equation E I d 4 v/d x 4 = 0. prismatic. (13. as pictured in Figure 13. KeF = . The general homogeneous solution over an element of length going from x = 0 to x = is ζ v(x) = e c1 sin ζ + c2 cos ζ + e −ζ  c3 sin ζ + c4 cos ζ .3. The script gives       B1 B2 B5 −B4 F1 F2 F5 −F4 f1 E I χ k q B B B F F F f       F 0 3 4 6 3 4 6 . whereas fc is the generalized force associated with a transverse load q(x). The consistent force vector is fe = HTF fc . EI_.B4. {KgF.0. B6 =2*Le^2*(Cosh[3*χ]*(-2*χ*Cos[χ]+3*Sin[χ])+Cosh[χ]*(2*χ*Cos[3*χ]+3*(Sin[3*χ]4*Sin[χ]))+(9*Cos[χ]-3*Cos[3*χ]-6*Cos[χ]*Cosh[2*χ]+16*χ*Sin[χ])*Sinh[χ]).Nf/. Nfdd=D[Nfd. Print["KgF=".F6}.B2.B4. Print["fe=".x->Le.fe.facB.F1.χ. fe=facf*{f1.KeF. Print["KgB=".F5.{x. KeB=facB*{{B1.f2.x->0.B5. Print["KeF=".KeB.F2. KeBfac=FullSimplify[KeB/facB].B3.fg]].KgF//MatrixForm].fg}].KgB.facf. B5 =-4*χ^2*(2*Cos[χ]*(-2+Cos[2*χ]+Cosh[2*χ])*Sinh[χ]+Sin[3*χ]* (Cosh[χ]-2*χ*Sinh[χ])+Sin[χ]*(-4*Cosh[χ]+Cosh[3*χ]+2*χ*Sinh[3*χ])). KeFfac=FullSimplify[KeF/facF]. KgB=EI*Integrate[Transpose[{Nfdd}]. facf=(q0*Le)/(χ^2*g). B1 =2*χ^2*(-4*Sin[2*χ]+Sin[4*χ]+4*Sin[χ]*(Cos[χ]*Cosh[2*χ]+ 8*χ*Sin[χ]*Sinh[χ]^2)+2*(Cos[2*χ]-2)*Sinh[2*χ]+Sinh[4*χ]).F3.KgB//MatrixForm]. 13–12 . F1 =2*χ^2*(-32*χ*Sin[χ]^2*Sinh[χ]^2+6*(-2+Cos[2*χ])* (Sin[2*χ]+Sinh[2*χ])+6*Cosh[2*χ]*(Sin[2*χ]+Sinh[2*χ])). KgF=kF*Integrate[Transpose[{Nf}].GF//MatrixForm].KgF. Print["KeB=". facF=(kF*Le)/(16*χ^3*g^2).F4.KeFfac//MatrixForm].Nfd/.kF_.Exp[ χ*x/Le]*Cos[χ*x/Le].f1.B6.KgB. Module to get the exact BE-Winkler stiffness and consistent load vector.{B5.q0.B2. fe=Simplify[ExpToTrig[HFT.-f2}. B3 =-(Le^2*(8*χ*Cos[2*χ]-12*Sin[2*χ]+Cosh[2*χ]*(6*Sin[2*χ]-8*χ)+3*Sin[4*χ]+ 2*(6-3*Cos[2*χ]+4*χ*Sin[2*χ])*Sinh[2*χ]-3*Sinh[4*χ])). f1=2*χ*(Cosh[χ]-Cos[χ])*(Sin[χ]-Sinh[χ]). Print["HF=". F6 =-2* Le^2*(-(Cosh[3*χ]*(2*χ*Cos[χ]+Sin[χ]))+Cosh[χ]*(2*χ*Cos[3*χ]+ 4*Sin[χ]-Sin[3*χ])+(Cos[3*χ]+Cos[χ]*(2*Cosh[2*χ]-3)+16*χ*Sin[χ])*Sinh[χ]).x].q0_]:=Module[{B1." * ".f1.Le.x]. HFT=Transpose[HF]. HF=Simplify[Inverse[GF]].{x." * ". Figure 13. BEBeamWinklerExactStiffness[Le_. facf=(q0*Le)/(χ^2*g). Exp[-χ*x/Le]*Sin[χ*x/Le].F4.{Nfdd}.B4. f2=-(Le*(Sin[χ]-Sinh[χ])^2). χ=PowerExpand[Le*((kF/(4*EI))^(1/4))].F4. Figure 13. Script to produce the exact Winkler-BE beam stiffness matrix and consistent force vector.fefac]. F5 =-4*χ^2*(6*Cos[χ]*(-2+Cos[2*χ]+Cosh[2*χ])*Sinh[χ]+Sin[3*χ]* (3*Cosh[χ]+2*χ*Sinh[χ])+Sin[χ]*(-12*Cosh[χ]+3*Cosh[3*χ]-2*χ*Sinh[3*χ])).9.B3.F6.x->0.Le}].{-F4.Le}].F3}}. facF=(kF*Le)/(16*χ^3*g^2).0.{ B2. F1.HF]. Nf={Exp[ χ*x/Le]*Sin[χ*x/Le].KeF.Nfd/.fe}]].HF]." * ".B6.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS ClearAll[EI.-F4}.B1.facf.facF.F2.facB.-B2}. F4 =4*Le*χ*(χ*Cosh[3*χ]*Sin[χ]-χ*Cosh[χ]*(-2*Sin[χ]+Sin[3*χ])+(χ*Cos[χ]+ χ*Cos[3*χ]+10*Sin[χ]-2*Cosh[2*χ]*(χ*Cos[χ]+2*Sin[χ])-2*Sin[3*χ])*Sinh[χ]). GF=Simplify[{Nf/. F3 =Le^2*(8*χ*Cos[2*χ]+4*Sin[2*χ]-2*Cosh[2*χ]*(4*χ+Sin[2*χ])-Sin[4*χ]+ 2*(Cos[2*χ]+4*χ*Sin[2*χ]-2)*Sinh[2*χ]+Sinh[4*χ]).{-B4.F3.{x.x].B6}. B4 =-4*Le*χ*(χ*Cosh[3*χ]*Sin[χ]-χ*Cosh[χ]*(-2*Sin[χ]+Sin[3*χ])+(χ*(Cos[χ]+ Cos[3*χ])+Cosh[2*χ]*(-2*χ*Cos[χ]+4*Sin[χ])+2*(-5*Sin[χ]+Sin[3*χ]))*Sinh[χ]).F5.fg}=Simplify[{KgF.{F5.B5. g=2-Cos[2*χ]-Cosh[2*χ].KgB.kF.{ F2.f2.B3}}. Print["GF=".F6. KeF=facF*{{F1.HF//MatrixForm].10. KeB=Simplify[HFT. facB=(EI*χ/Le^3)/(4*g^2).-F2.-B4}.0.-F2}. B2 =2*Le*χ*(4*Cos[2*χ]-Cos[4*χ]-4*Cosh[2*χ]+ Cosh[4*χ]8*χ*Sin[2*χ]*Sinh[χ]^2+8*χ*Sin[χ]^2*Sinh[2*χ]). g=2-Cos[2*χ]-Cosh[2*χ].Le}].facF. fg= q0*Integrate[Transpose[{Nf}].-B2.Exp[-χ*x/Le]*Cos[χ*x/Le]}. Nfd=D[Nf. facB=(EI*χ/Le^3)/(4*g^2).{Nf}. F2 =2*Le*χ*(4*Cos[2*χ]-Cos[4*χ]-4*Cosh[2*χ]+Cosh[4*χ]+ 8*χ*Sin[2*χ]*Sinh[χ]^2-8*χ*Sin[χ]^2*Sinh[2*χ]).KeBfac//MatrixForm] KeF=Simplify[HFT. Return[{KeB.x->Le}].χ}. fefac=Simplify[fe/facf]. . B2 = 2 χ (4 cos 2χ − cos 4χ −4 cosh 2χ + cosh 4χ−8χ sin 2χ sinh2 χ +8χ sin2 χ sinh 2χ ).... The Winkler foundation coefficient k F is constant. ........ .. B1 = 2χ 2 (−4 sin 2χ + sin 4χ +4 sin χ (cos χ cosh 2χ +8χ sin χ sinh2 χ )+2(cos 2χ −2) sinh 2χ + sinh 4χ ).q0]...10. f 1 = 2χ(cosh χ − cos χ )(sin χ − sinh χ ). Example 13... B3 = −( 2 (8χ cos 2χ−12 sin 2χ + cosh 2χ (6 sin 2χ −8χ )+3 sin 4χ + 2(6−3 cos 2χ +4χ sin 2χ) sinh 2χ −3 sinh 4χ )). in which g = 2 − cos 2χ − cosh 2χ. As usual in foundation engineering we set k F = E I λ4 /L 4 .34) These expressions are used to code module BEBeamWinklerExactStiffness[Le.11..... (13.. + sin χ(−12 cosh χ +3 cosh 3χ −2χ sinh 3χ )) F6 = −2 2 (−(cosh 3χ(2χ cos χ + sin χ ))+ cosh χ (2χ cos 3χ +4 sin χ − sin 3χ ) +(cos 3χ + cos χ(2 cosh 2χ−3)+16χ sin χ ) sinh χ ).3.. which is listed in Figure 13......3 INTERPOLATION WITH HOMOGENEOUS ODE SOLUTIONS . F4 = 4 χ (χ cosh 3χ sin χ −χ cosh χ (sin 3χ −2 sin χ )+(χ cos χ +χ cos 3χ +10 sin χ −2 cosh 2χ (χ cos χ+2 sin χ )−2 sin 3χ ) sinh χ ).. F5 = −4χ 2 (6 cos χ (−2+ cos 2χ + cosh 2χ ) sinh χ + sin 3χ (3 cosh χ+2χ sinh χ ).... F2 = 2 χ (4 cos 2χ − cos 4χ −4 cosh 2χ + cosh 4χ+8χ sin 2χ sinh2 χ −8χ sin2 χ sinh 2χ ). f 2 = − (sin χ − sinh χ )2 . . B4 = −4 χ (χ cosh 3χ sin χ−χ cosh χ (−2 sin χ + sin 3χ )+(χ (cos χ + cos 3χ ) + cosh 2χ (−2χ cos χ +4 sin χ )+2(−5 sin χ+ sin 3χ )) sinh χ ). A fixed-fixed BE beam rests on a Winkler foundation as shown in Figure 13... 13–13 (13.§13.kF..35) .11. and constant E I . y. F3 = 2 (8χ cos 2χ+4 sin 2χ −2 cosh 2χ (4χ + sin 2χ )− sin 4χ +2(cos 2χ +4χ sin 2χ −2) sinh 2χ + sinh 4χ ). B5 = −4χ 2 (2 cos χ (−2+ cos 2χ + cosh 2χ ) sinh χ + sin 3χ (cosh χ−2χ sinh χ ) + sin χ(−4 cosh χ+ cosh 3χ +2χ sinh 3χ )) B6 = 2 2 (cosh 3χ (−2χ cos χ +3 sin χ )+ cosh χ (2χ cos 3χ +3(−4 sin χ+ sin 3χ )) +(9 cos χ −3 cos 3χ −6 cos χ cosh 2χ +16χ sin χ ) sinh χ ) F1 = 2χ 2 (−32χ sin2 χ sinh2 χ +6(−2+ cos 2χ )(sin 2χ + sinh 2χ )+6 cosh 2χ (sin 2χ + sinh 2χ))...... The beam has span 2L. v P : Load case (I) q0 : Load case (II) EI constant A C x B k F constant L L 2L Figure 13. Example: fixed-fixed beam on Winkler elastic foundation.EI.. 42×10−7 where λ is a dimensionless rigidity to be kept as parameter.999997 1 0.968661 0. The results are shown in a log-log plot in Figure 13.11..065315 0.968742 0. Results for selected values of λ are presented in Table 13. and 8 elements with the stiffness (13. for a “soft” foundation characterized by λ < 1.63×10−6 2.041321 0.36) as long as the midspan section C is at a node. 100].041317 0.970005 2 0. and the polynomial FEM results exhibit higher relative errors.003220 3.. C I (λ) = 3 √ √ 420 138600 λ sin 2λ + sinh 2λ (13.36) √ √ √ √ 163 4 48 (cos λ/ 2− cosh λ/ 2)(sin λ/ 2− sinh λ/ 2) 20641 8 =1− λ + λ + . See Figure 13.23×10−7 0. As can be expected.28) produced by cubic polynomials.999997 0. k F = 0 (no foundation).049152 0.999997 0.049152 0.40×10−7 0.23×10−7 0. On the other hand.969977 0.003220 3.1.002393 2.668790 0. For convenience this I and v I I (λ) = C (λ)v I I for load cases (I) and (II)). the deflections become rapidly smaller. the cubic-polynomial elements gave satisfactory results and converged quickly to the exact answers. 0 0 −1 log10 CI Load Case I: Central Point Load −2 log10 CII −1 2 exact elements Load Case II: Uniform Line Load Over Right Half −2 −3 −3 −4 −4 2 poly elements 4 poly elements 8 poly elements −5 −6 −1 −0. As λ grows over one.999997 0.006648 8.008485 100 8.11 over range λ ∈ [0.067483 0.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS Table 13.970003 0. The exact deflection factors for this model are √ √ √ 13 4 6 2 cos 2λ + cosh 2λ − 2 137 8 =1− λ + λ .999997 0. 13–14 ..1 .5 The beam is subjected to two load cases: (I) a central point load P at x = L. 4.5 0 0. Using any number of those elements would match (13. C I I (λ) = 4 √ √ 5040 19958400 λ sin 2λ + sinh 2λ Both load cases were symbolically solved with two exact elements of length L produced by the module of Figure 13.1 0.48×10−6 0.968666 0. Log-log plots of C I (λ) and C I I (λ) for Example of Figure 13. whereas χ is discretization dependant because it involves the element length.Results for Example of Figure 13.999997 0. the absolute errors remain small.999997 0. 5 Note that λ is a true physical parameter..1.12.657708 0. The focus of interest is the deflection vC at midspan C (x = L).970005 0. the answers reproduce the exact solutions (13.672185 0.002395 2.12.5 1 1. and (II) a uniform line load q0 over the right half x ≥ L.672167 0.008191 0.969977 0.999997 0. respectively.002394 1. As can be seen.658316 0.067652 5 10 0.5 2 exact elements 2 poly elements 4 poly elements 8 poly elements −5 −6 2 log 10 λ −1 −0.36). All quantities are kept symbolic.62×10−7 0. especially in load case (II).041254 0. that is.5 0 0.671893 0.657746 0. The conclusion is that exact elements are only worthwhile in highly rigid foundations (say λ > 5) and then only if results with small relative error are of interest.10.668790 0. Then both cases were solved with 2. is rendered dimensionless by taking vCI (λ) = C I (λ)vC0 II C C0 I I I 3 4 Here vC0 = −P L /(24E I ) and vC0 = −q0 L /(48E I ) are the midspan deflections of cases (I) and (II) for λ = 0.03×10−7 Load case (II): Line Load Over Right Half exact C I I Ne = 2 Ne = 4 Ne = 8 0.5 2 Figure 13.5 1 log 10 λ 1.11 at Selected λ Values Load case (I): Central Point Load exact C I Ne = 2 Ne = 4 Ne = 8 λ 0. 13–15 . =− 522090 112631 528960 −113504 5959453500 3 −112631 −24273 2 −113504 24384 2 KeF4 = − (13.28). To correlate the exact stiffness and consistent forces with those obtained with polynomial shape functions it is illuminating to expand (13. in which KeB0 KeB12   25488 5352 23022 −5043 2 2 E I  5352 1136 5043 −1097  .20) . . The foregoing expansions indicate that exactness makes little difference if χ < 1. Note that K B0 and K F0 decouple. . . as can be expected. KeF8 = − K . . = eqn (12. The rationale is that as the element size gets smaller. . fe = f0 + χ 4 f4 + .2. . which allows them to be coded as separate modules. Mathematica gives the expansions KeB = K B0 + χ 8 K B8 + χ 12 K B12 + . χ = 4 k F /(4E I ) goes to zero for fixed E I and k F .38) k F 4 e 3k F 4 e q0 q0 K B8 .33) as power series in χ. . 2E I 8E I B12 0 12 5040 Thus as χ → 0 we recover the stiffness matrices and force vector derived with polynomial shape functions. KeF = K F0 + χ 4 K F4 + χ 8 K F8 + . KeB8 = 23022 5043 25488 −5352 4365900 3 −5043 −1097 2 −5352 1136 2   528960 113504 522090 −112631 2 2 EI  113504 24384 112631 −24273  . .37) (13.§13.3 INTERPOLATION WITH HOMOGENEOUS ODE SOLUTIONS Remark 13. fe4 = − [ 14 3 14 −3 ]T . fe = [ 6 6 − ]T . On the other hand the exact stiffnesses are coupled if χ > 0. . KeF0 = eqn (13. is only valid only in geometrically linear analysis. Evaluating this at the r freedoms gives ur = Gr us + dr .13(a) is in self equilibrium and the virtual displacements are imparted by rigid motions δdr = 0 and δur = Gr δus . because it requires advanced variational methods that are beyond the scope of this book. These are applied to 1D element construction in §13. δu = . in which matrix G (of appropriate order) represents a rigid motion and d are deformational displacements.42) does not hold.4. fr } undergoing virtual displacements.40) The first decomposition in (13. fr ur δur The dimension n s of fs . (13.6 Consider now the “rigid + deformational” displacement decomposition u = Gus + d. Sometimes it is useful to express the foregoing expressions in the complete-vector form u=  us ur  =      I 0 δus us + . It is more difficult in two and three.1. Self-Equilibrated Force System First we establish a useful theorem that links displacement and force transformations. then ur = dr . This section surveys theorems that provide the theoretical basis for flexibility methods. Thus       f us δus u= . These lead to flexibility methods.5.13(b) shows the force system {fs .and three-dimensional space. (13. The generic potato intends to symbolize any discretized material body: an element. fs = −GrT fr . displacements and virtual displacements associated with those freedoms are partitioned accordingly. (13.40). two. 7 If the model is geometrically nonlinear.42) . the first form in (13. The r freedoms (r is for released) collect the rest. respectively. being linear in the actual displacements. Because the δus are arbitrary. and likewise for the virtual displacements.4. the alternative name deformational displacements is justified. (13. Because a relative motion is necessarily associated with deformations. 13–16 −GrT I  fr . Equilibrium Theorems One way to get high performance mechanical elements is to use equilibrium conditions whenever possible. If the force system in Figure 13.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS §13. the virtual work must vanish: δW = δusT fs + δusT GrT fr = δusT (fs + GrT fr ) = 0. 3 and 6 in one-.13(a). Taking advantage of equilibrium is fairly easy in one space dimension. it follows that fs + GrT fr = 0. The s freedoms (s stands for suppressed or supported) are associated with a minimal set of supports that control rigid body motions or RBMs. Consider a FEM discretized body such as that pictured in Figure 13. us and δus is 1.41) These are the overall static equilibrium equations of a discrete mechanical system in self equilibrium. an element assembly or a complete structure. The external virtual work is δW = δWs + δWr = δusT fs + δurT fr . δu = δur Gr dr  =       I 0 f δus + .39) f= s .42) are said to be reciprocal. Partition its degrees of freedom into two types: r and s. Thus dr represents a relative displacement of the unsupported freedoms with respect to the rigid motion Gus . If the supported freedom motion vanishes: us = 0. f= s fr Gr δdr =  Relations in (13. That for virtual displacements is valid for a much broader class of problems. §13. which are exaggerated for visibility. Figure 13.7 6 Under virtual displacements the forces are frozen for application of the Principle of Virtual Work. In the figure those freedoms are shown collected at invididual points Ps and Pr for visualization convenience. δur = Gr δus + δdr . Node forces. (a) Self equilibrated node force system. §13.3.13. To bring this under the framework of equilibrium analysis.8 The point of application is Pq . So the expectation is that the flexibility can be obtained as the inverse of the stiffness: Fe = (Ke )−1 . which were derived through the PVW. acts on the body. and G evaluated at Pq is Gq . including geometric nonlinearities. By definition. where Fe is the element flexibility matrix. The freedoms in us are virtual supports.14(a). a series of steps are required.43) is insufficient to fully determine qs and qr .4. whereas aircraft or orbiting satellites have none. 13–17 .4. Equilibrium is restored by introducing node forces qr and qs at the appropriate freedoms. See also Remark 13.14(d).41) and (13. each lumped to a point to simplify diagram. the surface tractions pictured in Figure 13.§13. Flexibility Equations The first step in FEM equilibrium analysis is obtaining discrete flexibility equations. (13. §231]. (13.3. An externally applied load system of surface or body forces. Conditions (13.2. Remark 13.43) If (13.43) is sufficient to determine qs and qr . as it is always possible to write out the virtual work by appropriately integrating distributed effects. grossly exaggerated for visibility.3. The replacement of the applied force by a resultant is not strictly necessary.43) gives the general overall equilibrium condition fs + qs + GrT (fr + qr ) + GqT q = 0. Remark 13. chosen for convenience in flexibility derivations.5. The remaining equations to construct the equivalent forces must come from a theorem that accounts for the internal energy. Nodal freedoms classified into supported (s) and released (r ).14(b). as discussed in §13.4. They should not be confused with actual or physical supports. Remark 13. For instance Civil Engineering structures tend to have redundant physical supports.41) and (13. the load system of Figure 13. qr . as pictured in Figure 13. qs } through rigid-motion virtual displacements. The virtual work is δW = δusT (qs + GrT qr + GqT q) = 0 whence qs + GrT qr + GqT q = 0. flexibility equations relate displacements to forces: ue = Fe fe . The resultant is primarily useful as an instructional tool. as pictured in Figure 13. not necessarily in self equilibrium.14(c). Right? 8 Although the figure shows a resultant point force. §13.14(a) can be effectively replaced by the nodal forces −qs and −qr .4 EQUILIBRIUM THEOREMS (b) (a) δus Pr fr fs fs Ps Ps δur Pr fr Figure 13. because matrix Gq is not position dependent. in general it may include a point moment that is not shown for simplicity. hold for general mechanical systems under mild reversibility requirements [752.4. Point Pq moves through δuq . Handling Applied Forces Consider now a generalization of the previous scenario. as depicted in Figure 13.4. But in general (13.44) which is applied in §13. (b) Force system of (a) undergoing virtual displacements.3.43). From now on we restrict attention to systems linear in the actual displacements. For example. At the element level they are fe = Ke ue . First. Body to illustrate equilibrium theorems. The overall equilibrium condition is obtained by putting the system {q.4 to the recovery of supported freedoms. Adding (13. These are called the equivalent node forces. the force system is replaced by a single resultant q. The stiffness equations introduced in Chapter 2 relate forces to displacements. Dropping the element superscript for brevity. [321]. e. Calculation of U ∗ in 1D elements involves expressing the internal forces (axial force. With the recent advent of the free-free flexibility (see Notes and Bibliography) it becomes necessary to introduce a “deformational” or “conventional” qualifier. starting from (13. (b) Substitution by resultant and self equilibration. Although it is possible to assemble flexibilities of MoM elements. bending 9 In the FEM literature it is often called simply the flexibility. for a linear problem one gets Frr fr = dr . (d) Replacing the applied loads by equivalent nodal forces. The same difficulty holds for a superelement or complete structure.45) be derived? There are several methods but only one.45). And it becomes dauntingly complex when tried on continuum-based elements [233]. the complementary energy ∗ of the body must be be expressed as a function of the nodal forces fr . The DSM assembly procedure covered in Chapter 3 (and extended in Chapter 27 to general structures) does not translate into a similar technique for flexibility methods. say us = 0.4. Processing non-self-equilibrated applied loads with flexibility methods. based on the Total Complementary Potential Energy (TCPE) principle of variational mechanics is described here. This can be done through the virtual supports introduced in §13. To recover ur it is necessary to release the supports. Wrong. This difficulty is overcome in §13.4. 13–18 .4. The reason is that for a long time it was believed that getting a flexibility matrix required a supported structure. shear forces.4.45) Note that ur does not appear: only the deformational or relative displacements. body or surface forces. (c) Deriving overall equilibrium conditions through the PVW. The procedural steps are explained in §13. For fixed supports (us = 0) and a linear system. br is a term resulting from loading actions such as as thermal effects. To apply TCPE. But how should (13. So one of the main uses of flexibility equations today is as a stepping stone on the way to derive element stiffness equations.14. and ∗0 is independent of fr ..4. also called the stress energy by many authors. Recall that Ke for a disconnected free-free element is singular. (13. (13. To get a conventional flexibility matrix9 it is necessary to remove all rigid body motions in advance. the technique is neither simple nor elegant.1.46) Here U ∗ is the internal complementary energy. the functional can be expressed as ∗ (fr ) = U ∗ (fr ) − frT dr = 12 frT Frr fr + frT br − frT dr + ∗0 .Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS (b) (a) Ps qr qs Pr Ps Pr Pq t(x) q (c) δus δur qs Ps (d) −qs qr Ps Pr δuq −q r Pr Pq q Figure 13. Its ordinary inverse does not exist. The support motions us are fixed. Flexibility equations are sought between what is left of the kinematics. There is another key difference with stiffness methods. but if that is naively done Frr ceases to exist. (a) Body under applied distributed load.g. Expectations go up in smoke. §13.48) and then into (13.53)  Gq qr + q = TT Krr T u − TT qr + TqT q.   us ur   −   GrT qr − GqT q . 10 For 2D and 3D elements the process is more delicate and demands techniques.54) −1 T.4. whence dr = Frr fr + br . torque.47) ∂fr By hypothesis the deformational flexibility Frr is nonsingular. dr and q can be arbitrarily varied. each bracket in (13.39) as   fs fr =  Kss Kr s  Ksr Krr us ur  −   qs . (13. Inserting fs and fr into (13. (13. such as hybrid variational principles. 13–19 . Alternatively (13. qr (13.10 The TCPE principle states that ∗ is stationary with respect to variations in fr when kinematic compatibility is satisfied: ∂∗ = Frr fr + br − dr = 0.§13.      (13.47). Other properties are studied in [?]. whence ur = dr . whereas qr is the equivalent load vector. qr (13.48) fr = Krr dr − qr .44). giving qs = −GrT qr − GqT q. that lie beyond the scope of this material. Remark 13. which are partitioned in accordance with (13.4 EQUILIBRIUM THEOREMS moments. The columns of R represent nodal values of rigid motions.48) have been found. The key property is T R = 0 and thus K R = TT Krr T R = 0. with Krr = Frr The matrix Krr is the deformational stiffness matrix.44) yields   (Kss + GrT Kr s )us + (Ksr + GrT Krr )ur + qs + GrT qr + GqT q = 0.50)  Kss + GrT Kr s + Ksr Gr + GrT Krr Gr us + Ksr + GrT Krr dr + qs + GrT qr + GqT q = 0. for example from the TPCE principle (13.52) (13. The goal is to arrive at the free-free stiffness equations. The matrix R built by the prescription R=  S GS  (13. Solving for fr gives the deformational stiffness equations −1 and qr = Krr br . etc. and replacing ur = Gr us + dr . set us = 0. Application examples are given in the next section.51) must vanish identically. Inserting these into (13.49) yields   fs fr =  This can be put in the more compact form     −GrT Krr Krr GrT Krr Gr −Krr Gr    fs −GrT u −GrT = Krr [ −Gr I ] s − fr I ur I with T = [ −Gr I ] and Tq = [ Gq 0 ] . Ksr = −GrT Krr .48). (13. T Kr s = Ksr = −Krr Gr . Kss = −GrT Kr s − Ksr Gr − GrT Krr Gr = GrT Krr Gr + GrT Krr Gr − GrT Krr Gr = GrT Krr Gr .49) To justify the presence of Krr and qr here. hence the name.51) Because us .) in terms of fr from statics.54) may be derived by plugging The end result is that the free-free stiffness is TT Frr dr = ur − Gr us into (13. Let S be a n s × n s nonsingular matrix.4.55) is called a rigid body motion matrix or simply RBM matrix. Rigid Motion Injection Suppose that Frr and qr of (13. which matches (13. The scaling provided by S may be adjusted to make R simpler. 0 (13.6. Consequently the second equation reduces to fr = Krr dr − qr . q= .56) Further.1. it is necessary to produce a stiffness matrix. Flexibility Based Derivations The equilibrium theorems of the foregoing section are applied to the flexibility derivation of several onedimensional elements. G(x) = 0 1 x . §13.2.58) The classical static tests on an airplane wing are performed by applying transverse forces and torques to the wing tip with the airplane safely on the ground.1–§13. + +  = EA EI G As 0     0 0 0 E A 3   ∂ 2 ∗ 3 (4 + ) 2  . Experimental Stiffness from Flexibility. Applications to element construction are illustrated in §13. Applications Stiffness Equilibrium Tests. These experimental influence coefficients can be used for model validation.11 To insert this as a “user defined superelement” in a DSM code.54).4. §13. all node forces must vanish for arbitrary us . the element TCPE functional is    N2 M2 V2 d x − frT dr = 12 frT Frr fr + frT br − frT dr + ∗0 .  u x1 u y1 θ1     f x1 f y1 m1   V (x) = − f y2 − q0 ( − x). A prismatic.15(b). inverted to get Krr and rigid motions injected through (13.54) the result is fr = 0 and fs = 0.5. straight beam-column has three DOFs at each node: the axial displacement. Gr = G( ) and Gq = G( /2). Timoshenko Plane Beam-Column A beam-column member combines axial and bending effects.15(c). With the positive convention as shown we get N (x) = − f x2 .57) Useful check: d M/d x = V . f x2 f y2 m2   0 q 0    1 0 0 .Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS §13. The internal forces are the axial force F(x).5.4. If one injects ur = Gus and qr = 0 into (13. To suppress rigid motions node 1 is fixed as shown in Figure 13. = in which Frr = r 0 12E I   0 24E I 2E I  ∂fr ∂fr 2 2 0 6E I EI 2E I ∗ 11 1 2 (13. full structure) to verify that a directly generated K (that is. axial and bending effects are decoupled. the transverse shear V (x) and the bending moment M(x). In this case Frr is obtained through experimental measurements on a supported structure or substructure. superelement. plane element of this kind is shown in Figure 13. This test is useful at any level (element. End nodes are 1–2. Following the notation of §13. u x2 u y2 θ2 M(x) = m 2 + f y2 ( − x) + 12 q0 ( − x)2 . us = 0 0 0 (13. and to a uniformly distributed load q0 . Assuming a doubly symmetric section so that N and M are decoupled. b = q  (4 + )  . the transverse displacement and a rotation. The element is subjected to the six node forces shown.5. making the beam a cantilever. 13–20 . A 2-node. dr = ur = .5. This is done again by inversion and RBM injection.4. fr = . That is. fs = . Here Frr is constructed at the supported element level. These are directly obtained from statics by doing a free-body diagram at distance x from the left end as illustrated in Figure 13. The bending component is modeled as a Timoshenko beam.15(a). If the cross section is doubly symmetric. Element Stiffness from Flexibility. a K constructed independently of overall equilibrium) is “clean” as regards rigid body modes. (13. 0 0   1 0 0 1 1  Gq Tq = 0  0 0 = 0  0 0 0 1 /2 0 0 0  0 0 1 ..61) The bending component is the same stiffness found previously in §13. E I (4 + ) − 2 6E I (1 + ) (1 + ) (13. y. (c) FBD that gives internal forces at varying x.§13.6.18). plane beam-column element with circular profile.2.I. A useful verification technique is to support the beam element at end 2 and recompute Ke and fe . The node force vector is the same as the consistent one constructed in an Exercise. Ke = TT Krr T and fe = TT qr .54).17(a).5.16. Flexibility derivation of Timoshenko plane beam-column stiffness: (a) element and node forces. 0 0 12 6 6 2 (4 + ) 0 0 −12 −6 6 2 (2 − ) 0 0 0 0 0 0 0 q0 0  . This should reproduce (13. All of the foregoing computations were carried out by the Mathematica script shown in Figure 13. the flexibility method is used to construct the stiffness matrix of a curved. Plane Circular Arch in Local System In this and next subsection. compare with (13. in which  EA −1 Krr = Frr  0 =  0  0  0  0  qr = q0 Krr br = q0 /2  .As constant q0 m1 x fx1 1 fy2 q0 .5 FLEXIBILITY BASED DERIVATIONS (a) fy1 (b) E.59) To use (13. (b) removal of RBMs by fixing left node.v 1 2 fy2 m2 fx2 m2 f x2 2 q0 +V(x) +M(x) (c) 2 +F(x) fy2 m2 f x2 x Figure 13. Term ∗0 is inconsequential. yields  1  0 EA  e  0 K =   −1 0 −1 0 0 0 0 0 1 0 0 0 0 0 0 e f = q0 [ 0 1/2 /12 0 0 0 0 0 0 0   0 0 0 0 0 0 0 E I 0 0 +    3 0 0  (1 + )  0 0 0 0 0 0 0 T 1/2 − /12 ] . 0  0 0  q= Injecting the rigid body modes from (13. §13. This is inverted to produce the deformational stiffness relation fr = Krr dr + qr .61).54) the following transformation matrices are required:  −1  −GrT TT = 0   0  0 =  1  0 0  0 0 −1 0  − −1  . The local system {x. since it disappears on differentiation.15. pictured in Figure 13.G.2. y} is defined 13–21 .60)  0 0 −12 6  −6 2 (2 − )  .  0 0  12 −6 −6 2 (4 + ) (13. Applying the TCPE principle yields Frr fr = br − dr . −q0 2 /12  12E I − 2 6E I  3 (1 + ) (1 + )  . (13. prismatic. {0. No load acts between nodes. GAs=12*EI/(Φ*Le^2).G.0}.m2]}/.-1. Print["Ke=". v E. O +ψ y C +H x 1 y +ds O 2S C +R −R +ds −H C +ψ 2S +ds −H x 2 1 −2φ +2φ O +ψ x 2 2 +R +2φ O −R 1 2 y +ds 2S −2φ +H C +ψ 2S x 1 y Figure 13.0}.0. Print["Krr=". Frr=Simplify[Frr].1. Print["check dM/dx=V: ". y. Print["br=". (b) removal of RBMs by fixing left node. TT={{-1.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS ClearAll[Le.Gq//MatrixForm].Le.As constant (a) m1 fy2 fy1 fy2 fx2 fx1 1 (c) (b) x. D[θ2.br].m2]}}.q0*Le. axial extension and bending are intrinsically coupled.fy2]. u |2φ| |R| 2 fx2 1 2 m2 +M(ψ) +V(ψ) +F(ψ) fy2 fx2 ψ 2 m2 m2 Figure 13. and goes from 1 to 2. D[u2.0.fy2->0. { D[θ2. D[u2. This element can be applied to the analysis of plane arches and ring stiffeners (as in airplane fuselages 13–22 . D[v2.D[Uc. plane Timoshenko beam element of Figure 13.-1}. u2=D[Uc.Krr.18. F=fx2.{0.m2].{0. Krr=Simplify[Inverse[Frr]]. Ucd=F^2/(2*EA)+M^2/(2*EI)+V^2/(2*GAs).qr].{1.Simplify[D[M. Figure 13.D[Uc. and the rotation θ about z.Simplify[-GrT. Print["qs=". Print["qr=".15 by flexibility methods.EI.0}. (c) free body diagram of varying cross section. D[θ2.0}.17.Uc].m2].{fx2->0. V=-fy2-q0*(Le-x). Print["Gr=".fy2].qr-GqT.m2->0}.m2]}.fx2.-Le.16. T=Transpose[TT].0}. Axis y is placed at +90◦ from x.fx2]. Print["Uc=".Gr//MatrixForm.br].x]-V]]. Thus consideration of three freedoms per node is mandatory.Le/2.GAs.0.T]. θ2=D[Uc.0}.0. D[v2.1}}.m2]}.{0.fx2].fx2]. Simplify[Ke=TT.Krr//MatrixForm].{0. qr=Simplify[-Krr.{x. { D[v2.0}.fx2].{0. Script to derive the stiffness matrix and consistent load vector of the prismatic.Φ.{0.fy2]. Sign conventions in derivation of circular arch element. GrT={{1.fy2].1. Gq=Transpose[GqT]. Flexibility derivation of plane circular arch element: (a) element and node forces.qv]].Le}]].0.1. In a curved plane element of this nature.1}}.Ke//MatrixForm]. Frr={{ D[u2. These are the translations along x and y.0}.q0. GqT={{1." Gq=". br={D[Uc.{0. Print["Frr=".I. Gr=Transpose[GrT]. Uc=Simplify[Integrate[Ucd. M=m2+fy2*(Le-x)+(1/2)*q0*(Le-x)^2. v2=D[Uc.Frr//MatrixForm].0.0}.1}}.fy2.fx2].fy2]. qv={0. as shown there: x is a “chord axis” that passes through end nodes 1–2. These assumptions are reasonable if |R| > 10 r . which has been pared down to essentials to save space. because it involves the element length. These range from simple corrections to BE through theory-of-elasticity-based models. M = m 2 + f x2 R(cos φ− cos ψ)+ f y2 R(sin ψ− sin φ).  2 2 or = 2r with r 2 = I . V = f x2 sin ψ − f y2 cos ψ. The curved length (not shown in figure) and the (chord) spanlength 2S are always positive.5 FLEXIBILITY BASED DERIVATIONS and submarine pressure hulls). (13. Further corrections are treated in Exercises. The conventions are as follows: (1) The local node numbers define a positive arclength traversal along the element midline as going from 1 to 2. where r = + I /A is the radius of gyration of the cross section. For curved members there are many more. (13. It is defined by the internal complementary energy functional ∗   U = 0 (F − M/R)2 M2 + 2E A 2E I   φ  ds = −φ (F − M/R)2 M2 + 2E A 2E I  R dψ. Various cases are pictured in Figure 13. The internal forces F(ψ). If the arch curvature varies along the member. it should be subdivided into sufficiently small elements over each of which the radius magnitude is sensibly constant. A (13.) The necessary calculations are carried out by the Mathematica script of Figure 13. (2) the cross section area A and moment of inertia I are unchanged with √ respect of those of the straight member.18. See Figure 13. . (In that respect it is similar to of the Timoshenko beam element. (2) The arch rise H . The differential arclength ds = R dψ always points in the positive traversal sense 1 → 2. positive CCW. Note that this is not an intrinsic measure of arch slenderness.65) This defines  as a dimensionless geometric parameter.17). the radius R has the sign of φ so = 2Rφ is always positive. The rise is the distance from chord midpoint to arch crown C: it has the sign of its projection on y.§13.62) The location of an arch section is defined by the “tilt angle” ψ measured from the circle center-to-crown symmetry line OC. the angular span 2φ and the arch radius R are signed quantities as illustrated in Figure 13. −1 Krr = Frr = K 11 symm 13–23 K 12 K 22 K 13 K 23 K 33  . The rigid motions are removed by fixing the left end as shown in in Figure 13. Finally.21. V (ψ) and M(ψ) at an arbitrary cross section are obtained from the FBD of Figure 13. The deformational flexibility and stiffness computed are  Frr = F11 symm F12 F22 F13 F23 F33   . H = R(cos φ − 1) (13.64) The assumptions enbodies in this formula are: (1) the shear energy density V 2 /(2G As ) is neglected. The model selected here is one of intermediate complexity. defined by (13.18. Care must be taken as regards sign conventions to ensure correct results when the arch convexity and node numbering changes.63) For typical straight beam-column members there are only two practically useful models: Bernoulli-Euler (BE) and Timoshenko.18.17(b).17(c) to be F = f x2 cos ψ + f y2 sin ψ. Some signed geometric relations: S = R sin φ. To simplify the ensuing formulas it is convenient to take EA = EI  2 R2φ2 = 4E I . The angular span 2φ is that subtended by the arch on moving from 1 to 2: it is positive if CCW. K 22 → 12E I / 3 . (13. if φ → 0 the entries reduce to that of the beam-column modeled with Bernoulli-Euler. 13–24 . The necessary transformation matrix to inject the rigid body modes  T = [ −G I ] = −1 0 0 0 −1 0 0 −2R sin φ −1 1 0 0 0 1 0 0 0 1   = −1 0 0 0 −1 0 0 − sin φ/φ −1 1 0 0 0 1 0 0 0 1  . 2E I φ 2 6E I 3 3 2 2 2 2 2φ(2 + φ  ) − 2φ(1 + φ  ) cos 2φ − sin 2φ = 20 + 3φ 2 (5 2 − 2) + O(φ 4 ).66) Introduce d1 = φ(1 + φ 2  2 )(φ + sin φ cos φ) − 2 sin2 φ and d2 = φ − sin φ cos φ.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS in which (first expression is exact value. For example K 11 → 4E I  2 / 3 = E A/ . K 12 = 0. second a Taylor series expansion in φ) F11 = F12 = F13 = F22 = F23 = 3 3 2 2 2 2 2φ(2 + φ  ) + 2φ(1 + φ  ) cos 2φ − 3 sin 2φ = 15 2 + φ 2 (2 − 15 2 ) + O(φ 4 ) 3 16E I φ 60E I 3 3 sin φ φ sin φ − φ(1 + φ 2  2 ) cos φ = 1 − 3 2 + O(φ 3 ). 45  2 (13. 2 d1  8E I φ 3 12E I sin φ EI K 22 = − 3 (30 + φ 2 ) + O(φ 4 ).67) The constraint K 23 = −K 22 sin φ/(2φ) must be verified by any arch stiffness. 3 3 d1 45 2 6E I φ 4E I φ 2 2 φ(1 + φ  ) cos φ − sin φ = 2 2 (3 2 − 1) + O(φ 3 ). regardless of the TCPE form used. = (5 + φ 2 ) + O(φ 4 ).69) K 23 K 33 The only new entry not in (13.67) is K 36 = −K 33 − K 23 sin φ/φ = EI (90 2 + φ 2 (12ψ 2 − 5) + O(φ 4 ) 45 As a check. Then K 11 = K 13 = K 22 = K 33 = = 4E I φ 4 EI (1 + φ 2  2 ) = 45 2 + φ 2 (15 2 + 45 4 − 1) + O(φ 4 ). K 33 → 4E I / . etc. 6 + φ 2 (6 2 − 1) + O(φ 4 ). 3 16E I φ 60E I 2 2 sin φ (1 + φ 2  2 ) = (1 + φ 2  2 ). K 36 → 2E I / .68) Applying the congruent transformation gives the free-free stiffness  K  0 K 13 −K 11 0 −K 13 11 K 22 −K 23 0 −K 22 −K 23   0  K 13 −K 23 K 33 −K 13 K 23 K 36   Ke = TT Krr T =   −K 11 0 −K 13 K 11 0 K 13    0 −K 13 −K 22 −K 23 K 23 K 36 0 K 13 K 22 K 23 (13. F33 = 2E I φ 12E I EI (13. 3 4E I φ 12E I 3 φ 2 2 2 2 sin φ − φ(1 + φ  ) cos φ = 1 − 3 + O(φ 3 ). K 23 = − 3 3 d2 5 2φ 5 EIφ 8φ 2 (3 + 2φ 2  2 ) − 9 + 16 cos 2φ − 7 cos 4φ − 8φ sin 2φ 2 + (1 + φ 2  2 ) cos 2φ 8 d1 d2 EI 2 2 2 180 + φ (5 − 48 ) + O(φ 4 ). m2]}. Print["Krr=". Print["Ke=".fy2].Uc]. D[v2. Plane circular arch element in global coordinates: (a) geometric id (b) intrinsic geometry recovery.V.fx2].fx2].{ψ.y3 ) _ y (b) 2 3 1 (x 1 .{0.-φ.0}. Script to produce circular arch element stiffness in local coordinates.m2]}}]. Ke=Simplify[TT.T]. Figure 13.Γ.{0.fy2]. Uc=Simplify[Integrate[Ucd*R.-2*R*Sin[φ].21.{1. F=fx2*Cos[ψ]+fy2*Sin[ψ].1. (To be done) 13–25 2 .fx2]. Krr=FullSimplify[Inverse[Frr]].0}.Le. Print["Uc=".5 FLEXIBILITY BASED DERIVATIONS ClearAll[φ. D[v2.F.19.φ}]]. v2=D[Uc.fx2].y2) 3 (x3 . D[u2.§13. D[θ2. D[θ2.m2]}.0}.m2]. TT={{-1. M=m2+fx2*R*(Cos[ψ]-Cos[φ])+fy2*R*(Sin[ψ]+Sin[φ]). u2=D[Uc. TT=TT/.20. D[u2.fy2].0}. _ x (a) 2 (x2 .EA. Frr=Simplify[{{ D[u2.{0.{R->Le/(2*φ)}].Ke//MatrixForm]. 1}}.fy2].{0. { D[θ2. θ2=D[Uc. EA=4*EI/(Ψ^2*Le^2). Module to produce plane circular arch element stiffness in global coordinates. { D[v2.-1.M.0.y1) b 3 R 2φ ϕ y (c) 1 a H 2S 1 x Figure 13.EI].Frr//MatrixForm].Krr//MatrixForm].0.-1}. Figure 13. Frr=FullSimplify[Frr/. T=Transpose[TT].0.{R->Le/(2*φ)}.Ψ.Krr.R. Ucd=(F-M/R)^2/(2*EA)+ M^2/(2*EI). Print["Frr=".ψ. V=-fy2*Cos[ψ]+fx2*Sin[ψ]. Node 3 (see Figure) is a geometric node that serves to define the element mean curvature but has no associated freedoms. 13–26 . The first requirement can be handled by providing the coordinates of three nodes: {xi . Plane Circular Arch in Global System To use the circular arch element in a 2D finite element program it is necessary to specify its geometry in the {x.3. 2. 3. y} plane and then to transform the stiffness (13. i = 1.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS §13.5. (Section to be completed). yi }.69) to global coordinates. +(ψ /m!)q [m] j .1. Use the q(x) series evaluated over elements (1) and (2). mj = 2   1 N4(1) q (1) −1 dξ (1) +  1 N2(2) q (2) −1 dξ (2) . The FEM patch equations at node j are v  i  θi     E I  −12 −6 24 0 −12 6    vj  = f j 2 2 2 mj 6 2 0 8 −6 2  θ j  3   (13.71) Here N3(1) = 14 (1 + ξ (1) )2 (2 − ξ (1) ).70). prismatic.. is an abbreviation for d v(x j )/d x .6.+(ψ /n!)θ j . which is assumed infinitely differentiable in x. the series are v(x) = v j + ψ v j + (ψ 2 2 /2!)v j + . N4(1) = − 8 (1 + ξ (1) )2 (1 − ξ (1) ) N1(2) = 14 (1 − ξ (2) )2 (2 + ξ (2) ). . . Evaluate the v(x) and θ (x) series at i and k by setting ψ = ±1.22. plane Bernoulli-Euler beam elements of rigidity E I and length . §13. If derivatives are indexed by primes or roman numerals the brackets are omitted. as illustrated in Figure 13. .22. etc. 13–27 . and q(x) = q j +ψ q j +(ψ /2!)q j +. and insert in (13.§13. as shown in Figure 13.6. to compute the consistent forces f j and m j as fj = 2   1 N3(1) q (1) −1 dξ (1) +  1 N1(2) q (2) −1 dξ (2) . + (ψ n n /n!)v [n] j . . θ(x) = [n]     2 2 n n 2 2 m m θ j +ψ θ j +(ψ /2!)θ j +. *Accuracy Analysis This section presents the accuracy analysis of a repeating lattice of beam elements. *Accuracy of Bernoulli-Euler Beam Element Consider a lattice of repeating two-node.22. whereas q (1) = q(ψ (1) ).5. It is performed using a repeated differentiations scheme similar to that used in solving Exercise 12. Using ψ = (x − x j )/ . θ(x) and q(x) in Taylor series about x = x j . ψ (1) = − 12 (1 − ξ (1) ) and q (2) = q(ψ (2) ). . Only the case of the Bernoulli-Euler model is worked out in detail. (13. 12 Brackets are used instead of parentheses to avoid confusion with element superscripts.70) vk θk Expand v(x). The analysis uses the method of modified differential equations (MoDE) mentioned in the Notes and Bibliography of Chapter 12. [n] n n 12 Here v j . truncating at n +1 terms for v and θ. connecting nodes i– j and j–k. The system is subject to an arbitrary lateral load q(x). ψ (2) = 12 (1 + ξ (2) ) denote the lateral loads. and m +1 terms for q. From the lattice extract a patch of two elements: (1) and (2). .6 *ACCURACY ANALYSIS q(x) j i xi = xj − xj xk = xj + vj = 1 Two-element patch ijk k Trial functions at node j θj = 1 EI = const i (1) j (2) k L Figure 13. Repeating beam lattice for accuracy analysis. respectively. §13. analogous to that done for the bar element in §12. and N2(2) = 8 (1 − ξ (2) )2 (1 + ξ (2) ) are the Hermitian shape functions components of the j node trial function.8.      12 0 0 0 0 0 0 0 0 0 0  12 0  0    0 − 3  0  10  3 0  0 −  10   . Sθv and Sθθ are triangular Toeplitz matrices of order (n+1) × (n+1) whereas Pv and Pθ are generally rectangular matrices of order (n+1) × (m+1). .76) . with S = Svv − Svθ S−1 θθ Sθv .72) The resulting differential system can be compactly written  Svv Sθv Svθ Sθθ  vj θj    Pv = qj. . Pθ (13. . Svθ .75) Elimination of θ j gives the condensed system Sv j = Pq j . θ [n] j ] . (13. 0 0 0 −   −12  0 0 0 0   0 0 0 0 −12  0 0 0 0 0 0 0 0 0 0 0 −2 −12 0 −12 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 − 10 −2 0 0 −2 −12 0 −12 0 0 0 0 0 0 0 0 0 3  0 0  0 0  0 0 Pv =  0 0 0 0  0 0  3 15 0 0 0 0 0 0 0 0 0 0 0 5 − 5 420 0 − 3 10 −12 0 0 0 0 3 15 0 0 0 0 0 0 0  0  0  Svθ = E I  0  0  0  0 5 560  0  3 15 0 0 0 0 0     . m = 4:  Svv 0 0  0  0  = EI 0  0  0  0 0 0 0  0  0  Sθv = E I  0  0  0  0 0 0 0 0 0 0 0 0 −12 −12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 −12 0 0 0 0 0 0 0  − − 0 − 0 1680 30 3 0 − 0 − 0  30  −12 − 3  0 − 0 30  0 −12 0 − 0   −12 . S = E I  θθ −2 0  0  0 −2  0   −12  0 0  0 0 −12 0 0 −2 0 0 − 5 420 0 0  0 0  0  0  Pθ =  0  0  0 0 0 3 15 0 0 0 0 0 0 0 0 0 3 15 0 0 0 0 0 0 0 5 315 0 3 15 0 0 0 0 0 0 0 2 12 0 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 12 0 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 315 0 3 15 0 0 0 0 0 0 10 0 3 2 0 10 0 2 0 12 0 2 0 12 0 0 0 12 0 0 0 0 0 0 0 0 0 3 0 6 0 3 2 0 6 0 2 0 12 0 2 12 0 0 0 0 12 0 0 0 0 0 0 0 0 0              3 5 180 0 3 6 0  5 420 5 420   0   3  0 10  2 0   0 2   12 0   12 0 3 10 0 0 0 0 5 180 0 7 10080  0  5 180             0 6 0 3 2 0 6 0 2 0 12 0 2 0 12 0 12 0 0 (13. 13–28 P = Pv − Svθ S−1 θv Pθ . T q j = [ q j q j q j . q [n] j ] . . Here is the expression of these matrices for n = 8. . (13. v [n] j ] . T θ j = [ θ j θ j θ j .74) 3 (13.73) Here Svv .Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS To show the resulting system in compact matrix form it is convenient to collect the derivatives at node j into vectors: T v j = [ v j v j v j . . p. In fact a more complete expression.§13.80) is truncated.. 1009] is incorrect. These accuracy properties are not widely known. Truncation is fine if followed by elimination of higher derivatives. .78). 720 EI (13. With m = n−4 both matrices are of order n−3 × n−3. E I v j = q j . are removed to get S. Exercise 13. For general distributed loads the widespread belief is that the cubic element incurs O( 4 ) errors. Elimination of all v j derivatives but v iv j yields 0 0 0 0 0 0 0      . The moral is that conclusions based on infinite order ODEs should be viewed with caution. are removed to get P.78) as n → ∞. . The misinterpretation is due to (13. ˆ also zero. Numerical experiments confirm these conclusions. obtained in this study.6 *ACCURACY ANALYSIS 0 0 0 0 0 0  0 0  S = Svv − Svθ S−1 S = E I 0 0 θθ θv 0 0  0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 − 5 720  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 − 5 720  0  0   0    0   0   0 0 (13. 720 3024 259200 iv =q− Derivatives of order 4 and higher are indicated by Roman numeral superscripts instead of primes. and E I v j = q j . The foregoing analysis shows that the BE cubic element is nodally exact for any smooth load over a repeating lattice if consistent load computation is used. This was confirmed with Mathematica running n up to 24.. which are always zero. which are columns and last 4 rows of S. overall exactness follows from a theorem by Tong [746]. . That this is not a fluke can be confirmed by increasing n and while taking m = n − 4. which leads immediately to (13. If this is done. Then Sˆ = Pˆ for any n. The first study of this nature by Waltz et.77) 4 viii 4 iv − v /720) = q − q The nontrivial differential relations13 given by S v j = P q j are E I (v iv j j j j /720. The first 4 ˆ The last 4 rows of P. unless corroborated by independent means. al. = . If all beam elements are prismatic and subjected only to point loads at nodes.80) But the conclusion that “the principal error term” is of order 4 [780.78) exactly. The first one is a truncation of the infinite order MoDE.18 verifies that the property is lost if elements are not identical. .79) The above terms are correct. The Laplace transform method only works part way: it gives a different infinite order MoDE but recovers (13. an obvious clue being the repetition of coefficients in both sides.      0 0 0 0  0 0  P = Pv − Svθ S−1 P = 0 0 θv θ 0 0  0 0  E I v iv j = qj. EI 13 4 viii 6 x 7 8 v − v + v − v xii + . 13–29 .80) being an ODE of infinite order. vi vii viii iv v    E I v j = q j . [780] gave the modified differential equation (MoDE) for a uniform load q as v iv − 4 viii q v + . (13.78) emerges regardless of where (13. which is not surprising since the exact solution is contained in the FEM approximation. the finite order MoDE (13. is   4 iv 6 vi 7 8 q + q − q viii + . 720 3024 259200 (13. E I v j = q j . + 12 j 720 60480 = qj − 4 (1 + 5 ) iv 6 (20 + 14 − 35 2 ) vi qj + qj ) + . and Melosh [484. The Timoshenko beam model was originally proposed in [735].82) j = qj − 12 j G As j which repeats for any n > 8. . It has become important as a tool for transient response and control simulations because its dynamic form is strictly hyperbolic. *Accuracy of Timoshenko Beam Element Following the same procedure it can be shown that the infinite order MoDE for a Timoshenko beam element repeating lattice with the stiffness (13.18) and consistent node forces is  EI v iv j  2 vi 4 (1 + 5 − 5 2 ) viii 6 (20 + 7 − 70 2 + 35 3 ) x v − vj + vj + .6 of [596] using ODEs. Notes and Bibliography The material in this Chapter interwines the very old and the very new.8) and (13.9) is suggested by template theory [243].Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS §13.35]. Consequently the Timoshenko beam is nodally exact under the same conditions previously stated for the Bernoulii-Euler model.81) This reduces to (13. Martin [467]. however. symmetrically loaded circular plates or shells of revolution. . Pestel and Leckie [572]. or to problems with special symmetries that can be modeled with ODEs. 23].4) play a key role in model customization. Timoshenko cleverly packaged the model with miscellaneous ingredients introduced earlier by Bresse and Hencky. This beam model pertains to the class of “C 0 elements” that have been extensively studied in the FEM literature after 1968. however. Traces of that dominance may be found in the books by Przemieniecki [596]. .485].18) first appeared in [758] in the guise of a spar element for use in aircraft structures. . The book of Hughes [385] provides a comprehensive treatment of such methods for beams and plates. The diagonal covariance matrices Qn given in (13. The Legendre interpolation (13. For one-dimensional elements.7). The hinged element stiffness (13.15 (2) rapidly increasing solution 14 The Bernoulli-Euler beam dynamic model is parabolic and thus exhibits an infinite transverse wave speed. That the use of homogeneous solutions of governing differential equations yields nodally-exact stiffness equations was first proven generally by Tong [746] in a Galerkin context. Such a model is unsuitable for wave propagation problems. Useful solutions are tabulated in Roark-Young’s handbook [642]. The separation of uncoupled rigidity effects in stiffness forms such as (13.2) was introduced in [?] [236] to study optimal mass-stiffness combinations for beam elements in the context of finite element templates [228]. p. results are often identical. This derivation procedure. was rarely used after the 1960s. (13.14 The Timoshenko beam element stiffness (13. 720 60480 in which = 12E I /(G As 2 ).2. and the survey by Gallagher [288]. Energy derivations were popularized by Archer [34. 13–30 . using a mixed variational principle.18) is derived in Section 5. ordinary differential equations (ODE) and flexibility methods were essential part of the toolbox repertoire of the professional structural engineer. 15 For example.6. This can provide a valuable crosscheck. Two obstacles: (1) it is largely restricted to either one dimensional elements.14) is rederived in the Advanced FEM Lecture Notes [253]. the end node freedoms of that element differring from the classical set used here. The classical work on beams on elastic foundations is by Hetenyi [357].80) if = 0. (13. . The particular form (13. Elimination of higher order derivatives gives the finite order MoDE (aka FOMoDE) 2  E I  E I v iv q = qj − q . Before energy methods came to the FEM forefront by 1960 (see historical sketch in §1. This happens to be the exact governing differential equation for a statically loaded Timoshenko beam [263. a reinvention of Fraeijs de Veubeke’s weakly diffusive models.3] as the “beam theorem. modified equation methods in boundary value problems17 are delicate and should be used with care.233]. References complexity in complicated problems discouraged hand derivations. incorrectly stated [698. Their intricacies baffled Strang and Fix who. 16 Along with discontinuous Galerkin methods.2 includes a new ingredient missing from previous work: handling non-self-equilibrated loading systems. References Referenced items have been moved to Appendix R. Although more robust and forgiving. 171] that only one of the discrete equations — that for v(x) — is consistent “and the others are completely inconsistent. That Hermitian BE element models are nodally exact if consistent loads are used is stated in [397. p. 8. coding and numerical testing would likely take weeks or months. because of difficulties in interelement connections that maintain system-level equilibrium. More practical extensions lead to the so-called Trefftz and equilibrium hybrid methods. His obsession with solution bounding got these methods seriously stuck.240.3 offers a case in point. The rigid body injection method of §13.4 largely follows Section 6.6 illustrates. The construction of the exact beam-on-Winkler-foundation element in §13.4. checking and fully-symbolic testing took about 6 hours. predictions are often so conservative as to be of little value. 17 They are more forgiving in initial value problems. These are presently the topic of active research16 but require advanced variational techniques beyond the scope of this book.§13.” The alternative is the variational approach to error analysis. The use of equilibrium methods for multidimensional finite elements was pioneered by Fraeijs de Veubeke in the 1960s and early 1970s. the increasing availability of CAS allows timely consideration of more difficult problems. This extension removes the 40-year-old objection that flexibility methods (or more generally. however. Sec.6 of [596].4. only anecdotal evidence — it was likely discovered by numerical experimentation. upon doing Fourier analysis of a cubic beam element. Using Mathematica the complete derivation. schemes based on the TCPE principle) are unable to produce equivalent or consistent node forces. The main application of exact elements appears to be a priori error estimation: how many simpler elements are needed to do the job of an exact one? The construction of stiffness matrices from flexibility information was historically one of the first techniques by which stiffness equations of MoM members were derived. whereas a hand derivation.” Despite the name. 13–31 . Whereas the first limitation still holds. The presentation of discrete-system equilibrium theorems in §13. This extension relies heavily on projection operators. Another recent advance is the discovery of the free-free flexibility as the true dual of the free-free stiffness [232. A proof based on Fourier series appears in [263]. As the study in §13. as well as avoidance of spurious modes. no proof is given. but using the Laplace transform. respectively. The beam is end loaded by a transverse force P.6. Show that this only does half the job.1 using the repeated differentiation approach. EXERCISE 13. G. 13–32 . relate χ and λ in Example 13.element using the differential equation method. Derive an exact Timoshenko-beam-on-Winkler-foundation equation method.4 [A/C:15=5+10] Consider a cantilever beam of constant bending rigidity E I .2.1 [A:15] Evaluate the strain and stress fields associated with the Timoshenko beam displacement field (13.12 [A/C:35] Using Mathematica. which is modeled with one Timoshenko element.9 [C:30] As above.5 [A:25] (Requires math ability).2. Hint: set R Bs = 0. Hint: find fc for the Legendre interpolation. As and L.Chapter 13: ADVANCED ONE-DIMENSIONAL ELEMENTS Homework Exercises for Chapter 13 Advanced One-Dimensional Elements EXERCISE 13.18) if → ∞. constant shear rigidity G As and length L. Is the result useful for a shear-only “spar” element? Hint: eliminate θ1 and θ2 by a master-slave MFC. R Ba = E I and R S = 12E I /( 2 ) in (13. The support conditions are v1 = θ1 = 0.81) and (13. E.82) in §13. EXERCISE 13. (a) Find the end displacement v2 and end rotation θ2 in terms of P. EXERCISE 13.16). I . EXERCISE 13. EXERCISE 13. then premultiply by HTS . Compare with the analytical values P L 3 /(3E I ) + P L/(G As ) and P L 2 /(2E I ).8 [C:30] Write Mathematica code to verify the nodal exactness conclusion of §13. Discuss what happens in (13. verify the results (13.7 [A/C:40] (research paper level). EXERCISE 13.10 [A/C:35] Find the general symbolic expression of the terms in EXERCISE 13.6 [A:10] For a given number of elements N e of length = 2L/N e .13). (b) Why does the finite element model provides the exact answer with one element? EXERCISE 13. EXERCISE 13.2 [A/C:20] Find the consistent node forces for a Timoshenko beam element under a uniform transverse load q. EXERCISE 13.11 [A/C:40] (research paper level) Analyze nodal accuracy if the length of the beam elements (1 ± α) . EXERCISE 13.3 [A/C:20] Construct the stiffness matrix a Timoshenko plane beam element with a hinge at the center. where 0 ≤ α ≤ 12 .6. 14 The Plane Stress Problem 14–1 . .1 Behavioral Assumptions . . . . . .4 §14. . . . . . . . §14. . . . §14.4. . . . . . . §14. . . . . .2 Mathematical Model .3. . . . . . . . . . . . . . . . . . . . . . . .1 Displacement Interpolation . . . . . . . .3. . .3 Weak versus Strong Form . . . . . . . .3. . . . . . . . . . §14. . . . . . Introduction . . . . . Plane Stress Governing Equations . . . . . . . . . . . . . . . . .2 Boundary Conditions . . . . . .1 §14.3 §14. . . . Plate in Plane Stress . §14. . . . . . . . . . .4. . . . . . . . . . . . . §14. .2.2 Element Energy . . . . §14. . . . . . . . . . . . . . . . . . . . . . . . . . .1 Governing Equations . . . .4 Problem Unknowns . . . . . . . . . . . . . . . .3 Problem Data .3. . . . . . Notes and Bibliography . . §14. . . . . .2. . . . . . References . Finite Element Equations . . . §14.Chapter 14: THE PLANE STRESS PROBLEM TABLE OF CONTENTS Page §14. . . . . . . §14. Exercises . . . . . . . . . .4. . . . . . . . . §14. . . . . . . .4 Total Potential Energy . . . . . . . . . . . . 14–2 14–3 14–3 14–3 14–4 14–5 14–5 14–6 14–6 14–7 14–8 14–9 14–10 14–10 14–11 14–12 14–12 14–12 14–13 . . . . . . . §14. . . . . . . . .3 Element Stiffness Equations . . . . . . . . . .2. .2 §14. . . . .2. . . §14. . (c) 2D mathematical idealization as boundary value problem. 14–3 . denoted by h. continuum-based structural finite elements were invented in the aircraft industry (at Boeing during the early 1950s) to solve this kind of problem when it arose in the design and analysis of delta wing panels [765]. Introduction We now pass to the variational formulation of two-dimensional continuum finite elements. In-plane displacements. Behavioral Assumptions A plate loaded in its midplane is said to be in a state of plane stress. (b) referral to its midplane. The problem of plane stress will serve as the vehicle for illustrating such formulations. The direction normal to the midplane is the transverse direction. 1 If it is relatively thick. §14.2.§14. whereas the opposite surface is called the bottom surface. All support conditions are symmetric about the midplane. As narrated in Appendix O. as in concrete pavements or Argentinian beefsteaks. The normal and shear stress components in the z direction are zero or negligible. strains and stresses can be taken to be uniform through the thickness. Thus the equation of the midplane is z = 0. a flat thin sheet of material is called a plate. All loads applied to the plate act in the midplane direction. Plate in Plane Stress In structural mechanics. and are symmetric with respect to the midplane. A plate structure in plane stress: (a) configuration.1. See Figure 14. Axes x and y are placed in the midplane.2. 3.2 PLATE IN PLANE STRESS §14. 4. The midplane lies halfway between the two faces. forming a right-handed Rectangular Cartesian Coordinate (RCC) system. the term slab is also used but not usually for plane stress conditions. The +z axis conventionally defines the top surface of the plate as the one that it intersects. 2. The global axis z is oriented along the transverse direction.1 The distance between the plate faces is the thickness. §14. or a membrane state. if the following assumptions hold: 1.1.1(a). (a) z Top surface Referral to midplane (c) (b) Midplane y Mathematical idealization Plate Γ y x Ω x Figure 14. The problem is presented here within the framework of the linear theory of elasticity.1. Directions parallel to the midplane are called in-plane directions. as illustrated in Figure 14. 14–4 .Chapter 14: THE PLANE STRESS PROBLEM dx dy h Thin plate in plane stress z x dx dy dx In-plane body forces dx dy h x σyy σxx σxy = σ yx dx dy y h bx x eyy e xx e xy = eyx y dx dy dx dy h by In-plane displacements In-plane strains x x dy pxy In-plane stresses y x pyy y pxx + sign conventions for internal forces. Notational conventions for in-plane stresses. and will not be considered here. see Figure 14. the thickness h should be small.1(b). The last assumption excludes wall constructions of importance in aerospace.2. in particular composite and honeycomb sandwich plates. The plane strain state is obtained if strains in the z direction are precluded.2. the plate fabrication must exhibit symmetry with respect to the midplane. This subject is studied in [255]. Selective relaxation from assumption 4 leads to the so-called generalized plane stress state. strains. §14.1. For isotropic materials the plane stress and plane strain problems can be mapped into each other through a fictitious-property technique.2. The last two assumptions are not necessarily consequences of the first two. Finally. Transverse loading on a plate produces plate bending. Remark 14. To these four assumptions we add the following restriction: 5. we shall not consider those models here. which is associated with a more complex configuration of internal forces and deformations. If the plate thickness varies it should do so gradually. see Exercise 14. in which z stresses are accepted. displacements and internal forces of a thin plate in plane stress. in which the plate is projected onto its midplane. Although the construction of finite element models for those states has many common points with plane stress. This allows to formulate the BVP over a plane domain  with a boundary .1.2.1(c). Such plates are called transversely homogeneous or (in aerospace) monocoque plates. The development of mathematical models for such configurations requires a more complicated integration over the thickness as well as the ability to handle coupled bending and stretching effects. Mathematical Model The mathematical model of the plate in plane stress is set up as a two-dimensional boundary value problem (BVP). For the latter to hold. stresses and strains y In-plane internal forces h y x ux uy y Figure 14. than the shortest in-plane dimension. typically 10% or less. Remark 14. The plate is fabricated of the same material through the thickness. y) = u y (x.2. e yy and ex y . Specified Interior Forces. Sudden changes in thickness may lead to stress concentrations. these components are cast to form a 14–5 . Because of the assumed wall fabrication homogeneity the in-plane components are assumed to be uniform through the plate thickness.3. this displacement does not appear in the governing equations. In actual applications it is important to know whether these forces are specified per unit of surface area or per unit length.4. There are of two types. Points subject to support conditions may be fixed. y. In elasticity they are called surface tractions. The in-plane displacement field is defined by two components:  u x (x. These specify how the plate is supported.1) The transverse displacement component u z (x. the friction or drag force on an airplane skin is of this type if the skin is modeled to be in plane stress. Also symmetry and antisymmetry lines may be identified as discussed in Chapter 8 of IFEM [257].§14. Problem Unknowns The unknown fields are displacements. To allow stating the FE equations in matrix form. y). z) component is generally nonzero because of Poisson’s ratio effects. The in-plane strain field forms a tensor defined by three independent components: ex x . Problem Data The following summarizes the givens in the plate stress problem. Domain geometry. The former may be converted to the latter by multiplying through the appropriate thickness value.1(c). Face forces act tangentially to the plate faces and are transported to the midplane. in which case h = h(x. for example the plate weight. Thickness. y)  (14. See Figure 14. which result from integrating the in-plane stresses through the thickness. and depends on z. strains and stresses. §14. Most plates used as structural components have constant thickness. Strains. These are known forces that act on the boundary  of the plate. If no displacement boundary conditions are imposed. Displacement Boundary Conditions. Specified Surface Forces. Body forces or volume forces are forces specified per unit of plate volume. it should do so gradually to maintain the plane stress state. Displacements. For example.2.2. This is defined by the constitutive equations. This is defined by the boundary  illustrated in Figure 14.2 PLATE IN PLANE STRESS In this idealization the third dimension is represented as functions of x and y that are integrated through the plate thickness. Thus the dependence on z disappears and all such components become functions of x and y only. or subject to multipoint constraints. §14. Here we shall assume that the plate material is linearly elastic but not necessarily isotropic. However. allowed to move in one direction. If the thickness does vary. These are known forces that act in the interior  of the plate. Material data. the plate is said to be free-free or floating. y) u(x. Engineers often work with internal plate forces. 14–6 . Yellow boxes identify prescribed fields whereas orange boxes denote unknown fields. y) σx y (x. This eliminates the contribution of σzz ezz to the internal energy. The transverse normal strain ezz is generally nonzero because of Poisson’s ratio effects. y) = σ yy (x.2.Chapter 14: THE PLANE STRESS PROBLEM Displacement Prescribed BCs Displacements displacements ^ u u = u ^ u on Γu Body forces b e Ω Equilibrium DTσ + b = 0 in Ω (aka Balance) e = D u Kinematic in Ω Strains Γ Constitutive σ=Ee or e = Cσ in Ω Stresses σ Force BCs σT n = ^t or pT n = q^ on Γt Prescribed tractions ^ t or ^ forces q Figure 14.3. y) 2ex y (x. The shear strain components ex z and e yz vanish.3) σ(x. As in the case of strains.4) These p’s also form a tensor. Under the assumption of uniform stress distribution. y) The remaining three stress components: σzz . 3-component “strain vector”  ex x (x. y) (14.2) e(x.3.3. however. They are graphically represented in the Strong Form Tonti diagram of Figure 14. y) (14. px x = σx x h. The in-plane stress field forms a tensor defined by three independent components: σx x . y) The factor of 2 in ex y shortens strain energy expressions. (14. §14.  Stresses. The distinction between Strong and Weak Forms is explained in §14. See Figure 14. The Strong Form of the plane stress equations of linear elastostatics displayed as a Tonti diagram. y) = e yy (x. p yy = σ yy h. σ yy and σx y .3. px y = σx y h. They are called membrane forces in the literature. because the associated stress σzz is zero. to allow stating the FE equations in matrix form. The necessary governing equations are presented below.3. The plate internal forces are obtained on integrating the stresses through the thickness. Plane Stress Governing Equations We shall develop plane stress finite elements in the framework of classical linear elasticity. these components are cast to form a 3-component “stress vector”   σx x (x. are assumed to vanish. σx z and σ yz . This strain does not enter the governing equations as unknown. They take the form σn = tˆ.2 If the plate material is isotropic with elastic modulus E and Poisson’s ratio ν. See also Exercise 14. See Figure 14.5) σ yy = E 12 E 22 E 23 e yy . D is the 3 × 2 symmetric-gradient operator and its transpose the 2 × 3 tensor-divergence operator.3. σ = E e.7) Here uˆ are prescribed displacements. (14. Often uˆ = 0. 2 The dependence on (x. 14–7 . E 12 = ν E 11 and E 13 = E 23 = 0. (14. over which displacements and force or stresses. E 33 = 12 E/(1 + ν) = G. not integrated through the thickness).4. are specified. Force boundary conditions (also called stress BCs and traction BCs in the literature) are specified on t . (14.3. If initial strain effects are ignored.8) Here ˆt are prescribed surface tractions specified as a force per unit area (that is. these equations read      ∂/∂ x 0 ex x ux .1. Displacement boundary conditions are prescribed on u in the form ˆ u = u.3 PLANE STRESS GOVERNING EQUATIONS §14. y) has been omitted to reduce clutter.1.5) is e = D u.2.4. strains and stresses (14.1)–(14. as the ones illustrated in Figure 14.4. respectively. Boundary Conditions Boundary conditions prescribed on  may be of two types: displacement BC or force BC (the latter is also called stress BC or traction BC). σx y E 13 E 23 E 33 2ex y    σx x      0 b ∂/∂ x 0 ∂/∂ y . and σn is the stress vector shown in Figure 14.3) are connected by three field equations: kinematic. the moduli in the constitutive matrix E reduce to E 11 = E 22 = E/(1 − ν 2 ). Governing Equations The three internal fields: displacements. §14. σ yy + x = by 0 0 ∂/∂ y ∂/∂ x σx y The compact matrix version of (14. constitutive and internal-equilibrium equations.6) Here E = ET is the 3 × 3 stress-strain matrix of plane stress elastic moduli. e yy = 0 ∂/∂ y uy 2ex y ∂/∂ y ∂/∂ x      E 11 E 12 E 13 ex x σx x (14. DT σ + b = 0.§14. This happens in fixed portions of the boundary. To write down those conditions it is conceptually convenient to break up  into two subsets: u and t . An example of these are roller and sliding conditions as well as lines of symmetry and antisymmetry.8) in structural design. The separation of  into u and t is useful for conciseness in the mathematical formulation. 14–8 .. Displacement and force (stress. . as they become unimportant once the FE discretization is done. These are called mixed displaceent-traction BC.10) in which n x and n y denote the Cartesian components of the unit normal vector ne (also called the direction cosines of the normal).. See Figure 14..3. all BC possibilities. σnt = tˆt (14.Chapter 14: THE PLANE STRESS PROBLEM . .8) splits into two scalar conditions: tˆx = σnx and tˆy = σny .9) Here pn = σn h and qˆ = ˆt h. To cover these situations one needs either a generalization of the boundary split.. . The derivation of (14. .4.8) uses the internal plate forces: ˆ pn = q... such as the energy integrals presented below.10) is the subject of Exercise 14.. σx y (14. It does not exhaust. Remark 14.11) in which σnn = σnx n x + σny n y and σnt = −σnx n y + σny n x . in which u and t are permitted to overlap. . particularly when the plate wall construction is inhomogeneous. Such generalizations will not be presented here.4.8) in terms of normal n and tangential t directions: σnn = tˆn . traction) boundary conditions for the plane stress problem. This form is used more often than (14. . .. Frequently at points of  one specifies a displacement in one direction and a force (or stress) in the other. however.. Γu + u^ = 0 ^ Boundary displacements u are prescribed on Γu (figure depicts fixity condition) t t^ Γt ^tn σnt σn Boundary tractions ^t or boundary forces q^ are prescribed on Γt ^tt n (unit exterior normal) ^t σ nn Stress BC details (decomposition of forces q^ would be similar) Figure 14. Thus (14. The components of σn in Cartesian coordinates follow from Cauchy’s stress transformation formula  σx x n x + σx y n y σn = σx y n x + σ yy n y   nx = 0 0 ny ny nx   σx x  σ yy .4. . (14.. . It is sometimes convenient to write the condition (14... or to define another portion m for‘mixed conditions. ... An alternative form of (14. as brifley described in Chapter 11. The Tonti diagram of Figure 14. The FEM displacement formulation discussed below is based on this particular Weak Form.13) in which 12 eT Ee is the strain energy density. The internal equilibrium equations and stress BC become weak links.4. called strong links.3.3 is said to display the Strong Form of the governing equations because all relations are verified point by point.3.§14. Weak versus Strong Form We introduce now some further terminology from variational calculus. Weak links are marked with grey lines. there are many possible Weak Forms. A Weak Form is obtained by relaxing one or more strong links.5. (14. where the TPE functional is given in the next subsection. are shown in the diagram with black lines. which enforce relations in an average or integral sense rather than point by point. Total Potential Energy The Total Potential Energy functional for the plane stress problem is given by = U − W.12) The internal energy can be expressed in terms of the strains only as  U= 1 2  h σ e d = T  1 2 h eT E e d. On the other hand the Strong Form is unique. These relations. The weak links are then provided by the variational formulation chosen for the problem. §14. Because in general many variational forms of the same problem are possible. Those are replaced by weak links. The external energy (potential of the applied forces) is the sum of contributions from the given 14–9 .5.  (14. The TPE-based Weak Form of the plane stress equations of linear elastostatics. which are drawn by gray lines. §14.3. These equations are given by the variational statement δ = 0.5. The derivation details are relegated to Exercise 14. The Weak Form associated with the Total Potential Energy (TPE) variational form is illustrated in Figure 14.3 PLANE STRESS GOVERNING EQUATIONS Displacement Prescribed BCs Displacements displacements ^ u u = u ^ u on Γu Body forces b e = D u Kinematic in Ω Strains Stresses σ σ=Ee or e = Cσ in Ω e Ω δΠ= 0 in Ω Equilibrium (weak) Constitutive Γ Force BCs (weak) δΠ = 0 on Γt Prescribed tractions ^ t or ^ forces q Figure 14. These are called local node numbers. respectively. From this mesh we extract a generic element labeled e with n ≥ 3 node points. To comfortably accommodate general element types.14) Note that the boundary integral over  is taken only over t . §14. In subsequent derivations the number n is kept arbitrary. which is studied and justified in advanced FEM courses. the node points will be labeled 1 through n. u y (x. Finite element discretization and extraction of generic element. u xn u yn ]T . The domain of Figure 14. Numbering will always start with corners.6.Chapter 14: THE PLANE STRESS PROBLEM (a) (b) (c) Ωe Γ Γe Ω Figure 14. Finite Element Equations The necessary equations to apply the finite element method to the plane stress problem are collected here and expressed in matrix form. The element domain and boundary are denoted by e and  e . y) = i=1 3 i=1 This is the so called element isotropy condition. y) u yi . y) = Nie (x. We shall assume that the same interpolation functions are used for both displacement components. y) over the element is interpolated from the node displacements.6(b). (14. interior (body) and exterior (boundary) forces:  W =  h u b d + h uT ˆt d. These are collected in the element node displacement vector in a node by node arrangement: (14.16) u x (x. That is.4. Displacement Interpolation The displacement field ue (x.3 Thus n n   e Ni (x. for example those sketched in Figure 14.7.15) ue = [ u x1 u y1 u x2 . 14–10 . §14. . The element has 2n degrees of freedom.6(a) is discretized by a finite element mesh as illustrated in Figure 14. y) u xi . Therefore.1. the formulation is applicable to arbitrary two-dimensional elements. .4. T  t (14. the portion of the boundary over which tractions or forces are specified. It is dimensioned 3 × 2n.18) e(x. The stresses are given in terms of strains and displacements by σ = E e = EBue . if the element has 6 nodes.17) is correct at the nodes. . Example plane stress finite elements. Nne (14.. 0 N2e Nne 0  0 ue = N ue . Differentiating the finite element displacement field yields the strain-displacement relations:   ∂Ne ∂ Nne ∂ N2e 1 0 0 . The interpolation condition on the element shape function Nie (x..21) . B is 3 × 12. y) are the element shape functions. 0 ∂x ∂x   ∂x e  e e  ∂ N ∂ N ∂ N e n  e 1 2 0 .  e e  e e e e ∂N ∂ Nn ∂ N1 ∂ N1 ∂ N2 ∂ N2 . §14.. if the element has 4 nodes. y) = u(x. y) = u y (x. Additional requirements on the shape functions are stated in later Chapters. in which Nie (x.2. . which is assumed to hold at all points of the element..4 FINITE ELEMENT EQUATIONS 3 4 3 3 4 2 5 6 1 1 n=3 10 2 1 2 1 12 11 5 4 n=4 8 9 n=6 3 7 6 2 n = 12 Figure 14. N is 2 × 8. .§14.. In matrix form:   e N1 u x (x. y) =   0 ∂y ∂y ∂y  u = B u .20) (14. in which  U = e 1 2 and  h σ e d = T e e h eT Ee de 1 2  W = (14.17) This N (with superscript e omitted to reduce clutter) is called the shape function matrix. 0 (14. characterized by their number of nodes n. . ∂ yn ∂y ∂x ∂y ∂x ∂x This B = D N is called the strain-displacement matrix.7. y) states that it must take the value one at the i th node and zero at all others. Element Energy To obtain finite element stiffness equations. It has dimensions 2 × 2n.. y) 0  N2e 0 0 N1e .4. the variation of the TPE functional is decomposed into contributions from individual elements: δ e = δU e − δW e = 0.19) e  e h u b d + T e e 14–11 e h uT ˆt d e (14. . This ensures that the interpolation (14. For example. For example. Chapter 14: THE PLANE STRESS PROBLEM Note that in (14. 14–12 . Element Stiffness Equations Inserting the relations u = Nue . e = Bue and σ = Ee into e yields the quadratic form in the nodal displacements (14. The calculation of the entries of Ke and fe for several elements of historical or practical interest is described in subsequent Chapters. e e (14. Here the element stiffness matrix is  K = e e h BT EB de .24) In the second integral of (14.765]. §14. to a free-free structure. but problems such as heat conduction cannot illustrate features such as vector-mixed boundary conditions and shear effects.4. Notes and Bibliography The plane stress problem is well suited for introducing continuum finite elements.24) the matrix N is evaluated on the element boundary only.3. The technical aspects of plane stress can be found in any book on elasticity. A plane stress model was naturally chosen for the panels. A particularly readable one is the excellent textbook by Fung [289]. References Referenced items have been moved to Appendix R. Consequently it does not harm to assume that all boundary conditions are of stress type insofar as forming the element equations. and the consistent element nodal force vector is   e T e f = h N b d + h NT ˆt d e .22) e = 12 ue T Ke ue − ue T fe . The first continuum structural finite elements were developed at Boeing in the early 1950s to model delta-wing skin panels [146. The paper that gave the method its name [137] used the plane stress problem as application driver. This is a consequence of the fact that displacement boundary conditions are applied after assembly.23) (14. from both historical and technical standpoints.21) te has been taken equal to the complete boundary  e of the element. Some books use the Poisson equation for this purpose. which is unfortunately out of print. µ} splitting of the plane strain constitutive equations. This is the Lam´e or {λ. Partial answer to go from plane stress to plane strain: ν ∗ = ν/(1 − ν). or vice-versa. The in-plane stress-strain relations for plane stress (σzz = σx z = σ yz = 0) and plane strain (ezz = ex z = e yz = 0) as given in any textbook on elasticity. with Eµ diagonal and E λ33 = 0.1) to express the two stress-strain matrices in terms of λ and µ. ν 1−ν 0 0 0 1 (1 − 2ν) 2  ex x e yy 2ex y (E14.1 [A+C:15] Suppose that the structural material is isotropic. 14–13 . For the physical significance of λ¯ see [688. which leads to the so-called B-bar formulation of near-incompressible finite elements. and Eµ is a diagonal matrix function of µ and λ¯ . Then split the stress-strain matrix E of plane strain as E = E µ + Eλ (E14.4) in which Eµ and Eλ contain only µ and λ. respectively. Find the expression of E ∗ and ν ∗ in terms of E and ν. 2(λ + µ) (E14.4 Express Eµ and Eλ also in terms of E and ν.Exercises Homework Exercises for Chapter 14 The Plane Stress Problem EXERCISE 14. µ=G= . for plane stress. pp.5 Express Eµ and Eλ also in terms of E and ν. EXERCISE 14. are  plane stress: plane strain: σx x σ yy σx y   1 ν 0  ν 1 0 0 0 1−ν 2    σx x 1−ν E σ yy = ν (1 + ν)(1 − 2ν) σx y 0 E = 1 − ν2 ex x e yy 2ex y  .4) is sometimes referred to as the deviatoric+volumetric splitting of the stress-strain law.2 [A:25] In the finite element formulation of near incompressible isotropic materials (as well as plasticity and viscoelasticity) it is convenient to use the so-called Lam´e constants λ and µ instead of E and ν in the constitutive equations.3) Substitute (E14. λ+µ ν= λ . on account of its physical meaning in plane strain. 254ff]. You may also chose to answer this exercise by doing the inverse process: go from plane strain to plain stress by replacing a fictitious modulus and Poisson’s ratio in the plane strain constitutive matrix. Both λ and µ have the physical dimension of stress and are related to E and ν by E νE . This device permits “reusing” a plane stress FEM program to do plane strain. That interpretation is not fully accurate.1)  . For the plane stress case perform a similar splitting in which where Eλ contains only λ¯ = 2λµ/(λ + 2µ) with E λ33 = 0. however. (E14. 4 5 Equation (E14.2) λ= (1 + ν)(1 − 2ν) 2(1 + ν) Conversely E= µ(3λ + 2µ) . as long as the material is isotropic.3) into both of (E14. with elastic modulus E and Poisson’s ratio ν. Show that the constitutive matrix of plane strain can be formally obtained by replacing E by a fictitious modulus E ∗ and ν by a fictitious Poisson’s ratio ν ∗ in the plane stress constitutive matrix. Geometry for deriving (?). (b) Show that (E14. (E14.6) Show that (E14. It is closely related to the Schur complement concept covered in Appendix P.13) for the plane stress problem. (E14. Hint. It is shown in courses in elasticity that the internal strain energy density stored per unit volume of the plate expressed in terms of stresses and strains is the bilinear form U = 12 (σx x ex x + σ yy e yy + σx y ex y + σ yx e yx ) = 12 (σx x ex x + σ yy e yy + 2σx y ex y ) = (a) 1 2 σT e. thus justifying the strain energy density expression given in (14.Chapter 14: THE PLANE STRESS PROBLEM EXERCISE 14.8) σT C σ. assuming a thermally isotropic material with coefficient of linear expansion α.6) in terms of the extensional strains {ex x .4 [A:15] Derive the Cauchy stress- n(nx =dx/ds. (c) Suppose you want to write (E14. Solve for stresses and collect effects of T in one vector of “thermal stresses.1.6) can be written in terms of stresses only as U= 1 2 (E14. EXERCISE 14. etc.5 [A:25=5+5+15] A linearly elastic plate is in plane stress.5) in which T = T (x. It can be symbolically done by the Mathematica script 6 The process of computing A is an instance of “partial inversion” of the elasticity matrix E. Part (c) is more difficult. (E14.3 [A:20] Include thermoelastic effects in the plane stress constitutive field equations. 14–14 . E 2ex y = σx y /G. in which C = E−1 is the elastic compliance (strain-stress) matrix. Figure E14. (This is the “wedge method” in Mechanics of Materials. y) and G = 12 E/(1 + ν). which is used in finite elements formulated with mixed variational principles. Parts (a. ny =dy/ds) ty y to-traction equations (14.6) can be written in terms of strains only as U= 1 2 (E14. This is known as a mixed representation.7) eT E e.9) can be calculated6 in terms of the elastic moduli E i j .1. Hint: start from the two-dimensional Hooke’s law including temperature: ex x = 1 (σx x − νσ yy ) + α T.) σx x x dy ds dx σx y = σy x tx σyy Hint: tx ds = σx x dy + σx y d x. Show that  U= 1 2 ex x e yy σx y T  A11 A12 A13 A12 A22 A23 A13 A23 A33  ex x e yy σx y  . e yy } and of the shear stress σx y = σ yx .9) and explain how the entries Ai j of the kernel matrix A that appears in (E14.10) using force equilibrium along x and y and the geometric relations shown in Figure E14.” EXERCISE 14.b) are easy. E e yy = 1 (σ yy − νσx x ) + α T. E33. Note: the following Table list relations between commonly used moduli for isotropic linear elastic material. λ) Eµ 2µ 3 3(3µ−E) 3λ+2µ 9K K −λ E = µ λ+ν 3K −λ E−2µ λ= µ 3µ−E µ=G= µ K −λ 2 λ E ν= −1 2µ 2(λ+µ) 4µ−E M= λ+2µ µ 3K −2λ 3µ−E K = (K .E13.syy.1.m[[i]]*m[[j]]]. sxy==E13*exx+E23*eyy+E33*gxy}.{i.3}.10) 2µ(1+ν) . Emat={{E11.1. If you use this solution.sxy}.syy.eyy. sol=Simplify[Simplify[Solve[eqs.A//MatrixForm].gxy}.1.syy. µ) (K .Emat.E12. µ) λ+ (λ. ν) λ 1+ν 3ν 2µ(1+ν) 3(1−2ν) λ(1+ν)(1−2ν) ν E 3(1−2ν) 9K µ 3K +µ 2µ K− 3 2µν λ K −λ 3K −λ 3K −2µ λ 3K −λ 2(3K +µ) 4µ K+ λ 1−ν ν 3 14–15 1−2ν 9K µ 3K +µ µ 2−2ν 1−2ν (K . A=Table[fac[i.{E12. E) 3K (1−2ν) 3K (3K −E) 3K Eν 9K −E (1+ν)(1−2ν) 1+ν λ(1−2ν) (1−2ν) E 3K 2ν 2(1+ν) 2(1+ν) 3K −E 6K E(1−ν) 1−ν 3K +E 3K 3K 1+ν 9K −E (1+ν)(1−2ν) (E14.3}]. m={exx.syy==E12*exx+E22*eyy+E23*gxy.E23}. Here K is the bulk modulus whereas M is the P-wave modulus used in seismology. U=Simplify[(e.sxy}.E33}}.j_]:=If[i==j. ν) (µ. eqs={sxx==E11*exx+E12*eyy+E13*gxy.eyy.j]*Coefficient[U.sol[[1]]]. Print[sol].E13}.Exercises ClearAll[exx.{E13.2. make sure to explain what is going on.e/2)/. s={sxx.{sxx. e={exx.gxy}]]]. (λ.E12.E11.sxx.gxy.{j.E22. ν) (E. Print["A=".E23. µ) (E.E22.eyy.E23].sxy. ν) (K . fac[i_. Tha table is useful for Exercise 14.1/2]. 15 Three-Node Plane Stress Triangles 15–1 . . §15. . . §15. Stress-Strain Equations . .9. .1. . . . . . . *Energy Ratios . .2.4. *Interesting Points and Lines . . . . . .6. . . 15–2 . . . . . . Partial Derivatives . . *The Veubeke Equilibrium Triangle §15. . . §15. . .5. . . .4. . . . . . . . *Shear Locking in Turner Triangles §15. . §15. §15. . . . . . . . .6.4. . .2. . . . .3. . . . . . . . . . .1.6. . .2. . . . . . . . . §15. .3. *Implementation . . . .3. . §15. . . . . . . . . Implementation . . . . . . . . . . . .3. . . . .7. .3. . . . . . . . . The Consistent Nodal Force Vector . . . . . Triangular Coordinates . . . §15. . . . . . . .4. . . . . . . Linear Interpolation . . . . .2. . . .3. . The Stiffness Matrix .4. *Checking Continuity . *Tonti Matrix Diagram . .2. . . . . §15. .3. . . . . . . . . . . .5.5. . . . . §15. . . §15. §15. §15. . . . . . . . . . . . . . References .3. .3. . . . . §15. .6.8. §15. . . . . . . . Exercises . . . . . . . . .4. . .1. . . . . . . . . . . . *Checking Completeness . . . §15. Notes and Bibliography . . .2. . §15. Introduction Background §15. . .3. . .6. . . . §15. . . . .1. . . . . . . . .1. . . . . . . . §15. . . . . . . §15. . . . .3. . . . 15–3 15–3 15–3 15–4 15–4 15–5 15–5 15–6 15–7 15–7 15–8 15–8 15–8 15–9 15–9 15–10 15–11 15–11 15–12 15–12 15–12 15–12 15–14 15–14 15–14 15–15 15–15 15–16 15–17 15–18 15–18 15–19 15–19 15–20 15–21 15–23 .7. *The Inplane Bending Test . §15. . . . . . . . .2. . .8.3. . .3. . . . . . . . . §15.1.5. . . . . §15. . §15. . . . . . Geometry . . . . . §15. . . . . . .2.2.2. . . . . . . . . *Natural Strains and Stresses . .3. .4. . . . . *Homogeneous Polynomials in Triangular Coordinates §15. . . . . . . . . .3. Strain-Displacement Equations . . . . . §15.2. . . The Turner Triangle §15. *Derivation Using Natural Strains and Stresses §15. *Kinematic Relations . . .5. *The Natural Stiffness Matrix . . . Coordinate Transformations . . . . . . . §15. . . §15. . . . . . . . . .5.2. .2. . Parametric Representation of Functions . . *Consistency Verification . . . . . . §15. . . . .6. . . . . .2. . . . . . . . *Convergence as Mesh is Refined . . . *Covariant Node Displacements . . . .5. . *Stiffness Matrix . . . . . . .Section 15: THREE-NODE PLANE STRESS TRIANGLES TABLE OF CONTENTS Page §15. . . *Spurious Kinematic Modes . . . . . . . . §15. Consider the following alternative representations of the unit-circle function. but essential in the more complicated iso-P models covered in Chapters 16ff. It is still used in problems that do not require high accuracy. with assumed displacements. 15–3 .1) (I) y = 1 − x 2 . The Turner triangle has connection nodes located at the corners. Introduction This Chapter derives element stiffness equations of three-node triangles constructed with linear displacements for the plane stress problem formulated in Chapter 14.e. The Veubeke equilibrium triangle has connection nodes located at the side midpoints.. See Notes and Bibliography at the end of this Chapter. which are introduced in the next Chapter. Clough. (iii) It cannot be improved by the addition of internal degrees of freedom.5. Together with multidimensional numerical integration. It enjoys several important properties: (i) It belongs to both the isoparametric and subparametric element families. There are two main versions that differ on where the connection nodes are located: 1. §15. it returns one or more y. (ii) It allows closed form derivations for the stiffness matrix and consistent force vector without need for numerical integration. it is a key enabling tool for developing elements in two and three space dimensions. The triangle geometry is defined by the corner locations or geometric nodes in both cases. however. The derivation was not done. as well as in non-structural applications such as thermal and electromagnetic analysis. These elements have six displacement degrees of freedom.2.2 BACKGROUND §15. The direct representation (I) fits the conventional function notation. This publication is widely regarded as the start of the present FEM. 2 Numerical integration is not useful for the triangular elements covered here.1 Thus most of the material in this Chapter is devoted to it. the parametric representation (II) is indirect: both x 1 The triangle was one of the two plane-stress continuum elements presented by Turner. Properties (ii) and (iii) are shared by the Veubeke equilibrium triangle. Since this model is rarely used in structural applications it is covered only as advanced material in §15. (15. The essentials of parametric representation can be illustrated through a simple example. the Turner triangle is by far the most practically important one in solid and structural mechanics. 2. Of the two versions. y = f (x). Given a value of x.2. One reason is that triangular meshes are easily generated over arbitrary two-dimensional domains using techniques such as Delaunay triangulation. which are placed at the connection nodes. Martin and Topp in their 1956 paper [758]. Parametric Representation of Functions The concept of parametric representation of functions is crucial in modern FEM. i.1. x 2 + y 2 = 1:  (II) x = cos θ and y = sin θ. Background §15. On the other hand.2 Without these tools the developer would become lost in an algebraic maze as element geometry and shape functions get more complicated.1. The Turner triangle is not a good performer for structural stress analysis. Nodes are labelled 1. u y } from these six values is studied in §15. ζ 2 .3. (0. 13 ).2) is a signed quantity. ζ2 = 0 and ζ3 = 0. (b) area triangular coordinates are introduced. 3 while traversing the sides in counterclockwise fashion. (0.Section 15: THREE-NODE PLANE STRESS TRIANGLES and y are given in terms of one parameter. 0. 3.0.1. (15. This convention is followed in the sequel.y2) 2 y The Turner triangle has six degrees of freedom. the centroid has coordinates ( 13 .2) y1 y2 y3 The area given by (15. respectively. as the list collected in Table 15.1(b). 15–4 (15.2. Geometry The geometry of the 3-node triangle shown in Figure 15. Equations ζi = constant (15. The equations of sides 2–3. y} plane.5) . The three-node. for i = 1. Elimination of θ through the trigonometric identity cos2 θ + sin2 θ = 1 recovers x 2 + y 2 = 1. linear-displacement plane stress triangular element: (a) geometry. The three midpoints of the sides have coordinates ( 12 .1(a) is specified by the location of its three corner nodes on the {x. 12 . as illustrated in Figure 15. 2. 12 . (15. It is positive if the corners are numbered in cyclic counterclockwise order (when looking down from the +z axis). The and positive boundary traversal. 13 . 1 1 (x 1 . 0). u yi }.3) In the literature these 3 parameters receive an astonishing number of names. Continuum finite elements provide a striking illustration of this point.2. toward you lation of the internal displacements { u x . 2. The interpoz up.0.4) represent a set of straight lines parallel to the side opposite to the i th corner.y1) defined by the six corner displacement compox nents { u xi . and so on. yi } for i = 1.1.0) and (0. The three corners have coordinates (1.0). 3–1 and 1–2 are ζ1 = 0. triangle area can be obtained as   1 1 1 2A = det x1 x2 x3 = (x2 y3 − x3 y2 ) + (x3 y1 − x1 y3 ) + (x1 y2 − x2 y1 ). §15. The coordinates are not independent because their sum is unity: ζ1 + ζ2 + ζ3 = 1. 2. ζ3 . 3. §15. Their location is defined by their Cartesian coordinates: {xi . In the sequel the name triangular coordinates will be used to emphasize the close association with this particular geometry.1). But there are situations in which working with the parametric form throughout the development is more convenient. after Figure 15. Triangular Coordinates Points of the triangle may also be located in terms of a parametric coordinate system: ζ1 .y3) 3 Area A > 0 2 (x2 .2. 12 ).3. as depicted in Figure 15.1 shows. 12 ) and ( 12 . (a) (b) 3 (x3 . the angle θ .2. Linear Interpolation Consider a function f (x. tetrahedra. (15.2. and occasionally areal coordinates. Triangular coordinates ζ1 ..2.§15. Remark 15.6) where a0 . Table 15.. where A jk is the area subtended by the subtriangle formed by the point P and corners j and k.2 3 3 ζ1 = 0 3 / / 1 ζ2 = 1 / / / 2 / / 2 1 ζ1 = 1 ζ3 = 1 / ζ2 = 0 / BACKGROUND 1 2 ζ3 = 0 Figure 15. 15–5 (15. . §15. ζ3 ) = f 1 ζ1 + f 2 ζ2 + f 3 ζ3 = [ f 1 f 2 f 3 ] ζ2 = [ ζ1 ζ2 ζ3 ] f 2 .8) is called a linear interpolant for f . The expression in triangular coordinates makes direct use of those three values:     ζ1 f1 f (ζ1 . y) = a0 + a1 x + a2 y.7) (15. a1 and a2 are coefficients to be determined from three conditions. ζ3 f3 Formula (15. This comes from the following interpretation: ζi = A jk /A.4. ζ3 . f3. In terms of Cartesian coordinates it may be expressed as f (x. However this relation does not carry over to general isoparametric triangles with curved sides and thus it is not used here. f2. In finite element work such conditions are often the nodal values taken by f at the corners: f1. triangular coordinates were often called area coordinates.) triangles all triangles straight-sided triangles Triangular coordinates normalized as per ζ1 + ζ2 + ζ3 = 1 are often qualified as “homogeneous” in the mathematical literature. Historically this was the way coordinates were defined in 1960s papers. ζ2 .1. y) that varies linearly over the triangle domain. In pre-1970 FEM publications. in which j and k are 3-cyclic permutations of i.8) . ζ2 .1 Names of element parametric coordinates Name Applicable to natural coordinates isoparametric coordinates shape function coordinates barycentric coordinates M¨obius coordinates triangular coordinates area (also written “areal”) coordinates all elements isoparametric elements isoparametric elements simplices (triangles. y (15. ζ1 ζ2 ζ3 1 = 2A x2 y3 − x3 y2 x3 y1 − x1 y3 x1 y2 − x2 y1 y2 − y3 y3 − y1 y1 − y2 x3 − x2 x1 − x3 x2 − x1 y23 y31 y12 x32 x13 x21 §15. The next two express x and y linearly as homogeneous forms in the triangular coordinates.9) yields       1 1 2A23 2A31 x = 2A 2A12 y   1 x .11) ∂ζi ∂ζi 2A ∂ζi = y jk . The first equation says that the sum of the three coordinates is one.8) to the Cartesian coordinates: x = x1 ζ1 + x2 ζ2 + x3 ζ3 and y = y1 ζ1 + y2 ζ2 + y3 ζ3 .12) and application of the chain rule:  1 ∂f ∂f = y + ∂x 2A ∂ζ1 23  1 ∂f ∂f x + = ∂y 2A ∂ζ1 32 ∂f y + ∂ζ2 31 ∂f x + ∂ζ2 13 15–6  ∂f y ∂ζ3 12  ∂f x ∂ζ3 21 (15.6. A23 = A31 = A12 = A/3.10) Here x jk = x j − xk .2) and A jk denotes the area subtended by corners j. k and the origin of the x–y system.9) . then j = 3 and k = 1. ζ2 .10) we immediately obtain the following relations between partial derivatives: ∂x ∂y = xi . The derivatives of a function f (ζ1 .Section 15: THREE-NODE PLANE STRESS TRIANGLES §15. Partial Derivatives From equations (15. For example. On the other hand. (15.12) j and k denote the 3-cyclic permutations of i. Assuming A = 0. ∂y (15. A is the triangle area given by (15. ζ3 ) with respect to x or y follow immediately from (15. y}. Thus we need transformation equations through which it is possible to pass from one coordinate system to the other. strains and stresses are usually expressed in the Cartesian system {x.9) and (15.13) . These are obtained by applying the linear interpolant (15. if i = 2. quantities such as displacements.2. Coordinate Transformations Quantities that are closely linked with the element geometry are best expressed in triangular coordinates. Cartesian and triangular coordinates are linked by the relation    1 1 x = x1 y1 y 1 x2 y2 1 x3 y3  ζ1 ζ2 ζ3  (15. y jk = y j − yk . If this origin is taken at the centroid of the triangle.12) In (15. ∂x 2A ∂ζi = xk j .5.2. inversion of (15. = yi . 2 BACKGROUND (a) 3 (b) (c) 3 Μ1 Μ2 Η2 2 Η 1 1 Μ2 Η3 Μ3 Μ1 RC Η1 2 C 3 OC 2 Μ3 1 Figure 15.2. To reduce the general quadratic polynomial c000 +c100 ζ1 +c010 ζ2 +c001 ζ3 +c200 ζ12 +c020 ζ22 +c002 ζ32 +c110 ζ1 ζ2 + c011 ζ2 ζ3 + c101 ζ3 ζ1 to homogeneous form. The projection of corner i is identified Hi . 13 }. Locations Hi are called altitude feets. *Homogeneous Polynomials in Triangular Coordinates Because ζ1 . Interesting points and lines of a triangle. as well as the altitude equations. since they differ by 3 − 3(ζ1 + ζ2 + ζ3 )=0. respectively. All polynomial expressions used in this book for triangles are expressed in homogeneous form. and in particular the Turner and Veubeke triangles. you can balance the triangle at this point.8. which is zero. They intersect at the centroid C of coordinates { 13 . The midpoint opposite corner i is labeled Mi . ζ3 = ζ1 and ζ1 = ζ2 . To achieve uniqueness it is necessary to write the function as a homogeneous polynomial. And so on. §15. as depicted in Figure 15. 2–H2 and 3–H3 . 13 . the distance from a corner to the centroid is twice the distance from the centroid to the opposite side of the triangle. The altitudes are three lines that connect each corner with their projections onto the opposing sides. Other names for the centroid are barycenter and center of gravity.3(b). It can be shown that the centroid trisects the medians. 2–M2 and 3–M3 have equations ζ2 = ζ3 .§15. For example 3 − 2ζ1 + ζ2 − 3ζ3 and ζ1 + 4ζ2 are identical. subtract (c000 + c100 ζ1 + c010 ζ2 + c001 ζ3 )(1 − ζ1 − ζ2 − ζ3 ).3(a).7. polynomial functions in those variables are not unique. The triangle medians are three lines that join the corners to the midpoints of the opposite sides. subtract c000 (1 − ζ1 − ζ2 − ζ3 ). *Interesting Points and Lines Some distinguished lines and points of a straight-sided triangle are briefly described here for use in other developments as well as in Exercises. The lengths of those segments are the triangle heights. so the altitudes are 1–H1 . The triangular coordinates of Hi and H . If you make a real triangle out of cardboard. are worked out in an Exercise. 15–7 . The medians 1–M1 . as pictured in Figure 15. which in matrix form is  ∂f  1  ∂x   ∂f  = 2A ∂y y23 y31 x32 x13  ∂f  ∂ζ  1 y12  ∂ f  x21   ∂ζ2  ∂f ∂ζ3     . ζ2 and ζ3 are not independent. as in the second form of this example. to get P1 = (c100 − c000 )ζ1 + (c010 − c000 )ζ2 + (c001 − c000 )ζ3 .3. To reduce the general linear polynomial c000 + c100 ζ1 + c010 ζ2 + c001 ζ3 to homogeneous form. that is to say.    (15.2. in triangular coordinates. The altitudes intersect at the triangle orthocenter H .14) With these mathematical ingredients in place we are now in a position to handle the derivation of straight-sided triangular elements. §15. as shown in Figure 15. The interpolation is illustrated in Figure 15. or circumcircle. The two expressions in (15.14). The Turner Triangle The simplest triangular element for plane stress (and in general. §15. with degrees of freedom located at the corners.15) ux uy2 ux2 2 ux1 Figure 15.18) we get   u x1  u  y23 0 y31 0 y12 0  y1  1 u  e = D N ue = (15. It can be geometrically constructed by drawing the normal to each side at the midpoints.17) for an arbitrary plane stress element:   u x1 u     y1  ζ 0 ζ2 0 ζ3 0  u x2  ux = 1   = N ue . called the perpendicular side bisectors.4.Section 15: THREE-NODE PLANE STRESS TRIANGLES Another interesting point is the center OC of the circumscribed circle. ζ3 ): u x = u x1 ζ1 + u x2 ζ2 + u x3 ζ3 .8) for the displacement components u x and u y at an arbitrary point P(ζ1 . C lies between OC and H . uy 0 ζ1 0 ζ2 0 ζ3  u y2    u x3 u y3 (15. this element is called the Turner triangle.17) 0 x32 0 x13 0 x21  x2  = B ue .6). the orthocenter and the circumcircle center fall on a straight line. and B is the strain-displacement matrix. Displacement interpolation over triangle.ζ 2 . for 2D problems of variational index m = 1) is the three-node triangle with linear shape functions. This is the origin of the name constant strain triangle (CST) given it in many finite element publications. For the plane stress problem we select the linear interpolation (15. 2. 15–8 . The shape functions are simply the triangular coordinates. u y = u y1 ζ1 + u y2 ζ2 + u y3 ζ3 . §15. called the Euler line.4. Using (15.1. and the distance OC –H is three times the distance H –C. Furthermore. That is. Those three lines.16) and the general form (14.ζ 3 ) u y3 3 } u x by linear u y interpolation ux3 uy P uy1 1 (15.16) where N is the matrix of shape functions. intersect at OC . When applied to the plane stress problem.15) can be combined in a matrix form that befits the expression (14. ζ2 . Strain-Displacement Equations The strains within the elements are obtained by differentiating the shape functions with respect to x and y.3. P(ζ1 . (15. A famous theorem by Euler asserts that the centroid.3(c). 3. Note that the strains are constant over the element.  u y2  2A x y23 x13 y31 x21 y12   32 u x3 u y3 in which D denotes the symbolic strain-to-displacement differentiation operator given in (14.3. Nie = ζi for i = 1. This is the unique circle that passes through the three corners. (15.23) of the previous Chapter:   ζ1 0  0 ζ1      0 ζ fe = h NT b d = h 2 (15. see Exercise 15.2.1 deals with the case of a linearly varying plate thickness. 15–9 . The constitutive matrix E will be assumed to be constant over the element.23)  b d .3 THE TURNER TRIANGLE §15. they can be taken out of the integral:  e T K = B EB h d (15. The Consistent Nodal Force Vector For simplicity we consider here only internal body forces3 defined by the vector field  bx b= by (15.3. §15.3.§15. Because the strains are constant. Since B and E are constant. which is repeated here for convenience:      E 11 E 12 E 13 ex x σx x (15. The consistent nodal force vector fe is given by the general formula (14.  31  E E E 4A  0 x13 y31  E 12 E 22 E 23 x32 y23 x13 y31 x21 y12   13 23 33 y12 0 x21 0 x21 y12 (15.21) Exercise 15.  0 ζ2  e e   ζ3 0 0 ζ3 3 For consistent force computations corresponding to distributed boundary loads over a side. and we obtain the closed form   y23 0 x32  0 x32 y23     y23 0 y31 0 y12 0   E 11 E 12 E 13 h y 0 x   13 Ke = A h B T E B = 0 x32 0 x13 0 x21 . The Stiffness Matrix The element stiffness matrix is given by the general formula (14.4.20) e e If h is uniform over the element the remaining integral in (15.23).19) e where is the triangle domain.4. so are the stresses.3.18) σ = σ yy = E 12 E 22 E 23 e yy = E e. which is repeated here  e K = h BT EB d . Stress-Strain Equations The stress field σ is related to the strain field by the elastic constitutive equation in (14. σx y E 13 E 23 E 33 2ex y where E i j are plane stress elastic moduli.22) which is specified per unit of volume.5).20) is simply h A. and h the plate thickness that appears in the plane stress problem.3. §15. 3.x13.{ E12. If [numer. Figure 15.numer_]:=Module[{ x1.26) which can be derived through the Beta function. j. {x32.E33 } }.0}.y1 }.E23.y23.25) This agrees with the simple element-by-element force-lumping procedure. to each corner.{ E13.y12. Emat A two-dimensional list storing the 3 × 3 plane stress matrix of elastic moduli as { { E11. Here i. (15. j ≥ 0. k are integer exponents.x13.numer]. Remark 15.{ x3.{0. §15.y3-y1}.y3}}=ncoor.x1-x3. (15.x13.x3.h_. 15–10 .y31}={x2-x1.x32.y3. {{x1.0.{x3. A Mathematica module that returns Ke is shown in Figure 15.Emat.x3-x2.23) gives fe = Ah [ bx 3 by bx by bx b y ]T . j.0.y23.y12. Implementation The implementation of the Turner triangle in any programming language is very simple.E13 }.x21. k ≥ 0.{x2.2.26). Ke=A*h*Transpose[Be].y12}}/(2*A).5. which assigns one third of the total force along the {x.y2}.x21}.24) e e e which replaced into (15. arranged as a list: { { x1.x2.5.24) are obtained by setting exponents i = 1. Be=N[Be]].x32. It is invoked as Ke=Trig3TurnerMembraneStiffness[ncoor.Be.h.y1}. h Plate thickness. Then we need the integrals    ζ1 d = ζ2 d = ζ3 d = 13 A (15. This formula only holds for triangles with straight sides.y31.A.E22.0.0.y12. Formulas (15.y23.y31. Be={{y23. The module needs only 8 lines of code. Return[Ke]]. Implementation of Turner triangle stiffness matrix calculation as a Mathematica module.y31.y2. and thus does not apply for higher order elements with curved sides.y3 } }.Emat. {x21. The simplest case is when the body force components (15.5. (15.Be.Section 15: THREE-NODE PLANE STRESS TRIANGLES Trig3TurnerMembraneStiffness[ncoor_. k} cyclically.x32. The integrals (15. y} directions: Ahbx and Ahb y .x21. (i + j + k + 2)! i ≥ 0.x13.24) are particular cases of the general integration formula of monomials in triangular coordinates: 1 2A  j e ζ1i ζ2 ζ3k d = i! j! k! .Ke}. assumed uniform over the triangle.y1.E23 }.y2 }.E12.27) The arguments are ncoor Element node coordinates. and permuting {i. j = k = 0 in (15.{ x2.Emat_.22) as well as the thickness h are constant over the element. A=Simplify[(x2*y3-x3*y2+(x3*y1-x1*y3)+(x1*y2-x2*y1))/2].y2-y3.y1-y2. Show[Graphics[RGBColor[1. Since the node values on all elements that meet at a node are the same.5 eigs of Ke = {139. The results are shown at the bottom of Figure 15. u x and u y match along the side.. 0. 60.0}. and outputs.7. *Checking Continuity Along any triangle side. u y = u y1 ζ1 + u y2 ζ2 + u y3 ζ3 = u y1 ζ1 + u y2 ζ2 . as explained in Chapter 19. Emat=8*{{8. isotropic material matrix with E 11 = E 22 = 64.Graphics[AbsoluteThickness[2]].0}. over side 1–2 of an individual triangle. Test statements to exercise the module of Figure 15.5.6. 20. numer A logical flag: True to request floating-point computation. (15.2}}. 0. 0} 1 1. E 12 = 16.33. Ke=Trig3TurnerMembraneStiffness[ncoor. The last test statement draws the triangle (this plot was moved to the right of the numeric output to save space.2 } }. Print["Ke=". Such consistency conditions are sufficient to insure convergence toward the exact solution of the mathematical model as the mesh is refined.6. since 3 eigenvalues must be exactly zero and the other 3 real and positive.6704. which form a triangle with corner coordinates { { 0.Axes->True].5 1 0.0 }.5 2 2. the variation of u x and u y is linear and uniquely determined by the value at the nodes on that side. C 0 continuous.0. the trial functions should be 1-complete.3 THE TURNER TRIANGLE ncoor={{0.6.3. E 33 = 24. Print["eigs of Ke=".0}.{2.§15. For example.0. and C 1 piecewise differentiable.{ 2.2.28) An identical argument holds for that side when it belongs to an adjacent triangle.Emat. else False.{ 3. §15.5 3 Figure 15. According to the rules stated in §19. Because the functions are continuous inside 15–11 .3.1 }. which has equation ζ3 = 0: u x = u x1 ζ1 + u x2 ζ2 + u x3 ζ3 = u x1 ζ1 + u x2 ζ2 .3. (that is.6.1}.) §15. E = 60 and ν = 14 ) and unit thickness.{2. This module is exercised by the statements listed at the top of Figure 15.{0. Ke = 11 5 − 10 −2 −1 −3 5 11 2 10 −7 − 21 − 10 2 44 − 20 − 34 18 −2 10 − 20 44 22 − 54 −1 −7 − 34 22 35 − 15 −3 − 21 18 − 54 − 15 75 2 1.Ke//MatrixForm].3}}.0]].8. Graphics[Polygon[ncoor]].Chop[Eigenvalues[N[Ke]]]].7. *Consistency Verification It remains to check whether the interpolation (15.1.5 0.15) for element displacements meets the completeness and continuity criteria studied in Chapter 19 for finite element trial functions.{3. The variational index for the plane stress problem is m = 1. The computation of stiffness matrix eigenvalues is always a good programming test. and the trial function is C 0 interelement continuous. others zero. such as elements (e1) and (e2) shown in Figure 15.False]. 1 2 (e2) Figure 15. It also helps reading recent literature in assumed strain elements. Thus the two completeness requirements are satisfied. This advanced section examines the derivation of the element stiffness matrix through natural strains. Geometry-intrinsic fields for the Turner triangle: (a) natural strains i .9. §15. In the case of the Turner triangle they are.30) (yi ζi ) = α0 + α1 x + α2 y.8. a piecewise linear trial function is obviously C 1 piecewise differentiable and consequently has finite energy. h m being the mean thickness.9. The only intrinsic quantities are the triangle coordinates. Kinematic Equilibrium T f=VB σ e=Bu Constitutive e σ σ=Ee Figure 15.3. it becomes important in the construction of more complicated high performance elements. This is a discrete Tonti diagram similar to those of Chapter 6.16) satisfies the completeness requirement for the plane stress problem — and in general.16) and see if (15. *Checking Completeness The completeness condition for variational order m = 1 requires that the shape functions Ni = ζi be able to represent exactly any linear displacement field: u x = α0 + α1 x + α2 y. Stiffness u f §15.4. Interelement continuity check. *Derivation Using Natural Strains and Stresses The foregoing derivation of the Turner triangle uses Cartesian strains and stresses. as well as {x.29) is recovered.31) Here V = h m A is the volume of the element.31) may be graphically represented with the diagram shown in Figure 15. omitting element superscripts: e = Bu. Tonti matrix diagram for Turner triangle. (b) natural stresses τi .29): u xi = α0 + α1 xi + α2 yi and u yi = β0 + β1 xi + β2 yi for i = 1. Consequently (15.(e1) Section 15: THREE-NODE PLANE STRESS TRIANGLES the elements.3. y} displacements. §15. u y = β0 + β1 x + β1 y. Finally. Although the procedure does not offer obvious shortcuts over the previous derivation. it is convenient to split the governing equations of the element. Replace these in (15. The equations (15. it follows that the continuity requirement is met.8. Component u y can be similarly verified.8. 2. 3. .7. 15–12 3 3 (a) ε32 = ε1 ε13= ε2 2 ε21= ε3 1 (b) τ32 = τ1 τ13= τ2 2 τ21= τ3 1 Figure 15.29) To check this we obtain the nodal values associated with the motion (15. (15. for any problem of variational index 1. natural stresses and covariant displacements. f = AT σ = V BT σ. σ = Ee. *Tonti Matrix Diagram T f=VB EBu=Ku For further developments covered in more advanced courses. Here are the detailed calculations for component u x : ux =  i = α0 u xi ζi =  i  (α0 + α1 xi + α2 yi )ζi = i ζi + α1   i i (xi ζi ) + α2  (α0 ζi + α1 xi ζi + α2 yi ζi ) i (15. (15. natural stresses are normal stresses directed parallel to the triangle sides. (15. y}. (c) covariant node displacements. s2 = y13 /L 2 .32) Here c1 = x32 /L 1 . and s3 = y21 /L 3 . The natural strains can be related to Cartesian strains by the following tensor transformation4  = 1 2 3   c12 =  c22 c32 s12 s22 s32  s1 c1  ex x  s2 c2  e yy = T−1 e e. c3 = x21 /L 3 .10(a.4. c2 = x13 /L 2 . as shown in Figure 15.1. It may be therefore called the natural constitutive matrix. as shown in Figure 15. s1 = y32 /L 1 . 31 21 12 32 23 13 1 2 3 4A2 2 2 2 3 (y31 x12 + x13 y21 )L 1 (y12 x23 + x21 y32 )L 2 (y23 x31 + x32 y13 )L 3 (15. (b) side directions. which 4 This is the “straingage rosette” transformation studied in Mechanics of Materials books.9(b).10(c). Additional quantities appearing in natural strain and stress calculations: (a) side lengths. §15. 32 ≡ 1 .33) Note that Te is constant over the triangle.b). Because both natural stresses and strains are constant over the triangle. From the invariance of the strain energy density σT e = τT  it follows that the stresses transform as τ = Te σ and σ = T−1 e τ. Natural strains are denoted by 21 ≡ 3 . are sines and cosines of the side directions with respect to {x. Natural stresses are denoted by τ21 ≡ τ3 .2.4 *DERIVATION USING NATURAL STRAINS AND STRESSES (a) (b) 3 3 (c) φ1 d6 3 d5 L1 = L32 L2 = L13 2 d3 2 φ3 φ2 L3 = L21 1 x 1 2 d4 d1 d2 1 Figure 15.10. and τ13 ≡ τ2 . En = TeT ETe .9(a). *Covariant Node Displacements Covariant node displacements di are directed along the side directions.4. 15–13 . §15. no node value association is needed. and 13 ≡ 2 . τ32 ≡ τ1 .§15. The inverse of this relation is     y31 y21 L 21 y12 y32 L 22 y23 y13 L 23 1 1 2 2 2   e= = x x L x x L x x L 2 = Te . *Natural Strains and Stresses Natural strains are extensional strains directed parallel to the triangle sides. as shown in Figure 15. Similarly. as illustrated in Figure 15. That strain energy density may be expressed as  ex x e yy 2ex y  U = 12 eT Ee = 12 T En .34) Here En is a stress-strain matrix that relates natural stresses to natural strains as τ = En . 2ex y s3 c3 (15. §15.Section 15: THREE-NODE PLANE STRESS TRIANGLES defines the notation used for them. 3} still define the geometry of the element.42) The qualifier equilibrium distinguishes this element from others created by Fraeijs de Veubeke. (15.39) Comparing with K = (Ah) B E B we see that e T −1 B = T−1 e BTd . Collecting these in matrix form:  = 1 2 3   = d  1 0 0 −1/L 3 0 1/L 2 0 −1/L 1 0 0 0 0 1/L 3 0 −1/L 2 0  d2  1/L 1   d3    = B d. (15.4. 15–14 .3. In the FEM terminology introduced in Chapter 6. (15. (15. 3} and the connection nodes {4.11.35)  0 d1 0   d2    0    d3  = T−1 d d. 2. As illustrated in Figure 15.41) The quickest way to formulate the stiffness matrix of this element is to relate 15.38) The Cartesian stiffness matrix is Ke = TdT Kn Td . 6} no longer coincide. renamed for convenience as ueT = [ u x1 5 u y1 u x2 u y2 u x3 u y3 ]T . 5. En = TeT E Te . including the 6-node plane stress comforming triangle.36) The natural strains are evidently given by the relations 1 = (d6 − d3 )/L 1 . 2 = (d2 − d5 )/L 2 and 3 = (d4 − d1 )/L 3 .37) d5 d6 §15. They are related to the Cartesian node displacements by d  1 c 3  d2   c2  d3   0   d=  d4  =  0    d5 d6 The inverse relation is u  x1  u y1   u x2  1  u=  u y2  = 2A   u x3 u y3 0 0 L y 3 31  L 3 x13  0   0  0 0 L 2 y21 L 2 x12 0 0 0 0 s3 s2 0 0 0 0 0 0 c1 c3 0 0 0 0 L 1 y12 L 1 x21 0 0 0 0 s1 s3 0 0  0 0 0 0 c2 c1 0 0 L 3 y32 L 3 x23 0 0  0 u x1 0   u y1    0   u x2  = Td u. 5. The node displacement vector collects the freedoms shown in Figure 15.5. 0  d4    0 (15. 0   d4    L 1 y13 d5 L 1 x31 d6 (15. (15. the geometric nodes {1.11(b): ue = [ u x4 u y4 u x5 u y5 u x6 u y6 ]T . See Notes and Bibliography for the original derivation from an equilibrium field. 2.40) *The Veubeke Equilibrium Triangle The Veubeke equilibrium triangle5 differs from the Turner triangle in the degree-of-freedom configuration. 0   u y2    s2 u x3 s1 u y3 0 0 0 0 L 2 y23 L 2 x32  (15. those are moved to the midpoints {4. *The Natural Stiffness Matrix The natural stiffness matrix for constant thickness h is Ken = (Ah) BT En B . 6} while the corner nodes {1. B = T e B Td .41 to the node displacements of the Turner triangle.   0 −1 0 1 0 u x4 1 0 −1 0 1   u y4    0 1 0 −1 0    u x5  . (c) element patch showing how triangles are connected at the midpoints. §15.45) §15. etc.11. (15. 1 0 1 0 −1   u y5    u x3 u x6 −1 0 1 0 1 0 u y3 u y6 0 −1 0 1 0 1 (15. (b) degreeof-freedom configuration.17) as BT .y3) 5 5 ux5 u y6 6 6 2 (x2 .y1) x Figure 15. *Stiffness Matrix The element stiffness matrix is given by the general formula (14.5. u y4 = 12 (u y1 + u y2 ).44) Renaming the Turner triangle strain-displacement matrix of (15. *Kinematic Relations The node freedom vectors 15. 15–15 (15. For constant plate thickness h one obtains the closed form y 21 h Ke = A h BT E B = A  0  y32   0  y13 0 0 x12 0 x23 0 x31  x12   y21   E 11 E 12 E 13 y21 0 y32 0 y13 0  x23  E 12 E 22 E 23 0 x12 0 x23 0 x31 . The shape functions are 0 u x1 0   u y1    0   u x2  .5 *THE VEUBEKE EQUILIBRIUM TRIANGLE (a) (b) 3 (x3 . y32   E 13 E 23 E 33 x12 y21 x23 y32 x31 y13 x31 y13 The computation of consistent body forces is left as an Exercise. N6 = ζ1 − ζ2 + ζ3 .§15.2.43) −1 e u .23).5.46) . Expressing those links in matrix form gives u  1 0  u y4  0 1  u x5  1  0 0  =   u y5  2  0 0    x4 u x6 u y6 1 0 1 0 1 0 0 0 1 0 0 1 0 1 0 0 0 0 1 0 1 0   u   1  u y1   0  u x2   1  =  u y2   0    In compact form: ue = TV T ueT and ueT = TT V N4 = ζ1 + ζ2 − ζ3 .42 are easily related since by linear interpolation along the sides one obviously has u x4 = 12 (u x1 + u x2 ). with TV T = TT V .y2) (c) uy5 ux6 uy4 y 4 ux4 4 1 (x 1 . the corresponding matrix that relates e = B ue in the Veubeke equilibrium triangle becomes  B = BT TT V 1 = A y21 0 x12 0 x12 y21 y32 0 x23 0 x23 y32 y13 0 x31 0 x31 y13  (15.1. 1   u y2    u x3 0 u y3 1 x1 N5 = −ζ1 + ζ2 + ζ3 . The Veubeke equilibrium triangle: (a) geometric definition.41 and 15. y3-y2. For simplicity the macroelements are of rectangular shape. {{x1. one is spurious.{ 3.y21. §15.12.318.Ke}.13.h_.y13}={x1-x2.x23.8.2 } }.Te. Print["eigs of Ke=". assemblies are prone to the appearance of spurious mechanisms.1. 82. Be={{y21. Emat=8*{{8. 0. 0.y1}.13. Ke=Trig3VeubekeMembraneStiffness[ncoor.0. It is easily 15–16 .12.{x3.Be=N[Be]]. Type I macroelement is built with two triangles. §15. ncoor={{0.Emat.2}}. Return[Ke]].0.y1-y3}. Figure 15. The eigenvalue analysis of the assembled stiffness K is given as an Exercise.14. The results are shown at the bottom of Figure 15.A.x23.x31.3. These will be illustrated by studying the three macroelements pictured in Figure 15. and unit thickness.1}.0.0. This module is exercised by the statements listed at the top of Figure 15.x2-x3. A=Simplify[(x2*y3-x3*y2+(x3*y1-x1*y3)+(x1*y2-x2*y1))/2]. {x12.{2.y21.y2-y1. *Implementation The implementation of the Veubeke equilibrium triangle as a Mathematica module that returns Ke is shown in Figure 15.x31.3. which form a triangle with corner coordinates { { 0.x23.13. others zero.y32.3}}.x12.y1. five connection nodes: 5–9.x23.6. If [numer. This is the same triangle used to test module Trig3TurnerMembraneStiffness in §15. E 33 = 24.. and 10 degrees of freedom. kinematic modes that produce no strain energy although they are not rigid body modes.Emat. {x12.y2}. {0. Ke= 140 − 60 −4 − 28 − 136 88 − 60 300 − 12 − 84 72 − 216 −4 − 12 44 20 − 40 −8 − 28 − 84 20 44 8 40 − 136 72 − 40 8 176 − 80 88 − 216 −8 40 − 80 176 eigs of Ke={557. It needs only 8 lines of code.x3-x1.{ 2.False]. That is. and outputs.0}.Be.0}.47) The arguments have the same meaning as those of the module Trig3TurnerMembraneStiffness described in §15.5.h.y21.y13}}/A.y32. Since there are 3 rigid body modes in 2D.12.Ke//MatrixForm].Section 15: THREE-NODE PLANE STRESS TRIANGLES Trig3VeubekeMembraneStiffness[ncoor_. Print["Ke=".0 }.y32.5. It shows that K has 4 zero eigenvalues. Implementation of Veubeke equilibrium triangle stiffness matrix as a Mathematica module.4.0.x2. 0} Figure 15.Chop[Eigenvalues[N[Ke]]]]. but the conclusions apply to more general geometries. Ke=A*h*Transpose[Be].0}. 240.Emat_.y13. (15. Note that the element is rank sufficient.Be.numer].{3. isotropic material matrix with E 11 = E 22 = 64.x3.{2.Emat.x31.x12.y32.numer_]:=Module[{ x1.y13. It is invoked as Ke=Trig3VeubekeMembraneStiffness[ncoor.0}.y3. It has four geometric nodes: 1–4.{0. E 12 = 16.1 }.y2. Test statements to exercise the module of Figure 15.6816.x31}.3.6.y3}}=ncoor.2.{x2. *Spurious Kinematic Modes Although an individual Veubeke equilibrium triangle is rank sufficient. This correspond to the triangles rotating about the midpoints 6–9 as pivots. 15–17 . Type II macroelement is built with four crisscrossed triangles of thickness h/2 as illustrated in the Figure. but acquires importance in applications where flux conservation is important. The eigenvalue analysis of the assembled stiffness K is given as an Exercise. they should be considered as two separate nodes. the triangle can be arbitrarily way off under unhappy combinations of loads. This is understandable since stresses within the element. *Shear Locking in Turner Triangles A well known deficiency of the 3-node Turner triangle is inability to follow rapidly varying stress fields. is prone to spurious pivot modes where sides of adjacent triangles rotate relatively from each other about the midpoint connector. there is no guarantee that spurious pivot modes will not occur when those mesh units are connected.14 can be constructed. These examples show that this element. (Note that although 9 and 10 occupy the same location for this geometry. For this reason this element is rarely used in DSM-based structural programs. Red-filled and white-filled circles mark geometric and connection nodes.6 *SHEAR LOCKING IN TURNER TRIANGLES 7 4 Type I Type II Type III 8 6 9 1 5 4 7 8 3 Thickness h/2 4 3 1 5 2 4 8 3 5 12 7 11 6 2 9 1 13 10 9 2 6 9 Spurious mode: + 7 8 10 1 5 6 7 4 3 3 9. Three macroelement assemblies fabricated with Veubeke equilibrium triangles to investigate spurious kinematic modes. But its 1D counterpart: the 2-node bar element. are constant. It has four geometric nodes: 1–4. and 16 degrees of freedom. and 12 degrees of freedom. six connection nodes: 5–10. and there is only one. Even if a rank sufficiently macroelement mesh unit such as Type II of Figure 15. It has five geometric nodes: 1–5. as pictured to the right of the macroelement. This is a consequence of the element being nonconforming: full determination of linearly varying side displacements requires two nodes over that side. It shows that K has 3 zero eigenvalues and therefore this macroelement has no spurious modes. is nodally exact for displacements under some mild assumptions stated in Chapter 11. when used in a stiffness code. and correctly solves loaded-at-joints trusses with one element per member. respectively.) The eigenvalue analysis of the assembled stiffness K is given as an Exercise.10 = 6 8 1 2 2 5 8 Spurious mode: 7 9 6 Figure 15.6. §15.§15. On the other hand. It shows that K has 4 zero eigenvalues and consequently one spurious mode.14. for uniform material properties. eight connection nodes: 6–13. Type III macroelement is of Union-Jack type and is built with 4 triangles. geometry and meshing. shown that the spurious mode corresponds to the relative rotation of the two triangles with center node 9 as pivot. as pictured to the right of the macroelement. Test results can be summarized by one number: the energy ratio. 15–18 . 3-4-2. which gives a scalar measure of relative stiffness. In the latter θa = κa is the relative rotation of two cross sections separated by a. as illustrated in Figure 15. Formed by overlaying triangles 1-2-4. The rectangle aspect ratio is γ = a/b. 6 The deterioration can be even more pronounced for its spatial counterpart: the 4-node tetrahedron element. Two types are considered here: Crisscrossed (CC). The rectangle response under in-plane bending is compared to that of a Bernoulli-Euler beam segment. A Bernoulli-Euler plane beam of thin rectangular cross-section of height b and thickness h is bent under applied end moments M. 3-4-5. To study the bending performance of triangles the beam is modeled with one layer of identical rectangular macroelements dimensioned a ×b and made up of triangles.1.15. To characterize shear locking quantitatively it is convenient to use macroelements in which triangles are combined to form a 4-node rectangle. What happens in going from 1D to 2D? New effects emerge. 2-3-5. Union-Jack (UJ).6. The response ratio of macroelement to beam is a good measure of triangle performance under bending. because shear effects are even more important in three dimensions. notably shear energy and inplane bending. This simplifies repetition to form regular meshes. §15. The exact energy taken by a beam segment of length a is Ubeam = 12 Mκa = 6M 2 a/(Eb3 h) = 241 Eb3 hκ 2 a = 241 Eb3 hθa2 /a. . Such benchmarks are technically called higher order patch tests. The bending test with two macroelement types. y M h 5 3 Type II: Union-Jack 2 Figure 15. All rectangles undergo the same deformations and thus it is enough to study a individual macroelement 1-2-3-4. Formed by placing a fifth node at the center and dividing the rectangle into 4 triangles: 1-2-5. each with thickness h/2.15. These two can combine to produce shear locking: elongated triangles can become extraordinarily stiff under inplane bending because of spurious shear energy.Section 15: THREE-NODE PLANE STRESS TRIANGLES M 4 y z 3 z b = a/γ 1 x 4 Type I: Crisscrossed 1 Thickness h/2 34 a 3 + 2 1 2 1 b Cross section 2 4 . The associated curvature is κ = M/(E Izz ) = 12M/(Eb3 h).15.6 The bad news for engineers is that wrong answers caused by locking are non-conservative: deflections and stresses can be so grossly underestimated that safety margins are overwhelmed. Using 4 triangles instead of 2 makes the macroelement geometrically and physically symmetric since 2 triangles are attached to each corner. *The Inplane Bending Test The test is defined in Figure 15. By construction this element is also geometrically and physically symmetric. 2-3-1 and 4-1-2. Except for possible end effects the exact solution of the beam problem (from both the theory-of-elasticity and beam-theory standpoints) is a constant bending moment M(x) = M along the span. It is well known that the latter is exact under constant moment. 4-1-5. The beam is fabricated of isotropic material with elastic modulus E and Poisson’s ratio ν. 2}.2.{0.17.2*n2-1. Print["KM=".m<=2. Bending a macroelement by applying a relative edge rotation. encoor={nc[[n1]].b}.{nF}. K[[ii.b}.0}.1. If [mtype=="CC". enCC={{1.{γ . Ke=Trig3TurnerMembraneStiffness[encoor. Because of symmetries. are 3 rCC = 3 + γ 2 . For [m=1. mtype={"CC".7 macroelement edges can rotate since constituent triangles can expand or contract.17. ].e<=4.0}.0.0}}/2. h and θa .5}.e++.b. ν. the rotations of sides 1-2 and 3-4 are −θa /2 and θa /2.16.{a.0.{0. and the 2D model is said to be overstiff.2*n1.1}. Emat=Em*{{1.{nF}]. 2 rU J = 3(1 + γ 2 )2 .49) . u M = 14 bθa [ −1 0 1 0 −1 0 1 0 ]T (15.i++.Emat. Figure 15. computed with the script of Figure 15. Although triangles cannot copy curvatures pointwise.5}}. enl=enCC[[e]].10}[[m]].2.2*n3}.-1.{0.f}= Simplify[CondenseLastFreedom[K. as illustrated in Figure 15.3}}.2.16. {n1.nc[[n3]]}. a.{3. nF={8.jj]]+=Ke[[i. b = a/γ P θa/2 3 P 1 2 a P Figure 15. Ubeam=Simplify[(1/2)*Em*Iz*θa^2/a].{3. The resultant bending moment is M = Pb."UJ"}[[m]]. rM=Simplify[UM/Ubeam].3.8 ClearAll[a. r[[m]]=rM.2*n2.i<=6.48) The internal energy taken by a macroelement of 8 × 8 stiffness K M under (15.f}=Simplify[CondenseLastFreedom[K.4}. Plot[Evaluate[r]. If r M > 1 the macroelement is stiffer than the beam because it take more energy to bend it to conform to the same edge rotations.10}].{a. The ratio r M = U M /Ubeam is called the energy ratio. If [mtype=="CC".2*n3-1.n2.j++.{4.{4.1. To test performance we apply four alternating corner loads as shown in Figure 15.KM. K=Table[0. If [mtype=="UJ". *Energy Ratios The assembled macroelement stiffnesses are KCC and KU+ J .1/2}}. enUJ={{1.-b}.15. which can be expressed as a function of E. uM={1.f]]. ht=h.48) is U M = 12 uTM K M u M .{2. b=a/γ . For [j=1.6.False]. {KM. For [e=1. but this value is not needed to compute energy ratios.3. respectively. ].{-a. Print["rM=".ht. For [i=1. f=Table[0.§15. Assemble these into a node displacement 8-vector u M .j<=6.-b}.6 *SHEAR LOCKING IN TURNER TRIANGLES −θa/2 P 4 §15.Em.16.1.n3}=enl.4. UM=uM. eft={2*n1-1.uM/2. Results for zero Poisson’s ratio.{2.f]]].0.rM].-1.nc[[n2]]. Iz=h*b^3/12. b. 15–19 (15.0. KM=K=Simplify[K].KM//MatrixForm]. jj=eft[[j]]. 8 The load P could be recovered via K M u M .5}.0}*θa*b/4. ht=h/2]. of orders 8 × 8 and 10 × 10.h. ii=eft[[i]].{nF}].0.5}.j]] ]]. {K.0. enl=enUJ[[e]]].1. 2 + 4γ 2 7 That is the reason why they can be so stiff under bending. For the latter the internal node 5 is statically condensed producing an 8 × 8 stiffness KU . r={0. Script to compute energy ratios for the two macroelements of Figure 15. nc={{-a. The corresponding corner x displacements are ±bθa /4 whereas the y displacements are zero.4.γ ].m++.0}. to which 3 rigid-body modes are added as integration constants. [758]. To get within 1% of the exact solution.3. This A is the B of (15. r (4) = (7+r (1) )/8. so in the end the stiffness matrix (for constant plate thickness) turns out to be the same as (15. Because of its geometric flexibility. al.21). For the Union-Jack configuration rU J = 10201/134 = 76. The effect of a nonzero Poisson’s ratio is studied in Exercise 15. r (2n) → 1. More precisely: the element. This is integrated to get a deformation-displacement field.50) where r (1) is the ratio (15. The elegant derivation in triangular coordinates was popularized by Argyris [27].17) times 2A.6. but convergence can be slow. r (2n) = 1 for all n ≥ 1. through energy principles. although it is mentioned in [136. This is satisfed if n ≥ 5. and the stiffness matrix follows on eliminating σ and e: K = LEA. If r (1) = 1.13.49) for one layer. collected in array σ.Section 15: THREE-NODE PLANE STRESS TRIANGLES If for example γ = a/b = 10. rCC = 4.15 is divided into an infinite number of macroelements along x the solution will not converge. who gave the method its name in [136]. The equivalence of the two forms. rCC = 153 and the crisscrossed macroelement is 153 times stiffer than the beam. Arbitrary quadrilaterals were formed by assembling triangles as macroelements. had been noted by Gallagher [288]. u y = c4 x + c5 y + c6 . rCC → 3 and rU J → 1. Early displacement derivations typically started from linear polynomials in Cartesian coordinates. about twice better but still way overstiff. The same approach is used by Clough in a widely disseminated 1965 article [138]. 15–20 . The target application was modeling of delta wing skin panels. Evaluating at the nodes produces e = Au. the element was soon adopted in aircraft structural analysis codes in the late 1950’s.5 and rU J = 2: overstiff but not dramatically so. *Convergence as Mesh is Refined Note that if γ = a/b → 0.800]. Notes and Bibliography As a plane stress structural element. 22n 22n (15. So even if the beam of Figure 15. Lumping the stress field to the nodes gives the node forces: f = Lσ. If 2n (n ≥ 1) identical macroelement layers are placed along the beam height while γ is kept fixed.5/22n < 1. the Turner triangle was first developed in the 1956 paper by Turner et. which have to be eventually eliminated in favor of node displacements. 1000 macroelements or 4000 triangles are needed for this simple problem. The stress accuracy of triangles is examined in Chapter 28. If n → ∞. Even for this simple element the approach is unnecessarily complicated and leads to long hand computations. meaning 10 layers of elements along y. is put under three constant stress states: σx x . For example. §15. For example Przemieniecki [596] begins with u x = c1 x + c2 y + c3 . The derivation from assumed displacements evolved later. which is an elongated rectangular shape of 10:1 aspect ratio. For constant thickness and material properties it happens that L = V AT and so K = V AT EA happily turned out to be symmetric. If n = 1 (two layers). It was based on assumed stress modes. It moved to Civil Engineering applications through the research and teaching at Berkeley of Ray Clough. The derivation method of [758] would look unfamiliar to present FEM practicioners used to the displacement method.51) Here the ci play the role of generalized coordinates. It is not clear who worked it out first.5. r (2) = (3+r (1) )/4 and if n = 2 (four layers). the energy ratio becomes r (2n) = 22n − 1 + r (1) r (1) − 1 = 1 + . referred to a local Cartesian system {x. It is necessary to subdivide also along the height. If the beam span is 10 times the height. (15. The strain field computed from stresses is e = E−1 σ. 1 + 3.10. so bending exactness is maintained as expected. σ yy and σx y . suppose that γ = 1 (unit aspect ratio a = b) and that r (1) = rCC = 4. y}.5. If γ = 1. which is exactly solvable by one beam element.01. It has importance. §3. For the Turner triangle it provides nothing new aside of fancy terminology. Venant’s torsion. Triangles possess many fascinating geometric properties studied even before Euclid.2 is a specialization case of a general proof developed by Irons in the mid 1960s (see [397. What is fundamentally different in Fraeijs de Veubeke’s derivation is the use of energy theorems (in this case. The Veubeke equilibrium triangle appears in [274. References Referenced items have been moved to Appendix R. in the form of solved exercises. the stress field inside the triangle is assumed to be σx x = β1 .9 The direct displacement derivation given here as a “Turner triangle mapping” is new. that is. PVW) to pass from generalized edge loads to mean edge displacements. however.) Stress parameters can be uniquely expressed in terms of generalized edge loads. 170] and is further elaborated in [275. The approach is characteristic of FEM Generation 2. however.26) was first derived. As noted in Chapter 1. As an expression for integrands expressed in triangular coordinates it was first stated in [203].” the first one-sided 3D surface in mathematics.1. It is unclear when the monomial integration formula (15. since as noted above the derivation in [758] was not based on displacement interpolation. It is constructed there as an equilibrium element. σ yy = β2 and σx y = β3 . What are here called triangular coordinates were introduced by M¨obius in his 1827 book [495]. p. The check works because the Turner triangle is isoparametric. this element is rarely used in structural mechanics because of the danger of spurious kinematic modes discussed in §15. He is better remembered for the “M¨obius strip” or “M¨obius band. The completeness check worked out in §15. References The idea of using piecewise linear interpolation over a triangular mesh actually precedes [758] by 13 years. which turn out to be virtual-work conjugate to midside displacements. As previously noted.5. where {β1 . 15–21 .4.§15.6 were introduced in [87] as a way to tune up the stiffness of Free-Formulation elements. where it is applied to a Poisson’s equation modeling St. p. 9 10 The initial step of assuming stresses exactly mimics that of [758] a decade earlier. An exhaustive development can be found. 176]. The idea did not influence early work in FEM. β2 . Other names are listed in Table 15. it appears in an article by Courant [153]. (A field of constant stresses satisfies identically the plane-stress differential equilibrium equations for zero body forces. in some non-structural applications. in [684].4 is patterned after that developed for the so-called ANDES (Assumed Natural Deviatoric Strain) elements [492].4.10 They are often called barycentric coordinates on account on the interpretation discussed in [155]. β3 } are stress parameters. Energy ratios of the form used in §15. The natural strain derivation of §15.9] and references therein) for general isoparametric elements. uy3. 3 qy2 2 (E15.uy2.1). bx = 0. h 2 and h 3 are the thicknesses at the corner nodes.fe]. and show that since the contribution of sides 2-3 and 3-1 to the line integral vanish.  W e = (ue )T fe = 1 q x1 q x = q x1 (1−ζ 2 ) + q x2 ζ 2 x Figure E15.uy2. fe=Simplify[fe]. (Labor-saving hint: don’t bother repeating exponent permutations.L12]. is subject to a linearly varying boundary force q = h ˆt such that qx = qx1 ζ1 + qx2 ζ2 = qx1 (1 − ζ2 ) + qx2 ζ2 .uy1. ζ3 ) = h 1 ζ1 + h 2 ζ2 + h 3 ζ3 . The following Mathematica script solves this Exercise.21) but with h replaced by the mean thickness h m = (h 1 + h 2 + h 3 )/3. for example i = 2. Line force on triangle side 1–2 for Exercise 15. We=Simplify[L12*Integrate[qx*ux+qy*uy. and i. beginning with i = j = k = 0. Hence one needs to tabulate only cases in which i ≥ j ≥ k). EXERCISE 15.26). EXERCISE 15. in which ˆt is replaced by q/ h. integrate and identify with the inner product shown as the second term in (E15. (E15. Procedural Hint. If you decide to use it.6}]. uy=uy1*(1-z2)+uy2*z2. qx=qx1*(1-z2)+qx2*z2.Section 15: THREE-NODE PLANE STRESS TRIANGLES Homework Exercises for Chapter 15 The Linear Plane Stress Triangle EXERCISE 15. Show that the element stiffness matrix is still given by (15. fe=Table[Coefficient[We. EXERCISE 15. Replace u x (ζ2 ) = u x1 (1 − ζ2 ) + u x2 ζ2 .3) 0 where L 21 is the length of side 1–2.  1 uT q d e = e qx2 y qy1 This “ line boundary force” q has dimension of force per unit of side length.ux2.2 [A:20] The exact integrals of triangle-coordinate monomials over a straight-sided triangle are given by the formula (15.ux3.{i. qx and q y .4.20) and (15. if the element thickness varies as per (E15. k = 0 and i = 1.0. Hint: use (15. For area integrals use (15.ux2. 15–22 .1. q y = q y1 (1−ζ 2 ) + q y2 ζ 2 uT q L 21 dζ2 .3). Note. ux=ux1*(1-z2)+ux2*z2. Check that for h 1 = h 2 = h 3 = h and b y1 = b y2 = b y3 = b y you recover (15.1. f x3 = f y3 = 0.4 [A/C:20] Derive the formula for the consistent force vector fe of a Turner triangle of constant thickness h. k = 0 are permutations of the same thing. j and k such that i + j + k ≤ 3. Use the last term of the line integral (14. j and k are nonnegative integers. explain the logic.uy3}[[i]]]. and b y = b y1 ζ1 + b y2 ζ2 + b y3 ζ3 . j = 1. Tabulate the right-hand side for combinations of exponents i. ζ2 = 1 − ζ1 ).1}]].ux3.3 [A/C:20] Compute the consistent node force vector fe for body loads over a Turner triangle. ClearAll[ux1.{ux1.z2.1 [A:15] Assume that the 3-node plane stress triangle has variable thickness defined over the element by the linear interpolation formula h(ζ1 . Partial result: f x1 = L 21 (2qx1 +qx2 )/6.25). Remember that 0! = 1.2) q y = q y1 ζ1 + q y2 ζ2 = q y1 (1 − ζ2 ) + q y2 ζ2 . Partial result: f y1 = (A/60)[b y1 (6h 1 + 2h 2 + 2h 3 ) + b y2 (2h 1 + 2h 2 + h 3 ) + b y3 (2h 1 + h 2 + 2h 3 )].26).21). qy=qy1*(1-z2)+qy2*z2. where A denotes the area of the triangle. if side 1–2 (ζ3 = 0.{z2.1) where h 1 . (E15. j = 2.26).uy1. ζ2 . Print["fe=". likewise for u y . 1 and k = 3. y2 }.6 [A+C:15] Show that the sum of the rows (and columns) 1. 3.5) (The indicated inverse exists if T has positive area. Figure E15. Answer for H3 : ζ1 = 12 + (L 213 − L 232 )/(2L 221 ). h P3 } are called the trilinear coordinates of a point P with respect to the vertices of the triangle. ζ2P . where L ji is the length of side that joins corners i and j.5 [C+N:15] Compute the entries of Ke for the following plane stress triangle: x1 = 0. as assumed. y1 = 0. where A is the area of the triangle assumed positive and L ji is the length of side that joins corners i and j. A point P in T has Cartesian coordinates { x. ζ2 .4) h = 1.2. ζ3 ) represent a polynomial expression in the natural coordinates. y3 } } and those of T 2 are { { x1∗ . find the equations of the altitudes in triangular coordinates. in which L ji denotes the length of the side that joins corners i and j and h i is the distance from corner i to the opposite side. x2 = 3. y1∗ }. Once these are obtained. This may be done by hand (it is a good exercise in matrix multiplication) or (more quickly) using the script of Figure 15.3. Check it with the foregoing script. A point P ∗ in T ∗ has Cartesian coordinates { x ∗ . EXERCISE 15.  E= 100 25 0 25 100 0 0 0 50  . EXERCISE 15. Consider two triangles T and T ∗ . Let point P have triangular coordinates {ζ1P .6) .{ x2∗ . EXERCISE 15. ζ2 . y } are connected by the affine transformation  1 x∗ y∗   = 1 x1∗ y1∗ 1 x2∗ y2∗ 1 x3∗ y3∗  1 x1 y1 1 x2 y2 1 x3 y3 −1   1 x y (E15. (E15. Distances of arbitrary point P to three triangle sides. and the triangular coordinates of points P1 . The corner coordinates of T 1 are { { x1 . y ∗ } and the same triangular coordinates. and explain why. Show that { x ∗ .2. cf. h P2 .ζP2 .{ x3 . cf.75. ζ3P }.10 [A:20] Find the triangular coordinates of the altitude feet points H1 .7 [A:10]. as illustrated in Figure E15. both with positive area. EXERCISE 15. y } and triangular coordinates { ζ1 .{ x2 .2. y1 }. j = 2. for i = 1. 3 and 5 of Ke as well as the sum of rows (and columns) 2. Find the distances h P1 . ζ2 . They are essentially scaled versions of the triangular coordinates.) Show that h Pi = ζ Pi h i = 2ζ Pi A/L k j .2. y2∗ }. h P2 and h P3 of P to the three triangle sides. K 66 = 118.8 [A:15]. 3. Partial result: K 11 = 18. 23 A/L 32 and 23 A/L 13 . 2. H2 and H3 pictured in Figure 15. They were introduced by Pl¨ucker in 1835. Figure E15. Answer: 23 A/L 21 . Hint: the area of each subtriangle subtended by the centroid and two corners is 13 A.Exercises EXERCISE 15. y2 = 1.75. 2.ζP3 ) hP3 1 2 P3 L 21 Figure E15. The integral  p(ζ1 . y3 = 2.11 [C+D:20] Let p(ζ1 . (Note: the distances {h P1 . EXERCISE 15. and the coordinates of the orthocenter H .{ x3∗ . ζ3 }. y ∗ } and { x. ζ3 ) d e 15–23 (E15.9 [A:10]. Express the distances from the triangle centroid to the 3 sides in term of the triangle area and the side lengths. y3∗ } }. 4 and 6 must vanish. 1.5.2.) EXERCISE 15. as shown in Figure E15. x3 = 2.) 3 (a) h3 P1 P2 hP2 hP1 P(ζP1. P2 and P3 shown in the Figure (Pi is projection on the side opposite to corner i. { z1.tcoord_. {C1.z2.1. if p=16+5*b*z2^2+z1^3+z2*z3*(z2+z3) the call int=IntegrateOverTriangle[p.6) run the script of Figure 15.j].0.C3}. C3=Coefficient[f.z2. Discuss the result. For [k=0.z3.A_.repζ 0.ζ 3_}]:=Module[ {f.3.z2.14.j.repζ 0. Return[f]]. A is the triangle area and max the highest exponent appearing in a triangular coordinate. EXERCISE 15. repζ 0={ζ 1->0. expressed in triangular coordinates.k].ζ 2.{ζ 1. f=Simplify[f-C0(1-ζ 1-ζ 2-ζ 3)].{ z1.ζ 3->0}.repζ 0. Two Mathematica modules that homogenize linear and quadratic polynomials expressed in triaangular coordinates. f=HomogenizedLinTrigCoorFunction[expr. C1=Coefficient[f.z3 }. p=Expand[expr].A. respectively.13 [A/C:25] Verify the conclusions of §15. Then extend it to account for isotropic material with arbitrary Poisson’s ratio ν.3 homogenize linear and quadratic polynomials.14 [C+D:25] To find whether shear is the guilty party in the poor performance of elongated triangles (as alledged in §15.j++. Explain their logic.ζ 1]/. For [i=0.k++.z2.{ 0.15 [C:15] The two Mathematica modules listed in Figure E15. Return[f]]. Figure E15.max]. ]]]. Explain how the module works. This is referenced as int=IntegrateOverTriangle[p.s=0}. Can Em be subsequently reduced to a smaller (fictitious) value so that r ≡ 1 for all aspect ratios γ ? Is this practical? HomogenizedLinTrigCoorFunction[expr_.0 } } in the third line. z1.ζ 2->0.C3}].Section 15: THREE-NODE PLANE STRESS TRIANGLES over a straight-sided triangle can be computed symbolically by the following Mathematica module: IntegrateOverTriangle[expr_. C0=Simplify[f/. Obtain the macroelement energy ratios as functions of γ and ν.{ζ 1_.ζ 3}].C2.C2.max_]:=Module [{p.j<=max. For [j=0.i]. The module name returns the integral.C0}.z1. f=Simplify[Expand[f-(C1*ζ 1+C2*ζ 2+C3*ζ 3)(1-ζ 1-ζ 2-ζ 3)]].ζ 2->0. EXERCISE 15.4 as regards rank sufficiency or deficiency of the three Veubeke macroelement assemblies pictured in Figure 15.z1.C1. c=Coefficient[Coefficient[Coefficient[p.i++.C3}=Simplify[{C1.0. constant thickness h. s+=2*c*(i!*j!*k!)/((i+j+k+2)!). elastic modulus E and Poisson’s ratio 0.z2. Discuss whether the effect of a nonzero ν makes much of a difference if γ >> 1.ζ 2_.i<=max.17 with a zero shear modulus.z3 }. 15–24 .k<=max.ζ 3_}]:=Module[ {f=expr. Here p is the polynomial to be integrated.z3.0 }.C0.ζ 2_.{ 0. For example.ζ 3->0}.{ζ 1_. HomogenizedQuadTrigCoorFunction[expr_.k.5. z2 and z3 denote the symbols used for the triangular coordinates. This can be done by setting Emat=Em*{ { 1.12 [C+D:25] Explain the logic of the script listed in Figure 15. EXERCISE 15.ζ 3]/. Return[Simplify[A*s]] ].z3}=tcoord. repζ 0={ζ 1->0. {z1.c.A.ζ 2]/.0 }.repζ 0.repζ 0.repζ 0].17. Carry out tests with rectangular macroelements dimensioned a × b. C2=Coefficient[f. EXERCISE 15.C2.3] returns int=A*(97+5*b)/6.i. .16 [C+D:25] Access the file Trig3PlaneStress. Prepare a hierarchical diagram of the modules.. with indentation to show dependence.17 [A:10] Consider the Veubeke triangle with 3 midside nodes 4..purpose of AAAA BBBB . Return this diagram as answer to the homework. 1 − 2ζ1 and 1 − 2ζ2 . (2) to get rid of unsightly messages and silly beeps about similar names.drives the FEM analysis GenerateNodes . run the cantilever beam problem.nb from the course Web site by clicking on the appropriate link in Chapter 15 Index.nb begins like Main program in Cell 8 . study the source.. and briefly explain the purpose of each module. Each cell is preceded by a short comment cell which outlines the purpose of the modules it holds. and BBBB calld DDDD. After you get a feel of how this code operate. Note which calls what.purpose of BBBB DDDD . Notes: (1) the plot-module cell may take a while to run through its tests.11 beginning with the main program of the last cell. respectively. Load into Mathematica.generates node coordinates of regular mesh GenerateTriangles .purpose of CCCC 15–25 .Exercises EXERCISE 15. Show that these functions satisfy the interpolation and completeness conditions. EXERCISE 15..generate element node lists of regular mesh . This is a Mathematica Notebook that does plane stress FEM analysis using the 3-node Turner triangle. Show that three possible shape functions are 1 − 2ζ3 . which is defined in the last input cell. Execute the top 7 input cells (which are actually initialization cells) so the necessary modules are compiled. 11 A hierarchical diagram is a list of modules and their purposes. those will be discussed in Part III. but fail the compatibility condition. be patient. similar to the table of contents of a book. 5 and 6. the hierarchical diagram may look like: AAAA . if module AAAA calls BBBB and CCCC.. Download the Notebook into your directory.. Hint: a hierarchical diagram for Trig3PlaneStress. For example. After you are satisfied everything works fine. You do not need to talk about the actual run and results.purpose of DDDD CCCC . initialize each cell twice. 2) and you are done. ζ22 ζ3 . Next. Entries 1. but you need to use the module listed under Exercise 15.3 (added October 19.11. 15–26 . you should process as follows. not quite. 4 and 6 become cubic polynomials in the ζi . Well. the expanded second entry becomes h 1 b y1 ζ 3 + h 1 b y2 ζ12 ζ2 + 7 more terms Next. scale this vector by h = h 1 ζ1 + h 2 ζ2 + h 3 ζ3 . the result can be obtained in milliseconds.b =  0  ζ3 0  0 ζ1    0 0  ζ2  b y1 ζ1 + b y2 ζ2 + b y3 ζ3  0 ζ3 to get a 6-vector. collect the common factor A. and so on for entries 4 and 6. outside the area integral. the total force on the element.3 and 5 are zero. whereas entries 2. ζ32 ζ2 . collect the ζi monomials that appear in entries 2. ζ23 . It is instructive to check your results for the special cases h 1 = h 2 = h 3 = h (constant thickness). For example. multiply NT by b: ζ 1 0  ζ2 NT . collect the h factors of the b yi as in (E15.. The 10 possible monomials are ζ13 . ζ33 .26) to the monomial integrals.3 and 5 remain zero. = A 30 A 60 Finally. which is then b y h A. and ζ1 ζ2 ζ3 . should divide equally in 3 for each node. Entry 2 is (b y1 ζ1 + b y2 ζ2 + b y3 ζ3 )ζ1 . ζ12 ζ2 . etc. 4 and 6.Section 15: THREE-NODE PLANE STRESS TRIANGLES Hint on Exercise 15. and b y1 = b y2 = b y3 = b y (constant body force). Three cases:   e  e ζ12 ζ2 ζ13  d = e  d = e ζ23 d = e  ζ12 ζ3 d = e  ζ1 ζ2 ζ3 = e ζ33 d = A 10 ζ22 ζ1 d = . and apply the formula (15. If both the thickness h and the body force b y are constant. First. For example. If you are good in Mathematica. . ζ22 ζ1 . . Move all monomial coefficients such as b y1 h 1 . 2011) If doing this Exercise by hand. the second entry is (h 1 ζ1 + h 2 ζ2 + h 3 ζ3 ) (b y1 ζ1 + b y2 ζ2 + b y3 ζ3 )ζ1 Expand these in term of cubic monomials. ζ32 ζ1 . Entries 1. This would agree with the element-by-element force lumping recipe of Section 7). ζ12 ζ3 . 16 The Isoparametric Representation 16–1 . . . . .1.2. . . . . . §16. . . . . . . . . . . . . . . . . . . .2. . . . Introduction Isoparametric Representation §16. Quadrilateral Elements §16. . .1. . . Motivation . . §16. . . . . . . . . §16. . . . . . .6. §16. The Biquadratic Quadrilateral . . . . . . . . . . . . . . . . . . . §16.4. . . . . Equalizing Geometry and Displacements . .3. . . .2. .6.1. .4. . . . .2. . .5. 16–2 .6. . . . . . . . . .3. . . .6.5.4. . . . . . . . References . . .Chapter 16: THE ISOPARAMETRIC REPRESENTATION TABLE OF CONTENTS Page §16. . §16. . §16.2. General Isoparametric Formulation Triangular Elements §16. . . . §16. . . . . §16. . . . §16. . §16. . . . . §16. . . . .3. . The Bilinear Quadrilateral . *The Cubic Triangle . . . . . . . .2.2. . Exercises . . . *Completeness for Higher Variational Index Iso-P Elements in One and Three Dimensions Notes and Bibliography . Completeness Checks . §16. . . .5. . The Quadratic Triangle . .1. . . . . . . . . . . . Completeness Properties of Iso-P Elements §16. . .7. . . .4. The Linear Triangle . . *Completeness Analysis . . .1. . . Quadrilateral Coordinates and Iso-P Mappings §16. . . . . . . . . . .5.3. 16–3 16–3 16–3 16–4 16–5 16–5 16–6 16–6 16–6 16–6 16–6 16–7 16–7 16–8 16–8 16–9 16–11 16–11 16–11 16–11 16–12 . §16. . §16. . . . . . . . . . . . . . Motivation The linear triangle presented in Chapter 115is an isoparametric element although was not originally derived as such. ζ 2 . 16–3 Triangular coordinates ζ1 . Integrals that appear in the expressions of the element stiffness matrix and consistent nodal force vector can no longer be evaluated in simple closed form. For the linear triangle. shape functions and triangular coordinates coalesce. y Displacement interpolation ux .2. in this case the displacement field. The interpretation of these equations is as follows. These relations are diagrammed in Figure 16.2.1). respectively. are applied to quadrilateral elements. ζ 3 Shape functions Ni(e) (16. These equations are reproduced here for convenience:      ζ1 1 1 1 1 (16. u y = u y1 N1e + u y2 N2e + u y3 N3e = u y1 ζ1 + u y2 ζ2 + u y3 ζ3 . which defines the primary variable. and (15. If we proceed to higher order triangular elements while keeping straight sides.1.1. In the next Chapter these techniques. These two obstacles can be overcome through the concepts of isoparametric elements and numerical quadrature. The displacement expansion (16.1) ζ2 . which defines the triangle geometry. Isoparametric Representation §16.2) Geometry 1. x = x1 x2 x3 y1 y2 y3 ζ3 y u x = u x1 N1e + u x2 N2e + u x3 N3e = u x1 ζ1 + u x2 ζ2 + u x3 ζ3 . x.1. uy Figure 16. Superparametric representation of triangular element. which are in turn expressed in terms of the triangular coordinates. The two key equations are (15. 2. In the present Chapter the concept of isoparametric representation is introduced for two dimensional elements. only the displacement expansion is refined whereas the geometry definition remains the same.2 ISOPARAMETRIC REPRESENTATION §16. §16. Evidently geometry and displacements are not treated equally. The construction of shape functions that satisfy consistency requirements for higher order elements with curved boundaries becomes increasingly complicated. Introduction The procedure used in Chapter 15to formulate the stiffness equations of the linear triangle can be formally extended to quadrilateral elements as well as higher order triangles.2) is defined by the shape functions. But one quickly encounters technical difficulties: 1. The triangular coordinates define the element geometry via (16.§16.16).10).1. This representation is illustrated on specific elements. combined with numerical integration. . Together they support a good portion of what is presently used in production finite element programs. The combination of these two ideas transformed the field of finite element methods in the late 1960s. uy Figure 16.” This generalization is illustrated in Figure 16.3. §16. Isoparametric representation of arbitrary two-dimensional elements: triangles or quadrilaterals.2. y. ζ 3 Displacement interpolation ux . if the second one is rewritten and adjoined to (16.1) do not look alike. x. uy Figure 16. a term that emphasizes that unequal treatment.Chapter 16: THE ISOPARAMETRIC REPRESENTATION Geometry 1.2. y Shape functions Ni(e) Triangular coordinates ζ1 . often abbreviated to iso-P element. Hence the name isoparametric element (“iso” means equal). expand the geometry list to {1. This property may be generalized to arbitrary elements by replacing the term “triangular coordinates” by the more general one “natural coordinates. which in structural mechanics are displacements. y Natural coordinates Shape functions Ni(e) Displacement interpolation ux . u y . For 3D elements.  u y3 N3e u y3 (16. z} and the displacements to {u x . u z }. however.3) This form emphasizes that geometry and displacements are given by the same parametric representation. Elements built according to the foregoing prescription are called superparametric. Isoparametric representation of triangular elements. Equalizing Geometry and Displacements On first inspection (16.3. x. x. as shown in Figure 16.1) to look as follows:   1 1  x   x1     y  =  y1    u x1 ux uy u y1  1 x2 y2 u x2 u y2   1 1   x3  ζ1  x1   y3  ζ2 =  y1   u y3 ζ3 u x1 u y3 u y1 1 x2 y2 u x2 u y2  1   x3  N1e  y3  N2e . Geometry 1. Their inherent similarity can be displayed.2. 16–4 .2) and (16. The key idea is to use the shape functions to represent both the element geometry and the problem unknowns.2. ζ 2 . The terms isoparametric and superparametric were introduced by Irons and coworkers at Swansea in 1966.       u x1 u x2 . Both sets exhibit the same interpolation in terms of the shape functions.§16.6) express the geometry definition. we take a look at specific 2D isoparametric elements that are commonly used in structural and non-structural applications. 16–5 ..4) i=1 Displacement interpolation: ux = n u xi Nie . . Remark 16. . .6) n The first three scalar equations in (16. .1. uy = i=1 n u yi Nie . . yn    y   y1   . xn  N1e  x   x1  N2     y2 . . u xn   . . i=1 x= n xi Nie . . (16. General Isoparametric Formulation The generalization of (16..7)  u x  =  u x1 u x2 . u xn ux uy u y1 u y2 . . . Two set of relations. . . xn    x   x1      .        u y   u y1 u y2 . suppose that the thickness h and a temperature field T are both interpolated from the n node values:     1 1 . . Geometric relations: 1= n Nie . 1 1  e x2 . natural coordinates (triangular coordinates for triangles. y= i=1 n yi Nie . .. The shape functions connect the geometry with the displacements.   y2 . There are also subparametric elements whose geometry is more refined than the displacement expansion. and the last two the displacement expansion.3) to an arbitrary two-dimensional element with n nodes is straightforward. Tn Note that the column of shape functions does not change. 1 1 N2e  x2 . See Notes and Bibliography at the end of this Chapter... are required.. . u yn Ne (16. . For example. . These are separated into triangles and quadrilaterals because different natural coordinates are used. (16. §16.4 TRIANGULAR ELEMENTS Under this generalization. To illustrate the use of the isoparametric concept. . yn    y  =  y1 . hn Nne T T1 T2 . quadrilateral coordinates for quadrilaterals) appear as parameters that define the shape functions.3. . .5) i=1 These two sets of equations may be combined in matrix form as   N1e     1 1 . . . one for the element geometry and the other for the element displacements.      (16. Note that additional rows may be added to this matrix expression if more variables are interpolated by the same shape functions. u yn      h h1 h2 . N6e = 4ζ3 ζ1 . (16. N3e = ζ3 (2ζ3 − 1).5. may be presented as an isoparametric element:     1 1 1 1   x2 x3  N1e  x   x1     (16. The shape functions are simply the triangular coordinates: N1e = ζ1 . The 6-node quadratic triangle: (a) the superparametric version.4. *The Cubic Triangle The cubic triangle has ten nodes.4. §16. studied in Chapter 15 and pictured in Figure 16. The Quadratic Triangle The six node triangle shown in Figure 16.4.5 is the next complete-polynomial member of the isoparametric triangle family. The isoparametric definition is  e     N1 1 1 1 1 1 1 1  Ne  2   x   x1 x2 x3 x4 x5 x6   N3e        y  =  y1 y2 y3 y4 y5 y6   N4e       ux u x1 u x2 u x3 u x4 u x5 u x6   N5e  uy u y1 u y2 u y3 u y4 u y5 u y6 N6e (16. N2e = ζ2 . (b) the isoparametric version. but form a curvilinear system as can be observed in Figure 16.Chapter 16: THE ISOPARAMETRIC REPRESENTATION §16. (16.  y  =  y1     ux u x1 u x2 u x3 N3e uy u y1 u y2 u y3 3 2 1 Figure 16. N5e = 4ζ2 ζ3 . This shape functions of this element are the subject of an Exercise in Chapter 18. The shape functions are N1e = ζ1 (2ζ1 − 1).4. with straight sides and midside nodes at midpoints. The triangular coordinates for a curved triangle are no longer straight lines. N2e = ζ2 (2ζ2 − 1). N3e = ζ3 . 16–6 .5(b). The 3-node linear triangle.10) (a) (b) 3 3 5 5 6 6 2 2 4 4 1 1 Figure 16.3.2.4.9) The linear triangle is the only triangular element that is both superparametric and isoparametric.8) y2 y3  N2e . The implementation is studied in Chapter 24. Triangular Elements §16.11) The element may have parabolically curved sides defined by the location of the midnodes 4. 5 and 6. N4e = 4ζ1 ζ2 .4. The Linear Triangle The three-noded linear triangle. §16.1. we must introduce the appropriate η=1 natural coordinate system for that geometry. This is called the reference plane. An important application of this mapping is discussed in §16. Quadrilateral Elements §16. but are not linear polynomials as in the case of the three-node triangle. In some FEM derivations it is convenient to visualize the quadrilateral coordinates plotted as Cartesian coordinates in the {ξ. η §16.12) 4 η=1 ξ=1 ξ=−1 1 3 η=−1 ξ 2 Figure 16.4). which are η=−1 illustrated in Figure 16. This particular variation range (instead of taking. is called the isoparametric mapping.§16. 1]. η η=1 ξ=1 ξ ξ ξ=−1 ξ=1 η=−1 Figure 16. Remark 16. It is defined by    1 1  x   x1     y  =  y1    ux u x1 uy u y1 1 x2 y2 u x2 u y2 1 x3 y3 u x3 u y3  1  e N1 x4    Ne  y4   2e  . A similar version exists for triangles. 16–7 . η} and {x. 0 to 1) was chosen by Irons and coworkers to facilitate use of the standard Gauss integration formulas. say. The transformation between {ξ. N2e = 14 (1 + ξ )(1 − η). The Bilinear Quadrilateral The four-node quadrilateral shown in Figure 16. y} dictated by the second and third equations of (16. The shape functions are N1e = 14 (1 − ξ )(1 − η).2.9 there.  N3 u x4 N4e u y4 (16. η} plane. which extends over ξ ∈ [−1. The natural coordinates for a triangular ξ=−1 element are the triangular coordinates ζ1 . taking the value zero over the quadrilateral medians. These coordinates vary from −1 on one side to +1 at the other.6.5. 1]. η ∈ [−1. N4e = 14 (1 − ξ )(1 + η).5 QUADRILATERAL ELEMENTS §16. called the reference element. Quadrilateral Coordinates and Iso-P Mappings Before presenting examples of quadrilateral η elements. see Figure 16. Those formulas are discussed in the next Chapter.7 is the simplest member of the quadrilateral family. These are called quadrilateral coordinates.5. The 4-node bilinear quadrilateral. ζ2 and ζ3 .6 for both straight sided and curved side quadrilaterals. N3e = 14 (1 + ξ )(1 + η).1.6.5. Quadrilateral coordinates.2. The natural coordinates for a quadrilateral element are ξ and η.7. (16. All quadrilateral elements in the reference plane become a square of side 2.13) These functions vary linearly on quadrilateral coordinate lines ξ = const and η = const. The shape function associated with the internal node 9 is called a bubble function because of its geometric shape. It has eight external nodes and one internal node. and is stated here in recipe form. 16–8 .8(a) depicts a widely used eight-node variant called the “serendipity” quadrilateral.   y9   . This is one of the conditions for convergence to the analytical solution. . It is defined by   1 1  x   x1     y  =  y1    u x1 ux uy u y1  1 x2 y2 u x2 u y2 1 x3 y3 u x3 u y3 1 x4 y4 u x4 u y4 1 x5 y5 u x5 u y5 1 x6 y6 u x6 u y6 1 x7 y7 u x7 u y7 1 x8 y8 u x8 u y8   N1e  1 N2e  x9     . §16.   u x9  u y9 Ne (16. Completeness Properties of Iso-P Elements Some general conclusions as regards the range of applications of isoparametric elements can be obtained from a completeness analysis.8(a) is the next complete member of the quadrilateral family. The requirement is treated generally in Chapter 19.6) that combines (16. ··· N9e = (1 − ξ 2 )(1 − η2 ) (16.5. Its shape functions are N1e = 14 (1 − ξ )(1 − η)ξ η. More specifically.3. (b) the eight-node “serendipity” quadrilateral.4. a term explained in the Notes and Bibliography.8. ··· N5e = − 12 (1 − ξ 2 )(1 − η)η.5) satisfies the completeness criterion of finite element trial expansions. N6e = 12 (1 + ξ )(1 − η2 )ξ. Two widely used higher order quadrilaterals: (a) the nine-node biquadratic quadrilateral.Chapter 16: THE ISOPARAMETRIC REPRESENTATION η (a) 4 3 η=1 7 6 ξ=−1 1 ξ 3 η=1 7 4 9 8 η (b) 6 8 ξ=1 ξ=−1 η=−1 5 1 ξ ξ=1 η=−1 5 2 2 Figure 16. The Biquadratic Quadrilateral The nine-node quadrilateral shown in Figure 16. §16.) The internal node is eliminated by kinematic constraints as worked out in an Exercise of Chapter 18.2. which is pictured in §18. whether the general prescription (16.15) These functions vary quadratically along the coordinate lines ξ = const and η = const. N2e = − 14 (1 + ξ )(1 − η)ξ η..14) 9 This element is often referred to as the Lagrangian quadrilateral in the FEM literature. Figure 16.4) and (16. (A name that originated from circumstances surrounding the element discovery.6. The derivation carries without essential change to three dimensions. a posteriori checks of those identities are necessary.6. .17) Insert this into the displacement expansion (16. A set of shape functions is complete for this problem if they can represent exactly any linear displacement motions such as u x = α0 + α1 x + α2 y.1. 1 (16. N1e + N2e + N3e = ζ1 + ζ2 + ζ3 = 1. It can be easily verified by hand for simple elements. and consequently meets the completeness requirement for variational order m = 1. *Completeness Analysis The plane stress problem has variational index m = 1.1 Can you detect a flaw in this conclusion? The fly in the ointment is the last replacement step of (16. which assumes that the geometry relations (16. Here are the computations for the displacement component u x : ux = n (α0 + α1 xi + α2 yi ) Nie = α0 i=1 Nie + α1 i xi Nie + α2 i yi Nie = α0 + α1 x + α2 y. u y = β0 + β1 x + β2 y.19) is easy: the sum of shape functions must be unity.6 COMPLETENESS PROPERTIES OF ISO-P ELEMENTS §16. Completeness Checks The first check in (16.19) i=1 A similar calculation may be made for u y . (16.16) at the nodes u xi = α0 + α1 xi + α2 yi u yi = β0 + β1 xi + β2 yi . This is also called the unit sum condition. Indeed they are for all the example elements presented in the previous sections.19) are identically satisfied.16) To carry out the check.18).1. 75]. (16. See for example [397.4). M. 16–9 . n. reproduced here for convenience: 1= n i=1 Nie .5) to see whether the linear displacement field (16.20) This derivation is due to B. i = 1.16) is recovered. §16. . Example 16. p. i=1 y= n yi Nie . The property was known since the mid 1960s and contributed substantially to the rapid acceptance of iso-P elements.§16. Here are two examples. But if the new shape functions are constructed directly by the methods of Chapter 18. Irons.18) for any element.6. It appears that the isoparametric displacement expansion represents (16. x= n xi Nie . (16. . (16.2. Check for the linear triangle: directly from the definition of triangular coordinates.18) i For the last step we have used the geometry definition relations (16. evaluate (16. contiguous in the {ξ. Check for the 4-node bilinear quadrilateral: N1e + N2e + N3e + N4e = 14 (1 − ξ − η + ξ η) + 14 (1 + ξ − η − ξ η) + 14 (1 + ξ + η + ξ η) + 14 (1 − ξ + η − ξ η) = 1 (16. which is stipulated as item (C) in §18. y} physical plane.21) For more complicated elements see Exercises 16.2 The correct question to pose is: is the correct geometry of the quadrilateral preserved by the mapping from {ξ.” Summarizing: 2 This tautology is actually a blessing. η}.3. the complications that already arise for the bilinear quadrilateral in §23.22) simply gives back x and y. η} reference plane onto the {x. Example 16. for example.9 illustrate these questions. See. are the sides straight lines? Figure 16.22) i=1 Given the corner coordinates. η). Two side-two squares: (e1) and (e2). η). (16.22). and nothing is gained. {xi .2 and 16. y) one can try to solve for {ξ. yi } and a point P(x. This solution requires nontrivial work because it involves two coupled quadratics. Good and bad isoparametric mappings of 4-node quadrilateral from the {ξ.1. y}? In particular. Reinserting into (16. But this is equivalent to the question of interelement displacement compatibility. η} to {x. 16–10 . The common side 1-2 must remain a straight line to preclude interelement gaps or interpenetration.2. The statement “the displacement along a side must be uniquely determined by nodal displacements on that side” translates to “the coordinates of a side must be uniquely determined by nodal coordinates on that side. The geometry definition equations are x= 4 xi Nie (ξ. but can be done. are mapped to quadrilaterals (e1) and (e2) in the {x. y} physical plane through (16. y= i=1 4 yi Nie (ξ. η} reference plane. The other two checks are less obvious.3. For specificity consider the 4-node bilinear quadrilateral.9. since finding explicit expressions for the natural coordinates in terms of x and y rapidly becomes impossible for higher order elements.Chapter 16: THE ISOPARAMETRIC REPRESENTATION ξ−η plane good mapping (compatible) η 2 (e1) 1 (e1) (e1) ξ 1 1 2 η (e2) 2 2 (e2) 2 x−y plane bad mapping (incompatible) (e2) y ξ 2 x Figure 16. We are therefore lead to consider geometric compatibility upon mapping. It applies without conceptual changes to one and three dimensions as long as the variational index remains one. Consequently isoparametric formulations have limited importance in the finite element analysis of plate and shell bending.6. not to Lagrange multipliers. References (16.§16. Such elements have (n + 1)2 nodes in 2D and (n + 1)3 nodes in 3D.7.23) This subdivision of work significantly reduces the labor involved in element testing. Notes and Bibliography A detailed presentation of the isoparametric concept. Unit-sum condition + interelement compatibility → completeness. No simple isoparametric configurations satisfy those conditions. Iso-P Elements in One and Three Dimensions The reader should not think that the concept of isoparametric representation is confined to twodimensional elements. (The qualifier “Lagrangian” in this context refers to Lagrange’s interpolation formula.3. as part of the shape function interpolation. with annotated references to the original 1960 papers may be found in the textbook [397]. and the interpolation is said to be n-bicomplete. 16–11 . if n = 2.) References Referenced items have been moved to Appendix R 3 A limitation explained in §16.3. *Completeness for Higher Variational Index The completeness conditions for variational index 2 are far more demanding because they involve quadratic motions. §16.4 through 16. For example.7. This matrix representation for isoparametric elements used here was introduced in [204]. §16.6. the biquadratic quadrilateral with (2 + 1)2 = 9 nodes is Lagrangian and 2-bicomplete. The use of the isoparametric formulation to construct a 3-node bar element is the topic of Exercises 16. j ≤ n and k ≤ n. The term Lagrangian element in the mathematical FEM literature identifies quadrilateral and hexahedra (brick) elements that include all polynomial terms ξ i η j (in 2D) or ξ i η j µk (in 3D) with i ≤ n.3 Three-dimensional solid elements are covered in an advanced course. through c2 using the node value conditions depicted in Figure E16. Proceeding this way show that N1e (ξ ) = − 12 ξ(1 − ξ ). Node 3 has been drawn at the 1–2 midpoint but it may be moved away from it. respectively. where S1 = ζ1 + ζ2 + ζ3 . with axial coordinates x1 . EXERCISE 16. The element has axial rigidity E A and length .1) N 3e (ξ) N2 (ξ) N1 (ξ) 1 N3e (ξ ) = c0 + c1 ξ + c2 ξ 2 .3 [A/C:15] Complete the table of shape functions (16.Chapter 16: THE ISOPARAMETRIC REPRESENTATION Homework Exercises for Chapter 16 The Isoparametric Representation EXERCISE 16. The natural coordinates of nodes 1. 2 and 3 are ξ = −1. Hint: show that the sum is expressable as 2S12 − S1 . as in Exercises E16.6. N2e (ξ ) = b0 + b1 ξ + b2 ξ 2 . EXERCISE 16. ξ = 1 and ξ = 0. 2 and 3.5 and E16. 3 and 2.2 [A:15] Check by algebra that the sum of the shape functions for the six-node quadratic triangle (16. N2e (ξ ) = 12 ξ(1 + ξ ). Isoparametric shape functions for 3-node bar element (sketch). as illustrated in Figure E16.5 [A/C:15+10+15+5] A 3-node straight bar element is defined by 3 nodes: 1. These functions must be quadratic polynomials in ξ : N1e (ξ ) = a0 + a1 ξ + a2 ξ 2 . EXERCISE 16. Verify that their sum is exactly one.4 [A:20] Consider a three-node bar element referred to the natural coordinate ξ . The variation of the shape functions N1 (ξ ).1 [D:10] What is the physical interpretation of the shape-function unit-sum condition discussed in §16. The two end nodes and the midnode are identified as 1. x2 and x3 . e e 3 ξ=0 1 ξ=−1 1 1 3 ξ=0 2 1 ξ=1 ξ=−1 (E16. for example N1e = 1.2. EXERCISE 16. 2 and 3. respectively. (E16. 0 and 1 at nodes 1.11) is exactly one regardless of natural coordinates values.1. Determine the coefficients a0 . N2 (ξ ) and N3 (ξ ) is sketched in Figure E16.1.6? Hint: the element must respond exactly in terms of displacements to rigid-body translations in the x and y directions. 0 and 0 for ξ = −1. 2 ξ=1 1 ξ=−1 3 ξ=0 2 ξ=1 Figure E16. N3e (ξ ) = 1 − ξ 2 .2) Verify that their sum is identically one. respectively.23) of the nine-node biquadratic quadri- lateral. respectively.1. Node 3 lies between 1 and 2 but is not necessarily at the midpoint x = 12 . (E16. u 2 and u 3 . The 3 degrees of freedom are the axial node displacements u 1 .3) in which Nie (ξ ) are the shape functions (E16. The isoparametric definition of the element is   1 x u  = 1 x1 u1 1 x2 u2 1 x3 u3  N1e N2e N3e  . = x2 − x1 . The axial displacement is u(x).2) of the previous Exercise. x2 = .. For convenience define x1 = 0. . 16–12 x3 = ( 12 + α). 4) . (E16.. u 3 (ξ=0) x 3 = .Exercises axial rigidity EA x. /2+α. 1 (ξ= −1) x1 = 0 2 (ξ=1) x2 = . . 2. (a) From (E16. = L (e) Figure E16.4) and the second equation of (E16. The 3-node bar element in its local system. If α = 0 node 3 is located at the midpoint between 1 and 2. See Figure E16. where − 12 < α < 12 characterizes the location of node 3 with respect to the element center.2.3) get the Jacobian J = d x/dξ in terms of . Show that: (i) if − 14 < α < 14 then J > 0 over the whole element −1 ≤ ξ ≤ 1. J = . α and ξ . (ii) if α = 0.. (b) Obtain the 1 × 3 strain-displacement matrix B relating e = du/d x = B ue . u 2 and u 3 . The entries of B are functions of ./2 is constant over the element. where ue is the column 3-vector of node displacements u 1 . , α and ξ . Hint: B = dN/d x = J −1 dN/dξ , where N = [ N1 N2 N3 ] and J comes from item (a). (c) Show that the element stiffness matrix is given by K = 1 E A B B dx = e T E A BT B J dξ. (E16.5) −1 0 Evaluate the rightmost integral for arbitrary α but constant E A using the 2-point Gauss quadrature rule (E13.7). Specialize the result to α = 0, for which you should get K 11 = K 22 = 7E A/(3), K 33 = 16E A/(3), K 12 = E A/(3) and K 13 = K 23 = −8E A/(3), with eigenvalues {8E A/, 2E A/, 0}. Note: use of a CAS is recommended for this item to save time. (d) What is the minimum number of Gauss points needed to integrate Ke exactly if α = 0? EXERCISE 16.6 [A/C:20] This Exercise is a continuation of the foregoing one, and addresses the question of why Ke was computed by numerical integration in item (c). Why not use exact integration? The answer is that the exact stiffness for arbitrary α is numerically useless. To see why, try the following script in Mathematica: ClearAll[EA,L,alpha,xi]; (* Define J and B={{B1,B2,B3}} here *) Ke=Simplify[Integrate[EA*Transpose[B].B*J,{xi,-1,1}, Assumptions->alpha>0&&alpha<1/4&&EA>0&&L>0]]; Print["exact Ke=",Ke//MatrixForm]; Print["exact Ke for alpha=0",Simplify[Ke/.alpha->0]//MatrixForm]; Keseries=Normal[Series[Ke,{alpha,0,2}]]; Print["Ke series about alpha=0:",Keseries//MatrixForm]; Print["Ke for alpha=0",Simplify[Keseries/.alpha->0]//MatrixForm]; At the start of this script define J and B with the results of items (a) and (b), respectively. Then run the script. The line Print["exact Ke for alpha=0",Simplify[Ke/.alpha->0]//MatrixForm] will trigger error messages. Comment on why the exact stiffness cannot be evaluated directly at α = 0 (look at the printed expression before this one). A Taylor series expansion about α = 0 circumvents these difficulties but the 2-point Gauss integration rule gives the correct answer without the gyrations. 16–13 Chapter 16: THE ISOPARAMETRIC REPRESENTATION ξ=ξL ξ=ξR load q x, u 1 (ξ= −1) x1 = 0 3 (ξ=0) x 3 = /2+α2 (ξ=1) x2 = = L (e) Figure E16.3. The 3-node bar element under a “box” axial load q. EXERCISE 16.7 [A/C:20] Construct the consistent force vector for the 3-node bar element of the foregoing exercise, if the bar is loaded by a uniform axial force q (given per unit of x length) that extends from ξ = ξ L through ξ = ξ R , and is zero otherwise. Here −1 ≤ ξ L < ξ R ≤ 1. See Figure E16.3. Use ξR f = e q NT J dξ, (E16.6) −ξ L with the J = d x/dξ found in Exercise 16.5(a) and analytical integration. The answer is quite complicated and nearly hopeless by hand. Specialize the result to α = 0, ξ L = −1 and ξ R = 1. 16–14 17 Isoparametric Quadrilaterals 17–1 . . . §17.5.2. . . . . .Chapter 17: ISOPARAMETRIC QUADRILATERALS TABLE OF CONTENTS Page §17. . . Implementation of 1D Rules . Exercises .5.3. . . . . . §17. Shape Function Derivatives . . . . .3. . . §17. . One Dimensional Rules . . . . . . . . . . . . . . . Implementation of 2D Gauss Rules The Stiffness Matrix *Integration Variants §17. *A Shape Function Implementation Numerical Integration by Gauss Rules §17.2. . . . . . .3. . §17.1. . . . . . . . . . . *Selective Integration . . . . . . . . . . . . . References . . . Computing the Jacobian Matrix . . . Two Dimensional Rules . . . . . . . §17. .2. . . . . . . .2. .2. .3. . . . . . . .3.4. . . §17. . . §17. . . . .4. . §17. . . . . . . . . . .1. . . .2.1. . . §17. 17–3 17–3 17–3 17–4 17–4 17–5 17–5 17–6 17–6 17–8 17–8 17–9 17–10 17–11 17–11 17–12 17–12 17–12 17–13 . . . . . . . . Introduction Partial Derivative Computation §17. . . . .5. . . .1. . . .5. . . . . . §17. .2. . . . . . . 17–2 . . .2. *Weighted Integration . . . . . .4. . §17. . . . . . . . §17. . .2. . §17. . . . . . . . . . . . . . Notes and Bibliography . . . . .3. . .3. . . §17. The Jacobian . . The Strain-Displacement Matrix §17. . . . . . . In FEM work J and J−1 are called simply the Jacobian and inverse Jacobian. y):  ∂x ∂y   ∂ξ ∂η      1 ∂(ξ. Formulas given in Chapter 14 for the stiffness matrix and consistent load vector of general plane stress elements are of course applicable to these elements. being linked by a constraint. η) ∂(x. Chapter 24 discusses isoparametric triangular elements in detail. Computations of shape function derivatives to form the strain-displacement matrix. we must go through more specific steps: 1. the determination of Cartesian partial derivatives is not trivial. §17. η). Partial Derivative Computation Partial derivatives of shape functions with respect to the Cartesian coordinates x and y are required for the strain and stress calculations. The derivative calculation procedure is presented below for the case of an arbitrary isoparametric quadrilateral element with n nodes. The scalar symbol 17–3 . y} to those of {ξ.1. η} and vice-versa. however. y) with respect to (ξ. Triangular coordinates. y) J −J21 J11 ∂y ∂y ∂η ∂η (17. the fact that it is a matrix being understood. We shall not deal with isoparametric triangles here to keep the exposition focused. Introduction In this Chapter the isoparametric representation of element geometry and shape functions discussed in the previous Chapter is used to construct quadrilateral elements for the plane stress problem. = .1) Here J denotes the Jacobian matrix of (x.2. and covered more systematically in Chapter 23. require “special handling” techniques that would complicate and confuse the exposition.2 PARTIAL DERIVATIVE COMPUTATION §17. The implementation of the algorithm in the form of element modules is partly explained in the Exercises of this Chapter. respectively. = ∂ y ∂ y  dη ∂η ∂η  dy dη dη dy dy ∂ξ ∂η ∂x ∂y (17. η) with respect to (x. §17. Because shape functions are not directly functions of x and y but of the natural coordinates ξ and η. J = .2) where J = |J| = det(J) = J11 J22 − J12 J21 . = J= ∂x ∂y  J21 J22 ∂(ξ. 2. y)  ∂ξ ∂ξ  J22 −J12 J11 J12 −1 = =  ∂ξ ∂η  = . The first topic was dealt in the previous Chapter in recipe form. Using the chain rule:  ∂ξ ∂ξ   ∂x ∂x              dξ dx  ∂x ∂y  dx  ∂ξ ∂η  dξ T dξ −T d x =J =J .2. Numerical integration over the element by Gauss quadrature rules. Construction of shape functions. Assuming the shape functions have been constructed (or readily found in the FEM literature) the second and third items are combined in an algorithm suitable for programming any isoparametric quadrilateral. and is systematically covered in the next one. η)  ∂ x ∂ x  ∂(x.§17. The Jacobian In quadrilateral element derivations we will need the Jacobian of two-dimensional transformations that connect the differentials of {x.1. 3. whereas J−1 is the Jacobian matrix of (ξ. For a practical implementation. To show that J and J−1 are in fact inverses of each other we form their product: J−1 J = ∂ x ∂ξ ∂ x ∂η ∂ξ ∂ x + ∂η ∂ x ∂ x ∂ξ + ∂ x ∂η ∂ξ ∂ y ∂η ∂ y ∂y ∂ξ ∂y ∂ξ ∂ y ∂η ∂ξ + ∂x ∂η ∂ x = ∂ y ∂η ∂ξ + ∂y ∂η ∂ y ∂x ∂x ∂x ∂y ∂y . Jacobians play a crucial role in differential geometry.2. and those who think it is a column vector. In one dimension J and J coalesce.2) because of earlier use in covariant transformations: ∂φ/∂ x = (∂ξ/∂ x)(∂φ/∂ξ ) + (∂η/∂ x)(∂φ/∂η).Chapter 17: ISOPARAMETRIC QUADRILATERALS J is reserved for the determinant of J. As quoted in Appendix D. one quickly finds that there are two kinds of people in this world: those who think the gradient is a row vector. Remark 17.5) below. For the general definition of Jacobian matrix of a differential transformation.1) are the transposes of what we call J and J−1 . see Appendix D. But Jacobians are arranged as in (17. etc.1. The reason is that coordinate differentials transform as contravariant quantities: d x = (∂ x/∂ξ ) dξ + (∂ x/∂η) dη.” Remark 17. one author puts it this way: “When one does matrix calculus. Observe that the matrices relating the differentials in (17. as in (17. The reader is cautioned that notations vary among application areas. η) and the fact that x and y are independent coordinates.2. (17.5) where J−1 is defined in (17. η). y = y(ξ.4).2. This case requires special handling and is covered in Chapter 24.2. This proof would collapse. §17. §17.1. Shape Function Derivatives The shape functions of a quadrilateral element are expressed in terms of the quadrilateral coordinates ξ and η introduced in §16. η} we had the triangular coordinates {ζ1 . y)  ∂ Nie  = J  ∂ Nie  . η)  ∂ξ  ∂ x   ∂ξ  −1  ∂ξ  ∂η   ∂ Nie  = ∂(x. 1 ∂x ∂y = 0 ∂y 0 . Computing the Jacobian Matrix To compute the entries of J at any quadrilateral location we make use of the last two geometric relations in (16.6) . The derivatives with respect to x and y are given by the chain rule: ∂ Nie ∂ Nie ∂ξ ∂ Nie ∂η = + . y= i=1 n  i=1 17–4 yi Nie .2).4) This can be put in matrix form as  ∂Ne  i  ∂ξ  ∂x   ∂x  ∂ N e  =  ∂ξ i ∂y ∂y  ∂Ne   ∂Ne  ∂η   ∂ Nie  i i ∂(ξ.3. ∂y ∂η ∂η ∂η (17. ∂x ∂ξ ∂ x ∂η ∂ x ∂ Nie ∂ Nie ∂ξ ∂ Nie ∂η = + . ∂y ∂ξ ∂ y ∂η ∂ y (17. if instead of {ξ. The computation of J is addressed in the next subsection.5.3) where we have taken into account that x = x(ξ. ζ3 } because rectangular matrices have no conventional inverses. however. which are repeated here for convenience: x= n  xi Nie . 1 (17. ζ2 . (17.8). y=Table[ncoor[[i.  .2.§17. In matrix form:  J= J11 J12 J21 J22   ∂x  ∂ξ = ∂x ∂η  ∂Ne ∂y  1 ∂ξ   ∂ξ = PX =  ∂y  ∂ N1e ∂η ∂η ∂ N2e ∂ξ ∂ N2e ∂η .J12..dNx. J11=dNξ . (1-η).dNy. .J22.. which is reproduced here for convenience:   ∂Ne ∂ Nne ∂ N2e 1 0 0 .x. ∂ξ ∂ξ i=1 n  ∂ Nie ∂x xi = .(1+ξ )*(1-η).{i.   e e e e e e 2ex y ∂N ∂ Nn ∂ N1 ∂ N1 ∂ N2 ∂ N2 .dNη.J11.2]]. η in general leads to extremely complicated expressions unless the element has a particularly simple geometry..7) because the xi and yi do not depend on ξ and η.(1+ξ ). inverting and using the chain rule (17.{i.η. as discussed in §17. §17.η}=qcoor. A shape function module for the 4-node bilinear quadrilateral.3). dNy=Simplify[dNy].x.8) yn Given a quadrilateral point of coordinates ξ . ∂ yn ∂y ∂x ∂y ∂x ∂x The nonzero entries of B are partials of the shape functions with respect to x and y.18). The calculation of those partials is done by computing J via (17. 0   ∂x ∂x   ∂x ex x e  e e  ∂ N ∂ N ∂ N e n 1 2  e 0 .y}. dNx=Simplify[dNx]..-(1+η)}/4. dNη= {-(1-ξ ). Jdet=Simplify[J11*J22-J12*J21].-(1+ξ ). Return[{Nf..3 below. ∂η ∂η i=1 n  ∂ Nie ∂y yi = . Nf={(1-ξ )*(1-η).. {ξ . (1-ξ )}/4.. dNξ ={-(1-η).4.4}]. 0 e =  e yy  =  (17. Figure 17.. ∂η ∂η i=1 (17.1–17. x=Table[ncoor[[i.(1+η). n  ∂ Nie ∂x xi = .dNx.2 PARTIAL DERIVATIVE COMPUTATION Differentiating with respect to the quadrilateral coordinates.1]].i.5).y.9)  0 ∂y ∂y ∂ y  u = Bu .dNy. J22=dNη. Remark 17.8).J21. ∂η xn y1  y2  . This was one of the difficulties that motivated the use of Gaussian numerical quadrature.Jdet}] ]. (for example rectangles as in Exercises 17. .  ∂ Nne  x1 x2 ∂ξ     ∂ Nne  . J21=dNη.qcoor_]:= Module[ {Nf. Quad4IsoPShapeFunDer[ncoor_. η we calculate the entries of J using (17.(1+ξ )*(1+η). .Jdet.. J12=dNξ .y.dNξ .(1-ξ )*(1+η)}/4.3. dNy= (-J21*dNξ +J11*dNη)/Jdet.ξ .1. . The inverse Jacobian J−1 is then obtained by numerically inverting this 2 × 2 matrix. The Strain-Displacement Matrix The strain-displacement matrix B that appears in the computation of the element stiffness matrix is given by the general expression (14.4}].x. ∂ξ ∂ξ i=1 n  ∂ Nie ∂y yi = . dNx= ( J22*dNξ -J12*dNη)/Jdet. . The symbolic inversion of J for arbitrary ξ . . 17–5 . Nfy Value of y-derivatives of shape functions.Nf3.a } }.{ x2.Jdet }=Quad4IsoPShapeFunDer[ncoor.0 }.{ x3.{ 2*a.1/(2*a). Example 17.2.Nfy2. say from a to b. The node coordinate array is ncoor={ { 0. η } of the point. The standard practice has been to use Gauss integration because such rules use a minimal number of sample points to achieve a desired level of accuracy. This economy is important for efficient element calculations. qcoor Quadrilateral coordinates { ξ.1.a }. Nfy={ -1/(2*a).-3/(8*a) }.3/8 }.y4 } }.3.Chapter 17: ISOPARAMETRIC QUADRILATERALS §17.Nf2.Nfx4 }. The use of the canonical interval [−1. arranged as list { Nfy1. respectively.1/8. The appropiate call is { Nf. y} derivatives at a given point of quadrilateral coordinates {ξ. Figure 17.11) i=1 Here p ≥ 1 is the number of Gauss integration points (also known as sample points).y3 }. Nfx={ -1/(8*a). The module returns: Nf Value of shape functions. Nfx Value of x-derivatives of shape functions.3.{ 2*a. arranged as list { Nfx1. The fact that the location of the sample points in Gauss rules is usually given by non-rational numbers is of no concern in digital computation.Nfy. can be 17–6 . The shape functions and their {x.Jdet }=Quad4IsoPShapeFunDer[ncoor.Nfy4 }.10) where the arguments are ncoor Quadrilateral node coordinates arranged in two-dimensional list form: { { x1.y1 }. y} derivatives are to be evaluated at the rectangle center ξ = η = 0. Numerical Integration by Gauss Rules Numerical integration is essential for practical evaluation of integrals over isoparametric element domains.3/8.Nfy.0 }] This returns Nf={ 1/8.Nfy3.qcoor] (17.1] is no restriction. One Dimensional Rules The classical Gauss integration rules are defined by  1 −1 F(ξ ) dξ ≈ p  wi F(ξi ).Nf4 }. The module is invoked by saying { Nf. and ξi are sample-point abcissae in the interval [−1. This is a code fragment that returns the value of the shape functions and their {x.Nfx3. §17.Nfx.1].Nfx.1/(2*a) } and Jdet=a^2/2.{ 0.5. because an integral over another range. η}.{ 0.1/(8*a).{ x4.1. Jdet Jacobian determinant. since a matrix product is evaluated at each sample point. arranged as list { Nf1. with 2a and a as the x and y dimensions. wi are the integration weights. §17.3/(8*a).-1/(2*a). Consider a 4-node bilinear quadrilateral shaped as an axis-aligned 2:1 rectangle.Nfx2. (17. *A Shape Function Implementation To make the foregoing discussion more specific.0 }.y2 }.1 shows the shape function module for the 4-node bilinear quadrilateral.   √ √ For the 5-point rule. The Jacobian of this mapping is J = d x/dξ = / . The first five one-dimensional Gauss rules p = 1.12) . is transformed to the canonical interval [−1. This is called the degree of the formula.§17. w25 = w45 = (322 + 13 70)/900 and w35 = 512/900. 3.1 . 3.2.One-Dimensional Gauss Rules with 1 through 5 Sample Points Points 1 2 3 4 5 Rule 1 −1 1 F(ξ ) dξ ≈ 2F(0) √ √ F(ξ ) dξ ≈ F(−1/ 3) + F(1/ 3) −1 1 √ √ 5 8 5 F(ξ ) dξ ≈ F(− 3/5) + F(0) + F( 3/5) 9 9 9 −1 1 −1 F(ξ ) dξ ≈ w14 F(ξ14 ) + w24 F(ξ24 ) + w34 F(ξ34 ) + w44 F(ξ44 ) −1 F(ξ ) dξ ≈ w15 F(ξ15 ) + w25 F(ξ25 ) + w35 F(ξ35 ) + w45 F(ξ45 ) + w55 F(ξ55 ) 1   √ √ For the 4-point rule. Sample point locations are marked with black circles. +1]. 7 and 9. as shown in the Remark below. 5 depicted over the line segment ξ ∈ [−1. respectively. A more general integral. ξ45 = −ξ35 = 13 5 − 2 10/7. or ξ = (2/ )(x − 12 (a + b)). 2.4. Thus   b F(x) d x = a  1 1 F(ξ ) J dξ = −1 −1 17–7 F(ξ ) 12 dξ. 44 14 √ w14 = w44 = 12 − 16 5/6. ξ = −ξ = (3 + 2 6/5)/7. ξ35 = 0. √ √ w15 = w55 = (322 − 13 70)/900. ξ55 = −ξ15 = 13 5 + 2 10/7. In general a onedimensional Gauss rule with p points integrates exactly polynomials of order up to 2 p − 1. +1] via a simple linear transformation of the independent variable. such as F(x) over [a. The first five one-dimensional Gauss rules. 1] through the mapping x = 12 a(1 − ξ ) + 12 b(1 + ξ ) = 12 (a + b) + 12 ξ . 5. ξ=1 p=1 ξ = −1 p=2 p=3 p=4 p=5 Figure 17.1. and w24 = w34 = 12 + 16 5/6. 4. illustrated in Figure 17.√ ξ34 = −ξ24 = (3 − 2 6/5)/7. These integrate exactly polynomials in ξ of orders up to 1. b] in which = b − a > 0. Remark 17.3 NUMERICAL INTEGRATION BY GAUSS RULES Table 17. transformed to [−1. are listed in Table 17. (17. The radii of those circles are proportional to the integration weights.2. 2] returns xi=0 and w=8/9. Return[Simplify[info]]].Chapter 17: ISOPARAMETRIC QUADRILATERALS LineGaussRuleInfo[{rule_. i=point. For p > 6 the abscissas and weights of sample points are not expressible as rational numbers or radicals.2.2}]. η j ). η) dξ dη = dη F(ξ. If [p==1.3. g5={-Sqrt[5+2*Sqrt[10/7]].0}}. g4={-Sqrt[(3+2*Sqrt[6/5])/7]. info={g5[[i]].3.wi }=LineGaussRuleInfo[{ p. Implementation of 1D Rules The Mathematica module shown in Figure 17. For example.2.i] (17. and can only be given as floating-point numbers. If [p==5.0 }. (1/2)+Sqrt[5/6]/6. info={g4[[i]]. 322+13*Sqrt[70].w5[[i]]}]. { xi. (1/2)+Sqrt[5/6]/6.14) −1 −1 −1 −1 Once this is done we can process numerically each integral in turn:  1  1  1 1 p1  p2  F(ξ. If [p==3.0. 5. Return[N[info]]. Sqrt[(3+2*Sqrt[6/5])/7]}. info={0.888888888888889.True }. Two Dimensional Rules The simplest two-dimensional Gauss rules are called product rules. 4. and w=0.point_]:= Module[ {g2={-1.512.3 returns either exact or floating-point information for the first five unidimensional Gauss rules. If [p==2. η) dξ dη = dη F(ξ. (17. w5={322-13*Sqrt[70]. Higher order Gauss rules are tabulated in standard manuals for numerical computation. To apply these rules we must first reduce the integrand to the canonical form:  1  1  1 1 F(ξ.1}]. −1 −1 −1 −1 i=1 j=1 17–8 (17.numer }.13) Logical flag numer is True to get numerical (floating-point) information.8/9. ].w }=LineGaussRuleInfo[{ 3.info={{Null. the module returns { Null.322-13*Sqrt[70]}/900. info={g3[[i]]. 3.False }. They are obtained by applying the one-dimensional rules to each independent variable in turn.Sqrt[3/5]}. Sqrt[(3-2*Sqrt[6/5])/7]. η) dξ ≈ wi w j F(ξi .w3[[i]]}].-Sqrt[(3-2*Sqrt[6/5])/7]. whereas { xi. §17. or False to get exact information.numer_}. g3={-Sqrt[3/5].w3={5/9.1}/Sqrt[3].5/9}. If [p==4. If [numer.w }=LineGaussRuleInfo[{ 3. A Mathematica module that returns the first five one-dimensional Gauss rules. The module returns the sample point abcissa ξi in xii and the weight wi in wi.3.2] returns (to 16 places) xi=0. 2.4) rules with up to 96 points.-Sqrt[5-2*Sqrt[10/7]].p=rule. §17. the widely used Handbook of Mathematical Functions [2] lists (in Table 25. info={g2[[i]]. Sqrt[5+2*Sqrt[10/7]]}/3.322+13*Sqrt[70]. To get information for the i th point of the p th rule. Remark 17.3.w4[[i]]}].0. in which 1 ≤ i ≤ p and p = 1. call the module as { xii. If p is not in the implemented range 1 through 5. Example 17. Figure 17.5.15) .Null}. (1/2)-Sqrt[5/6]/6}. w4={(1/2)-Sqrt[5/6]/6. η) dξ. Sqrt[5-2*Sqrt[10/7]]. respectively.etaj }.etaj }.17) The meaning of the second argument is as follows.k ] (17.3 NUMERICAL INTEGRATION BY GAUSS RULES p = 2 (2 x 2 rule) p = 1 (1 x 1 rule) p = 4 (4 x 4 rule) p = 3 (3 x 3 rule) Figure 17.4. numer }. numer }. If the rule has the same number of points p in both directions the module is called in either of two ways: { { xii.wij }=QuadGaussRuleInfo[{ p. Sample points are marked with black circles.p2 }. 17–9 .etaj }. 1 Indices i and j are denoted by i1 and i2. where p1 and p2 are the number of Gauss points in the ξ and η directions. The first four two-dimensional Gauss product rules with p = p1 = p2 are illustrated in Figure 17. In the second form k runs from 1 to p1 p2 . Implementation of 2D Gauss Rules The Mathematica module listed in Figure 17.4. in which 1 ≤ i ≤ p and 1 ≤ j ≤ p.3. In the first form i runs from 1 to p1 and j from 1 to p2 .wij }=QuadGaussRuleInfo[{ { p1. 4 depicted over a straight-sided quadrilateral region. numer }. 3.wij }=QuadGaussRuleInfo[{ p.p2 }.k ] (17. 2. j} are internally extracted1 as j=Floor[(k-1)/p]+1. i=k-p*(j-1).5 implements two-dimensional product Gauss rules having 1 through 5 points in each direction. This is in fact the case for all quadrilateral elements presented here.{ i.j }] { { xii. inside the module.j }] { { xii. numer }. if so {i. If the integration rule has p1 points in the ξ direction and p2 points in the η direction. The first four two-dimensional Gauss product rules p = 1.wij }=QuadGaussRuleInfo[{ { p1. §17. if so i and j are extracted by j=Floor[(k-1)/p1]+1. The second form specifies that point by a “visiting counter” k that runs from 1 through p 2 . the module may be called also in two ways: { { xii. The number of points in each direction may be the same or different. { i. respectively. The areas of these circles are proportional to the integration weights.4.16) The first form is used to get information for point {i. j} of the p × p rule.etaj }.§17. Usually the same number p = p1 = p2 is chosen if the shape functions are taken to be the same in the ξ and η directions. Example 17.m.w1*w2}.0}}.True }. p1=p2=rule]. The stress-strain matrix E is usually constant in elastic problems. This code is used in the Exercises at the end of the chapter.w }=QuadGaussRuleInfo[{ 3.numer}.eta }.{ 2.p2.eta }.5. but we could in principle interpolate it as appropriate should it vary over the element. {i.19) If ξ and η are the quadrilateral coordinates.p2}=rule.False }. To complete the reduction we need to express de in terms of the differentials dξ and dη.i].numer}.7745966692414834 and w=0. we have to reduce it to the canonical form (17. Figure 17. If [Length[point]==2. { { xi. Return[Simplify[info]]].j. except the element of area de .3. ]. Example 17. everything in (17. info={{ξ . Return[N[info]]. the module returns { { Null. eta=0. if variable.23).numer}.p1.0 }.w1}= LineGaussRuleInfo[{p1.w1.i.49382716049382713.point]]]. The module returns ξi and η j in xii and etaj. To integrate (17. respectively.4. 17–10 (17.point_]:= Module[ {ξ .w2.Null}. If [p1<0. logical flag numer is set to True if numerical information is desired and to False if exact information is desired.. In all four forms.j].14). §17. Return[QuadNonProductGaussRuleInfo[ {-p1.4.3 }] returns xi=0. j=Floor[(m-1)/p1]+1.{ 2.w }=QuadGaussRuleInfo[{ 3.19) already fits this form. A Mathematica module that returns two-dimensional product Gauss rules. { { xi. i=k-p1*(i-1).20) .η.j}=point. {ξ .info={{Null. The desired relation is (see Remark below) de = d x d y = det J dξ dη = J dξ dη. m=point. {p1. If [Length[rule]==2.η}. may be interpolated via the shape functions. The thickness h. If the inputs are not in range.18) Of the terms that appear in (17. If [numer.Null }. {η. η) dξ dη. The Stiffness Matrix The stiffness matrix of a general plane stress element is given by the expression (14.numer_}. and the weight product wi w j in wij. which is reproduced here:  Ke = h BT EB de e (17.18) the strain-displacement matrix B has been discussed previously.3 }] returns (to 16-place precision) xi=0. eta=Sqrt[3/5] and w=40/81. (17. i=m-p1*(j-1) ].Chapter 17: ISOPARAMETRIC QUADRILATERALS QuadGaussRuleInfo[{rule_. that is  K = 1  1 e −1 −1 F(ξ.18) numerically by a two-dimensional product Gauss rule.w2}= LineGaussRuleInfo[{p2. §17.6. They are distinguished from the selective-integration schemes described in the next subsection in that the constitutive properties are not modified. for example [265.6. *Integration Variants Several deviations from the standard integration schemes described in the foregoing sections are found in the FEM literature. Remark 17. consider the element of area OACB depicted in Figure 17.22) This formula can be extended to any number of dimensions.5 *INTEGRATION VARIANTS ∂x dη η ∂η y C B ∂y dη ∂η dΩe A O ∂x dξ ∂ξ Figure 17.5. η = ±1/ 3. (17.23) may be regarded as a 5-point integration rule with weights w1 = 4(1−β) at √ √ the sample point at ξ = η = 0 and wi = β (i = 2. *Weighted Integration It is sometimes useful to form the element stiffness as a linear combination of stiffnesses produced by two different integration rules Such schemes are known as weighted integration methods. For the 4-node bilinear element weighted integration is done by combining the stiffnesses Ke1×1 and Ke2×2 produced by 1×1 and 2×2 Gauss product rules.21) This matrix function can be numerically integrated over the domain −1 ≤ ξ ≤ +1.23) Here β is a scalar in the range [0. Two variations are described below and supplemented with motivation Exercises. 4. −1 ≤ η ≤ +1 by an appropriate Gauss product rule. respectively.5. §17. 17–11 .§17.2 2 For programming the combination (17.1. (17. 5) at the four sample points at ξ = ±1/ 3.   ∂ξ ∂η (17. To geometrically justify the area transformation formula (17. ξ x ∂y dξ ∂ξ Geometric interpretation of the Jacobian-determinant formula. The area of this differential parallelogram can be computed as ∂y ∂x ∂y ∂x dξ dη − dη dξ d A = OB × OA = ∂ξ ∂η ∂η ∂ξ  ∂x ∂x     ∂ξ ∂η  =  ∂ y ∂ y  dξ dη = |J| dξ dη = det J dξ dη.708]. respectively: Keβ = (1 − β)Ke1×1 + βKe2×2 . If β = 0 or β = 1 one recovers the element integrated by the 1×1 or 2×2 rule.20). We therefore have F(ξ. as shown in textbooks on differential geometry. 1].6. 3.319. η) = h BT EB detJ. Argyris used the unit displacement theorem. For references in multidimensional numerical integration.23) is that Ke1×1 is rank-deficient and too soft whereas Ke2×2 is rank-sufficient but too stiff.24) that improve the in-plane bending performance of rectangular elements. *Selective Integration In the FEM literature the term selective integration is used to described a scheme for forming Ke as the sum of two or more matrices computed with different integration rules and different constitutive properties.Chapter 17: ISOPARAMETRIC QUADRILATERALS The idea behind (17. It was first derived as a rectangular panel with edge reinforcements (not included here) by Argyris in his 1954 Aircraft Engineering series [22. He proceeded to create the seminal isoparametric family as a far-reaching extension upon moving to Swansea [64. Legendre’s name is often adjoined because the abcissas of the 1D sample points turned out to be the zeros of Legendre polynomials. who was aware of Taig’s work while at Rolls Royce.5. p. η} but running from 0 to 1. For this element rules (I) and (II) are the 1×1 and 2×2 Gauss product rules.5–7 investigate stress-strain splittings (17. respectively. 49 in the Butterworths reprint]. In practice selective integration is mostly useful for the 4-node bilinear quadrilateral.394. Argyris was aware of the ongoing work in stiffness methods at Turner’s group in Boeing.4 After much flailing. displacing each DOF in turn by one. Gauss presented these rules. in 1814. see Notes and Bibliography in Chapter 24. Selective and reduced integration in FEM developed in the early 1970s. 3 This technique is also called “selective reduced integration” to reflect the fact that one of the rules (the “reduced rule”) underintegrates the element. The trick is to use two different rules: rule (I) for the first integral and rule (II) for the second. p. Split the plane stress constitutive matrix E into two: E = EI + EII (17. a conforming generalization to arbitrary geometry was published in 1964 by Taig and Kerr [719] using quadrilateral-fitted coordinates already denoted as {ξ. and by now there is a huge literature.1. Argyris used bilinear displacement interpolation in Cartesian coordinates.25) If these two integrals were done through the same integration rule. An application of this idea to the mitigation of shear locking for modeling in-plane bending is the subject of Exercise E17. the stiffness would be identical to that obtained by integrating h BT E B de .2.397]. Gauss integration is also called Gauss-Legendre quadrature. A systematic description is given in [706].7. The resulting displacement pattern is now called a shape function. Exercises E17.13) the expression of the stiffness matrix becomes   Ke = h BT EI B de + e e h BT EII B de = KeI + KeII . Sec 4. A combination of too-soft and too-stiff hopefully “balances” the stiffness. 17–12 .197.24) This is called a stress-strain splitting. but the plane stress models presented in [758] were derived by interelement flux assumptions. 4 This work is probably the first derivation of a continuum-based finite element by assumed displacements. References Referenced items have been moved to Appendix R. (17.) Bruce Irons. 520] remarks that the work goes back to 1957. Notes and Bibliography The 4-node quadrilateral has a checkered history.11 of [310]. §17.4. An excellent textbook source is [385]. Inserting (17. 1] to fit Gauss quadrature tables.24) into (17. changed the {ξ. η} range to [−1.3 We consider here the case of a two-way decomposition. cf. As noted in §1. (Reference [719] cites an 1961 English Electric Aircraft internal report as original source but [397. derived from first principles. { E12.Jdet}=Quad4IsoPShapeFunDer[ncoor.Be)].{ x3.y2 }. Emat A two-dimensional list storing the 3 × 3 plane stress matrix of elastic moduli: E= E 11 E 12 E 13 E 12 E 22 E 23 E 13 E 23 E 33 (E17.{8}]}.3) The plate thickness specified either as a four-entry list: { h1.2) arranged as { { E11. this matrix becomes E E= 1 − ν2 thick 5 1 ν 0 ν 1 0 0 0 1 (1 − ν) 2 (E17. dNy[[i]]}.Exercises Homework Exercises for Chapter 17 Isoparametric Quadrilaterals The Mathematica module Quad4IsoPMembraneStiffness listed in Figure E17. listed in Figures 17. 17–13 . The module makes use of the shape function module Quad4IsoPShapeFunDer listed in Figure 17.options_]:= Module[{i.h=th. Print["p out of range"].thick.4}]].Emat_.qcoor]. ]. You will need to enter the Exercise scripts yourself.th_. If [Length[options]==2.{i.Ke=Table[0.h4 } or as a scalar: h. although it has some text statements at the bottom of the cell. Be={Flatten[Table[{dNx[[i]].1 computes the element stiffness matrix of the 4-node bilinear quadrilateral.dNy.{numer}=options]. h=th. {numer. Ke+=Simplify[c*Transpose[Be].(Emat.h3.Emat.numer}.5 The module is invoked as Ke=Quad4IsoPMembraneStiffness[ncoor. Flatten[Table[{dNy[[i]].h2.{i.c. For [k=1. If the material is isotropic with elastic modulus E and Poisson’s ratio ν. {qcoor. This Notebook does not include scripts for doing the Exercises below.Nf. Quad4IsoPMembraneStiffness[ncoor_.numer=False. Must be symmetric.1) The arguments are: ncoor Quadrilateral node coordinates arranged in two-dimensional list form: { { x1.1.E23 }.p=2.4}]]}. Flatten[Table[{0.y1 }. If [Length[th]==4.4}]].{ x4.p}=options.Jdet.Be. k<=p*p.y4 } }.nb. If [p<1||p>4. dNx. Return[Null]].E33 }. and of the Gauss integration modules QuadGaussRuleInfo and (indirectly) LineGaussRuleInfo.E22.{8}.E12. k++.qcoor. Mathematica module to compute the stiffness matrix of a 4-node bilinear quadrilateral in plane stress.w. Return[Simplify[Ke]] ].w}= QuadGaussRuleInfo[{p. {Nf.y3 }.E33 } }. Figure E17.E23.{i. c=w*Jdet*h.dNy. This module is useful as a tool for the Exercises that follow.k.5 and are included in the web-posted Notebook Quad4Stiffness.options] (E17.{ x2.{ E13.dNx.1.dNx[[i]]}. 0}.k].Nf]. 3). 17–14 . A symbolic or exact computation can take orders of magnitude more time than a floating-point evaluation.7 If omitted p = 2 is assumed. in which case the entries are the four corner thicknesses and h is interpolated bilinearly. ψ3 = 2 + (1 − ν)γ 2 . numer is a logical flag with value True or False. 7 The rank of an element stiffness is discussed in Chapter 19. the computations are done in floating point arithmetic.5) 6 The reason for this option is speed. Then the stiffness matrix in closed form is      Eh  Ke = 24γ (1 − ν 2 )     4ψ3 3ψ1 4ψ4 2ψ5 3ψ2 4ψ3 −3ψ2 4ψ8 −3ψ1 4ψ4 symm −2ψ3 −3ψ1 −4ψ6 3ψ2 4ψ3 −3ψ1 −2ψ4 −3ψ2 −2ψ7 3ψ1 4ψ4 −4ψ6 −3ψ2 −2ψ3 3ψ1 2ψ5 3ψ2 4ψ3  3ψ2 −2ψ7  3ψ1   −2ψ4  . η y 3 4 b = a/γ Uniform thickness h = 1 Isotropic material with elastic modulus E and Poisson's ratio ν ξ 1 2 a x Figure E17. This list may contain two items: { numer.Chapter 17: ISOPARAMETRIC QUADRILATERALS The first form is used to specify an element of variable thickness.p } or one: { numer }. Element for Exercises 17. This becomes more pronounced as elements get more complicated. ψ1 = (1 + ν)γ . For symbolic or exact arithmetic work set numer to False. ψ6 = (1 − ν)γ 2 − 1. If True. For rank sufficiency. The element has uniform unit thickness h. If p is 1 the element will be rank deficient by two. The second form specifies uniform thickness. ψ5 = (1 − ν)γ 2 − 4. For the following three exercises we consider the specialization of the general 4-node bilinear quadrilateral to a rectangular element dimensioned a and b in the x and y directions. The module returns Ke as an 8 × 8 symmetric matrix pertaining to the following arrangement of nodal displacements: (E17. respectively. as depicted in Figure E17. The stiffness matrix of this element can be expressed in closed form. p may be 1 through 4. ψ7 = 4γ 2 − (1 − ν) and ψ8 = γ 2 − (1 − ν). or numerical integration with a 2 × 2 or higher Gauss rule.3.4) ue = [ u x1 u y1 u x2 u y2 u x3 u y3 u x4 u y4 ]T . options Processing options.2. −3ψ2   4ψ8   −3ψ1 4ψ4 (E17. ψ2 = (1 − 3ν)γ .1 to 17. 8 This closed form can be obtained by either exact integration. The material is isotropic with elastic modulus E and Poisson’s ratio ν and consequently E reduces to (E17.2. p must be 2 or higher.6 p specifies the Gauss product rule to have p points in each direction.8 For convenience define γ = a/b (rectangle aspect ratio). ψ4 = 2γ 2 + (1 − ν). {a.4.0}. a=4. Verify that for integration rules p=2. On the other hand. Print["Eigenvalues of Ke=".h.{a.b}.{True. ncoor={{0. scaledKe=Simplify[Ke*(24*(1-Ν^2)*Γ/(Em*h))]. Print["Ke=". We can therefore isolate a typical element as illustrated in Figure E17.0}.scaledKe//MatrixForm].) Question: why does the stiffness matrix stays exactly the same for p ≥ 2? Hint: take a look at the entries of the integrand h BT EB J .{False. Print["Ke=".for a rectangular geometry are those polynomials in ξ and η. or rational functions? If the former. which correspond to the three two-dimensional rigid body modes. Em=48. By analogy with the exact solution.{0.b.0.h.{Ν. EXERCISE 17.p].{0.0}. height b and thickness h (normal to the plane of the figure) is bent under end moments M as illustrated in Figure E17. This may be done by hand (takes a while) or (quicker) running the script of Figure E17.Ν.b}}. h=1. The beam is fabricated of isotropic material with elastic modulus E and Poisson’s ratio ν.Chop[Eigenvalues[N[Ke]]]] ]. Figure E17.Emat. Ke= Quad4IsoPMembraneStiffness[ncoor. all rectangles in the finite element model will undergo the same deformation.3. (This phenomenon is analyzed further in Chapter 19. These are rectangles with horizontal dimension a.1 [C:20] Exercise the Mathematica module of Figure E17.2}].b}.Exercises EXERCISE 17.0}.(1-nu)/2}}."*\n".0}.0}.3 [A/C:25=5+10+10] A Bernoulli-Euler plane beam of thin rectangular cross-section with span L.h.2.Chop[Ke]//MatrixForm].p}].{0. The exact displacement field for the beam segment referred to the {x. The scaling introduced in the last two lines is for matrix visualization convenience.4.0}. nu=0.b. in the Figure a = L/4. ncoor={{0.4.b}}. Script suggested for Exercise E17.h].1. for p = 1 the stiffness matrix is different and displays five zero eigenvalues. Consequently the beam deforms with uniform curvature 1 hb3 is the cross-section second moment of inertia about z.nu.5) by printout inspection and report any typos to instructor. Ke= Quad4IsoPMembraneStiffness[ncoor. are u x = −κ x y.(1-Ν)/2}}.2 [C:20] Check the rectangular element stiffness closed form given in (E17. Verify (E17. in which Iz = 12 The beam is modeled with one layer of identical 4-node iso-P bilinear quadrilaterals through its height.nu.a.Emat.3. Emat=Em/(1-nu^2)*{{1. u y = 12 κ(x 2 + νy 2 ). The aspect ratio b/a is denoted by γ . b=a/Γ.{nu.1. ClearAll[Em.5).3.{0. b=2. which calls the Mathematica module of Figure E17.0}.Em*h/(24*Γ*(1-Ν^2)). 17–15 (E17." x ".{a.Ν.1.0.Γ]. y} axes placed at the element center as shown in the bottom of Figure E17. p<=4.{a. Print["Gauss integration rule: ". For [p=1. The exact solution of the beam problem (from both the theory-of-elasticity and beam-theory standpoints) is a constant bending moment M along the span.6) . p++.1 with the following script: ClearAll[Em. of what polynomial order in ξ and η are the entries? EXERCISE 17.4 the stiffness matrix does not change and has three zero eigenvalues.p. Emat=Em/(1-Ν^2)*{{1. κ = M/(E Iz ). which is physically incorrect.a. except that here ncoor={ { -a.2.4. Pure bending of Bernoulli-Euler plane beam of thin rectangular cross section. Verify that both σ yy and σx y vanish for any ν.8) This energy can be easily computed by Mathematica by using the first 4 lines of the script of the previous x is formed Exercise. This can be done by computing the strains ex x = ∂u x /∂ x. Then get the stresses σx x . Uquad = 12 (ubeam (E17. it is convenient to decompose that vector as follows: y x + ubeam = 14 κab [ −1 0 1 0 −1 0 1 0 ]T ubeam = ubeam + 18 κ(a 2 + νb2 ) [ 0 1 0 1 0 1 0 1 ]T (E17. ν}. as a plane stress 2D elasticity solution. (c) From Mechanics of Materials.u/2]. (b) Compute the strain energy Uquad = 12 (ubeam )T Ke ubeam absorbed by the 4-node element under nodal displacements ubeam constructed by evaluating (E17. The stiffness equations of the typical rectangular element are given by the close form expression (E17. and that σx x = −E κ y = −M y/Iz . is in full agreement with Bernoulli-Euler beam theory.7) of Chapter 13.{ -a. (a) Check that (E17.{ a. ν. E.5).Chapter 17: ISOPARAMETRIC QUADRILATERALS M y M z b Cross section L h M M y 4 b=γa 3 x 1 2 a Figure E17. The quadrilateral element will be called x-bending exact if it reproduces the beam solution for all {γ .4) in Chapter 13. If vector ubeam in u as a one-dimensional list. where κ is the deformed beam curvature M/E I .7) y Explain why Ke ubeam must vanish and consequently x x )T Ke ubeam . or equation (13.b }.{ a. the strain energy absorbed by the beam segment of length a under a constant bending moment M is Ubeam = 12 Mκa = M 2 a/(2E Iz ) = 17–16 . To simplify this calculation. a and γ because κ = M/(E Iz ) = 12M/(Eha 3 γ 3 ).3–7. e yy = ∂u y /∂ y and 2ex y = ∂u y /∂ x + ∂u x /∂ y.-b }. σ yy and σx y through the plane stress constitutive matrix (E17.Ke.-b }. h. This should come out as a function of M.3) of an isotropic material.6) at the nodes 1.b } }/2. This comparison is distributed into three items. Uquad=Simplify[u. for Exercises 17. The beam is modeled by one layer of 4-node iso-P bilinear quadrilaterals through its height.6).3. The purpose of this Exercise is to compare the in-plane bending response of the 4-node iso-P bilinear rectangle to that of a Bernoulli-Euler beam element (which would be exact for this configuration).4. which agrees with equation (13. Draw conclusions as to the adequacy or inadequacy of the 2D model to capture inplane bending effects. respectively. χ}. χ} and {−χ . A bending-exact element is completely shear-lock-free. that is the 2D model is x-bending exact.12) 1 + 2/γ 2 − ν then r ≡ 1 for all {γ . Evidently r > 1 for all γ if 0 ≤ ν ≤ 12 .6.4. Let the integration rules (I) and (II) be the 1×1 and 2×2 product rules. (2/γ 2 )(1 − ν 2 ) (E17. respectively. (E17.3 is done in both x and y directions. χ }. If r > 1 the 2D model is overstiff. r ≈ 50 and the 2D model gives only about 2% of the correct solution. and if r < 1 the 2D model is overflexible. 10 For a rectangular √ geometry these sample points lie on the diagonals.3. {χ .6.9 r = r (γ . 17–17 . It is not difficult to find β if the element is rectangular and isotropic. Moreover the device is not easily extended to non-rectangular geometries or non-isotropic material. and the concept of shear locking. −χ }.5 [A+C:35] (Advanced) To understand this Exercise please begin by reading Exercise 17.9) (2/γ 2 )(1 − ν 2 ) This happens to be the ratio of the 2D model solution to the exact (beam) solution. and comment on how you might improve results by modifying the discretization of Figure E17. A problem with this idea is that it does not make it y-bending exact because r (γ ) = r (1/γ ) if γ = 1. However the latter is generalized so the sample points are located at {−χ.2 is more effective than weighted integration (covered in the previous exercise) to fully eliminate shear locking.11) Whence show that if 2/γ 2 (1 − ν 2 ) .Exercises 6M 2 /(Eha 2 γ 3 ). for example if a = 10b and ν = 0. 1−ν 2 0 0 1−ν 1−ν 2 1−ν 2 1−ν 0 0 0 0 0 2 2 9 Note that even if we make a → 0 and γ = b/a → ∞ by taking an infinite number of rectangular elements along x. Form the energy ratio r = Uquad /Ubeam and show that it is a function of the rectangle aspect ratio γ = b/a and of Poisson’s ratio ν only: 1 + 2/γ 2 − ν . ν} if the bending test described in Exercise 17.1. Thus the 2D model would not generally converge to the correct solution if we keep one layer through the height. The 4-node rectangular element will be said to be bending exact if r = 1 for any {γ . with weight 1. ν) = EXERCISE 17.10 Consider the stress-strain splitting α β 0 1 ν 0 1−α ν−β 0 E E E β α 0 = + (E17.10) where β is adjusted so that shear locking is reduced or eliminated.4 [A+C:20] A naive remedy to shear locking can be attempted with the weighted integration methodology outlined in §17. Inserting Keβ into the test introduced there verify that r= β(1 + 2γ 2 − ν) . the energy ratio r remains greater than one if ν > 0 since r → 1/(1 − ν 2 ). (E17. β= EXERCISE 17. because overstiffness is due to the bending motion triggering spurious shear energy in the element. This phenomenon is referred to in the FEM literature as shear locking. ν} and the element is x-bending exact. In the case of the standard 2-point Gauss product rule χ = 1/ 3.13) E= ν 1 0 ν−β 1−α 0 = EI + EII . The selective integration scheme outlined in §17. Remedies to shear locking at the element level are studied in advanced FEM courses. Moreover if b << a. r >> 1. Take Keβ = (1 − β)Ke1×1 + βKe2×2 (E17. For the definition of x-bending exact please read the previous Exercise. The material is again assumed isotropic with elastic modules E and Poisson’s ratio ν. {χ. Let Ke1×1 and Ke2×2 denote the element stiffnesses produced by 1×1 and 2×2 Gauss product rules. Hence r = 1 means that we get the exact answer. 6 [A+C:35] (Advanced) A variation on the previous exercise on selective integration to make the isotropic rectangular 4-node element bending exact. Discuss which choices of α reduce χ √ √ to 1/ 3 and 2/3.5 to consider the case of general anisotropic material: E= E 11 E 12 E 13 E 12 E 22 E 23 E 13 E 23 E 33 (E17. research paper level. Integration rule (I) is not changed. As a corollary show that that if α = ν 2 .7 [A+C:40] (Advanced. {0. since the four points are located on the quadrilateral medians.15) √ then χ = 1/ 3 and rule (II) becomes the standard 2×2 Gauss product rule.18) in which β is arbitrary and 1 − α1 = 3χ 2 E 1 |E| = . 0} each with weight 1. β}. 2 C22 = E 22 (E 11 E 33 − E 13 )/|E|.11 Show that if one selects the stress-strain splitting (E17. −χ }.17) The rules for the selective integration scheme are as described in Exercise 17.14) the resulting element stiffness KeI + KeII is bending exact for any {α. (In practice one would select χ = 1/ 3.Chapter 17: ISOPARAMETRIC QUADRILATERALS where α and β are scalars. What are two computationally convenient settings for β? EXERCISE 17.16) the resulting element stiffness KeI + KeII is bending exact for any {α.13) and  χ= 2(1 − ν 2 ) 3(1 − α) (E17.19) Show that the√resulting rectangular element is bending exact for any E and χ = 0. 17–18 . 2 2 3χ C22 22 (E 11 E 33 − E 13 ) 2 2 2 − E 22 E 13 − E 33 E 12 .) 11 This is called a 4-point median rule. (E17. respectively. 2 2 3χ C11 11 (E 22 E 33 − E 23 ) 1 − α2 = 3χ 2 E 1 |E| = . (E17. requires a CAS to be tractable) Extend Exercise 17. Show that if  χ= 1 − ν2 3(1 − α) (E17. |E| = det(E) = E 11 E 22 E 33 + 2E 12 E 13 E 23 − E 11 E 23 2 C11 = E 11 (E 22 E 33 − E 13 )/|E|. The appropriate stress-strain splitting is E = EI + EII = E 11 α1 E 12 β E 13 E 12 β E 22 α2 E 23 E 13 E 23 E 33 + E 11 (1 − α1 ) E 12 (1 − β) 0 E 12 (1 − β) E 22 (1 − α2 ) 0 0 0 0 (E17. which corresponds to the splitting E E= 1−ν 2 1 ν 0 ν 1 0 0 0 1−ν 2 E = 1−ν 2 ν2 β 0 2 0 β ν 0 0 1−ν 2 E + 1−ν 2 1−ν 2 ν−β 0 ν−β 1−ν 2 0 0 0 0 = EI + EII . 0}. {χ . β}. EXERCISE 17.5. χ} and {−χ . However rule (II) has four sample points located at {0. 18 Shape Function Magic 18–1 . . . §18. . . .4. The Nine-Node Biquadratic Quadrilateral §18. . . .2.Chapter 18: SHAPE FUNCTION MAGIC TABLE OF CONTENTS Page §18. References . . . .4. . .1. . . . . . . §18. . . . . . .3. . . . . . . .4. §18.3. . . . . . . . . Hierarchical Corrections . . §18. . . . . .5. .6. . . . . . . . The Four-Node Bilinear Quadrilateral .5. . . . . . . . The Six-Node Quadratic Triangle . . . Requirements Direct Fabrication of Shape Functions Triangular Element Shape Functions §18. . . . . . .5. . Quadrilateral Element Shape Functions §18. . . The Three-Node Linear Triangle . . . §18. . . 18–3 18–3 18–4 18–4 18–5 18–6 18–6 18–7 18–9 18–10 18–10 18–11 18–12 18–14 18–14 18–15 . . . . . . . . §18. . §18. 18–2 . .2. . . *Mathematica Modules to Plot Shape Functions Notes and Bibliography . . . . §18. §18. . . . §18. . .1. . . .3.1. Exercises . . §18. . . . . . . .3. . . . . . . . . . . . . . . . . Transition Element Example . .2.2. The Eight-Node “Serendipity” Quadrilateral Does the Magic Wand Always Work? §18.4.1. . . . through a series of examples. (B) Local support condition. Completeness is a property of all element isoparametric shape functions taken together. A statement equivalent to (C) is that the value of the shape function over a side (in 2D) or face (in 3D) common to two elements must uniquely depend only on its nodal values on that side or face. Direct Fabrication of Shape Functions Contrary to the what the title of this Chapter implies. One can readily verify that all isoparametric shape function sets listed in Chapter 16 satisfy the first two conditions from construction. how isoparametric shape functions can be directly constructed by geometric considerations.1) where L j = 0. . (C) and (D) are consequences of the convergence requirements discussed further in the next Chapter. The interpolation is able to represent exactly any displacement field which is a linear polynomial in x and y. The method is based on the following observation. (D) Completeness condition. (C) Interelement compatibility condition. (18. Requirement (A) follows directly by interpolation from node values. All shape functions of Chapter 16 can be expressed as the product of m factors: Nie = ci L 1 L 2 . Takes a unit value at node i. In all examples given so far the isoparametric shape functions are given as products of fairly simple polynomial expressions in the natural coordinates. the isoparametric shape function Nie associated with node i of element e must satisfy the following conditions: (A) Interpolation condition. and ci is a normalization coefficient.2) are the homogeneous equation of lines or curves expressed as linear functions in the natural coordinates. Vanishes over any element boundary (a side in 2D. m. For a problem of variational index 1. . a face in 3D) that does not include node i.6 it is sufficient to check that the sum of shape functions is identically one. If the element satisfies (B) and (C). 1 Convergence means that the discrete FEM solution approaches the exact analytical solution as the mesh is refined. This is no accident but a direct consequence of the definition of natural coordinates. rather than of an individual one. the isoparametric shape functions listed in Chapter 16 did not come out of a magician’s hat. j = 1.2 DIRECT FABRICATION OF SHAPE FUNCTIONS §18. Satisfies C 0 continuity between adjacent elements over any element boundary that includes node i. 18–3 . in particular. §18. in view of the discussion in §16. .2. (18. They can be derived systematically by a judicious inspection process.1. .1 For the moment these three conditions may be viewed as recipes. and is zero at all other nodes. By “inspection” it is meant that the geometric visualization of shape functions plays a crucial role. a constant value. . Direct verification of condition (C) is also straightforward for those examples. Requirements This Chapter explains.§18. L m . Conditions (B). For two-dimensional isoparametric elements. R5 If local support (R3) and interelement compatibility (R4) are satisfied.1(b) for i = 1. for i = 1.3. 2. §18.1. R4 Check the polynomial order over each side that contains node i. Here symbol L j -k denotes the left hand side of the homogeneous equation of the natural coordinate line that passes through node points j and k. The equation of the triangle side opposite to node i is L j -k = ζi = 0. If the order is n. The three shape functions are simply the triangular coordinates: Ni = ζi . The cubic triangle is dealt with in Exercise 18. The three-node linear triangle: (a) element geometry. R3 Check that Nie vanishes over all element sides that do not contain node i.1) are chosen according to the following five rules. Although this result follows directly from the linear interpolation formula of §15.and three-dimensional elements. The examples that follow show these rules in action for two-dimensional elements. (b) equation of side opposite corner 1. R2 Set coefficient ci so that Nie has the value 1 at the i th node.1) in the construction of shape functions for the linear and the quadratic triangle. it can be also quickly derived from the present methodology as follows. R1 Select the L j as the minimal number of lines or curves linear in the natural coordinates that cross all nodes except the i th node. (c) perspective view of the shape function N1 = ζ1 . The Three-Node Linear Triangle Figure 18.Chapter 18: SHAPE FUNCTION MAGIC (a) (c) (b) 3 3 ζ1 = 0 3 2 1 2 1 1 2 Figure 18.2.1. See Figure 18. j = 2 and k = 3.4. §18. the ingredients in (18.3) . there must be exactly n + 1 nodes on the side for compatibility to hold. (A sui generis “cross the dots” game. 3. Hence the obvious guess is Nie guess = 18–4 ci L i .1 shows the three-node linear triangle that was studied in detail in Chapter 15.1. Essentially the same technique is applicable to one. where j and k are the cyclic permutations of i.) Primary choices in 2D are the element sides and medians. Triangular Element Shape Functions This section illustrates the use of (18. (18.3. check that the sum of shape functions is identically one. ζ3 ) at node 1. Figure 18.6 : ζ1 − 1 2 = 0.2(b.3) we get N1e = c1 ζ1 (ζ1 − 12 ). (18. 0.4.6) To find c1 . 5 and 6).5) Replacing into (18. The local support condition (B) follows from construction: the value of ζi is zero over side j–k. inspection of Figure 18. The equations of the lines that appear in (18.4) are L 2-3 : ζ1 = 0. This value can be adjusted to be unity if c1 is appropriately chosen. Interelement compatibility follows from R4: the variation of ζi along the 2 sides meeting at node i is linear and that there are two nodes on each side.(a) 3 §18. drawn normal to the element in perspective view.7) 18–5 . We require that it takes a unit value there: N1e (1.2.2(b). (b) lines (in red) whose product yields N1e . respectively. The triangular coordinates of this node are ζ1 = 1.3. 2 and 3) and midside nodes (4. §15.2(b) suggests trying N1e guess = c1 L 2-3 L 4-6 . Completeness follows since N1e + N2e + N3e = ζ1 + ζ2 + ζ3 = 1. We select nodes 1 and 4 as representative cases. Consequently we can expect two types of associated shape functions. These functions are illustrated in Figures 18. this holds if ci = 1. The six-node quadratic triangle: (a) element geometry. ζ2 = ζ3 = 0.c) for corner node 1 and midside node 4. For both cases we try the product of two linear functions in the triangular coordinates because we expect the shape functions to be quadratic.4) Why is (18. L 4.2. (18.4) expected to work? Clearly N1e will vanish over 2-5-3 and 4-6. (18. (c) lines (in red) whose product yields N4e . For corner node 1.3 TRIANGULAR ELEMENT SHAPE FUNCTIONS (b) 3 5 6 2 ζ1 = 0 5 6 2 ζ1 = 1/2 4 2 ζ2 = 0 1 1 3 5 6 4 (c) ζ1 = 0 4 1 Figure 18. cf. ζ2 . The Six-Node Quadratic Triangle The geometry of the six-node quadratic triangle is shown in Figure 18. 0) = c1 × 1 × 12 = 1 whence c1 = 2 and finally N1e = 2ζ1 (ζ1 − 12 ) = ζ1 (2ζ1 − 1). while being nonzero at node 1. as is obvious upon inspection of Figure 18.2(a).1(c) depicts N1e = ζ1 . (18. Inspection reveals two types of nodes: corners (1. evaluate N1e (ζ1 . §18.2. This satisfies conditions (A) and (B) except the unit value at node i. This makes the function zero at nodes 2 through 6. are not treated as they are rarely used.Chapter 18: SHAPE FUNCTION MAGIC 3 3 6 6 1 1 5 4 5 4 2 2 N4e = 4ζ1ζ 2 e N1 = ζ 1(2ζ1 − 1) Figure 18. Therefore the element is complete. the triangular coordinates of which are ζ1 = ζ2 = 12 . ζ3 ) = c4 ζ1 ζ2 . The equation of sides L 2-3 and L 1-3 are ζ1 = 0 and ζ2 = 0. inspection of Figure 18.3 shows a perspective view of this shape function.4.1 is verified.5. Therefore the polynomial order over each side is 2. Consider node 1 as typical. with 4.2. Only one type of node (corner) and associated shape function is present. A similar check can be carried out for midside node shape functions.8) satisfies requirements (A) and (B) if c4 is appropriately normalized. To find c4 .5. Over each one the variation of N1e is quadratic in ζ1 . Exercise 16. the compatibility condition (C) of §18. The plot is done over a straight side triangle for programming simplicity. 12 . which are commonly used in computational mechanics serve as examples to illustrate the construction of shape functions. respectively. Figure 18.4. Hence c4 = 4. §18. Because there are three nodes on each boundary. The other two corner shape functions follow by cyclic permutations of the corner index.8) Evidently (18. The other two midside shape functions follow by cyclic permutations of the node indices. respectively. For midside node 4. The Four-Node Bilinear Quadrilateral The element geometry and natural coordinates are shown in Figure 18. as listed in §16. evaluate this function at node 4. Consider node 1. The boundaries containing node 1 and common to adjacent elements are 1–2 and 1–3. Inspection of 18–6 . ζ3 = 0. 0) = c4 × 12 × 12 = 1. such as the bicubic quadrilateral. §18. Figure 18.2.2(c) suggests trying N4e guess = c4 L 2-3 L 1-3 (18. We require that it takes a unit value there: N4e ( 12 . which gives (18.1 verified that the sum of the Ni is unity.4(a).1. Perspective view of shape functions N1e and N4e for the quadratic triangle. ζ2 .3 shows a perspective view.9) N4e = 4ζ1 ζ2 as listed in §16. Therefore N4e (ζ1 . 9 and 8 nodes. Elements with more nodes.3. Quadrilateral Element Shape Functions Three quadrilateral elements. It remains to carry out the interelement continuity check. By construction it vanishes over the sides 2–3 and 3–4 that do not belong to 1.13). Figure 18. (c) perspective view of the shape function N1e .21). For the other three nodes the procedure is the same.4 (a) QUADRILATERAL ELEMENT SHAPE FUNCTIONS η=1 η 3 4 (c) (b) 3 4 4 ξ=1 ξ 3 1 1 1 2 2 2 Figure 18. Because there are two nodes on each side the compatibility condition is satisfied.6.§18. To see this.11) To find c1 . It can be verified that the general expression of the shape functions for this element is Nie = 14 (1 + ξi ξ )(1 + ηi η).13) as listed in §16. Hence c1 = 1 4 (18. ξ = −1 is constant and N1e is a linear function of η. or η − 1 = 0. (b) sides (in red) that do not contain corner 1.12) and the shape function is N1e = 14 (1 − ξ )(1 − η).10) yields N1e (ξ. as shown in (16.2. Figure 18. The equation of side 3-4 is η = 1. Over side 1–3. η = −1 is constant and N1e is a linear function of ξ . The equation of side 2-3 is ξ = 1. The sum of the shape functions is one. Replacing in (18. 3 and 4. The four-node bilinear quadrilateral: (a) element geometry. and can be normalized to unity at node 1 by adjusting c1 .4(b) suggests trying N1e guess = c1 L 2-3 L 3-4 (18. evaluate at node 1. (18. −1) = c1 × 2 × 2 = 4c1 = 1. using N1e as example. 18–7 . (18. Consequently the polynomial variation order is 1 over both sides. the natural coordinates of which are ξ = η = −1: N1e (−1. Over side 1–2. η) = c1 (ξ − 1)(η − 1) = c1 (1 − ξ )(1 − η). Node 1 belongs to interelement boundaries 1–2 and 1–3.4. or ξ − 1 = 0. replace η = −1 in (18.14) The continuity check proceeds as follows. thus the element is complete.4(c) shows a perspective view. traversing the element cyclically. (18.10) This plainly vanishes over nodes 2. (b. respectively. Perspective view of the shape functions for nodes 1.d): lines (in red) whose product makes up the shape functions N1e .c.Chapter 18: SHAPE FUNCTION MAGIC η η=1 3 7 4 6 9 8 1 η=0 4 7 8 9 ξ 5 1 2 3 ξ=0 ξ=1 6 5 2 η=1 η=0 4 7 8 9 ξ = −1 1 η=1 3 4 ξ = −1 ξ=1 6 1 2 ξ=1 6 9 8 5 3 7 5 2 η = −1 Figure 18. N5e and N9e . 5 and 9 of the nine-node biquadratic quadrilateral.5. 4 (a) (b) 7 4 7 8 8 3 3 9 9 1 6 1 6 5 5 2 e N1 (c) = 1 (ξ 4 2 − 1)(η − 1)ξ η e N5 5 (d) 1 8 9 4 9 6 4 7 8 2 = 12 (1 − ξ 2 )η(η − 1) 3 1 7 6 5 3 2 N5e = 12 (1 − ξ 2 )η(η − 1) (back view) N9e = (1 − ξ 2 )(1 − η2 ) Figure 18. 18–8 .6. The nine-node biquadratic quadrilateral: (a) element geometry. (18.4 η 7 4 6 8 1 η=1 η=1 3 4 QUADRILATERAL ELEMENT SHAPE FUNCTIONS ξ 7 3 ξ + η = −1 4 ξ = −1 6 8 7 3 6 8 ξ=1 ξ=1 5 2 1 1 5 5 2 2 Figure 18. (18.d) for nodes 1.c): lines (in red) whose product make up the shape functions N1e and N5e .2. respectively.c. Exercise 16.4.18) and we obtain the shape functions listed in §16. §18. This element has three types of shape functions.6. Here we summarize the calculations for nodes 1. which are taken as representatives of the three types: N1e = c1 L 2-3 L 3-4 L 5-7 L 6-8 = c1 (ξ − 1)(η − 1)ξ η. This element has been widely used in commercial codes since the 70s for static problems. respectively.7. which are associated with corner nodes.2 checks that the sum of shape function is unity.17) Imposing the normalization conditions we find c1 = 14 . 5 and 9. c5 = − 12 . N5e = c5 L 2-3 L 1-4 L 6-8 L 3-4 = c5 (ξ − 1)(ξ + 1)η(η − 1) = c5 (1 − ξ 2 )η(1 − η).6.3.16) N9e = c9 L 1-2 L 2-3 L 3-4 L 4-1 = c9 (ξ − 1)(η − 1)(ξ + 1)(η + 1) = c9 (1 − ξ 2 )(1 − η2 ) (18. §18. The technique has been sufficiently illustrated in previous examples. respectively. midside nodes and center node.7(a).5(b. c9 = 1. The remaining Ni ’s are constructed through a similar procedure.§18. The eight-node serendipity quadrilateral: (a) element geometry. Perspective views are shown in Figure 18.15) (18. 18–9 .3. The Nine-Node Biquadratic Quadrilateral The element geometry is shown in Figure 18. The geometry and node configuration is shown in Figure 18.4. 5 and 9. Verification of the interelement continuity condition is immediate: the polynomial variation order of Nie over any side that belongs to node i is two and there are three nodes on each side.5(a). It is gradually being phased out in favor of the 9-node quadrilateral for dynamic problems. The lines whose product is used to construct three types of shape functions are illustrated in Figure 18. Thus the element is complete. (b. The Eight-Node “Serendipity” Quadrilateral This is an eight-node quadrilateral element that results when the center node 9 of the biquadratic quadrilateral is eliminated by kinematic constraints. 22) Here two normalization coefficients: ci and di . The 8-node quadrilateral has two types of shape functions. which are associated with corner nodes and midside nodes. for instance. c5 = 1 2 (18. the shape function is easily worked out to be N1e = − 18 (1 − ξ )(1 − η)(ξ + η).5. For example. §18. L cm + di L d1 L d2 . The interelement continuity and completeness verification are similar to that carried out for the nine-node element. (18. However. It fails for certain node configurations although it is a reasonable way to start.c). Lines whose products yields the shape functions for nodes 1 and 5 are shown in Figure 18.20) Imposing the normalization conditions we find c1 = − 14 . a combination of two patterns. which are taken again as representative cases. (18. is Nie = ci L c1 L c2 . it violates (C) along sides 1–2 and 4–1.2) is not foolproof.7(b. appear. N1e = c1 L 2-3 L 3-4 L 5-8 = c1 (ξ − 1)(η − 1)(1 + ξ + η) = c1 (1 − ξ )(1 − η)(1 + ξ + η). (18.8(a). If for node 1 one tries the product of side 2–3. . .1)–(18. The first term is 18–10 . It runs into difficulties. . §18. In practice trying forms such as (18.5. one with m factors and one with n factors.21) The other shape functions follow by appropriate permutation of nodal indices. Here are the calculations for shape functions of nodes 1 and 5. . because it varies quadratically over them with only two nodes per side. which employs a combination of terms such as (18.Chapter 18: SHAPE FUNCTION MAGIC (a) (b) 3 4 (c) 3 (d) 3 4 3 4 6 5 1 2 1 4 7 1 2 5 2 6 1 5 2 Figure 18. L dn . Does the Magic Wand Always Work? The “cross the dots” recipe (18. which deals with the 5-node quadrilateral depicted in Figure 18. The development is best done hierarchically. Node configurations for which the magic recipe does not work.19) N5e = c5 L 2-3 L 3-4 L 4-1 = c5 (ξ − 1)(ξ + 1)(η − 1) = c5 (1 − ξ 2 )(1 − η).6. side 3–4. This satisfies conditions (A) and (B).1. in the problem posed in Exercise 18.22) from scratch becomes cumbersome. and are relegated to exercises.8.1). Hierarchical Corrections A more robust technique relies on a correction approach. and the diagonal 2–5–4. ζ3 ) = ζ12 .8(b).1) are obviously the side 2–3: ζ1 = 0. The latter passes through 4 and is parallel to 1–3. 0) = 1 = c1 . Coefficient c1 is determined by requiring that N1e vanish at 4: N1e ( 12 .2. From knowledge of the quadratic triangle midpoint functions.8(a).§18.6 illustrates the procedure for the element of Figure 18. If this is insufficient one more corrective term is added. called the parent element. whence (18. that is obviously ζ1 ζ2 times a coefficient to be determined.8(b. The next subsection works out the element of Figure 18. The second term is then a corrective shape function that vanishes at the nodes of the parent element. Transition Element Example The hierarchical correction technique is useful for transition elements. Note that since N1e = ζ1 (1 − 2ζ2 ). §18. so apply a correction that vanishes at all nodes but 4. Three examples are pictured in Figure 18.d). two and three hierarchical corrections. To proceed hierarchically we start from the shape function for the 3-node linear triangle: N1e = ζ1 . The technique is best explained through examples. 12 . N1 (1. because N1e (ζ1 . 0. 0. This will not vanish at node 4.25) can be constructed as the normalized product of lines ζ1 = 0 and ζ2 = /. The new guess is N1e guess = ζ1 + c1 ζ1 ζ2 .5. (18.24) 1 2 + c1 41 = 0.c. (18.8. The verification of completeness is left to Exercise 18. let us construct the shape function N1e for the 4-node transition triangle shown in Figure 18. for which the one-shot approach works. (18. This varies quadratically but there are only 2 nodes on that side. 18–11 . Thus (18.23) This function N1e = ζ1 (ζ1 − ζ2 ) satisfies conditions (A) and (B) but fails compatibility: over side 1–3 of equation ζ2 = 0.25) This is easily checked to satisfy compatibility on all sides.23) is no good. 0) = c1 = −2 and the shape function is N1e = ζ1 − 2ζ1 ζ2 . and the median 3–4: ζ1 = ζ2 . Exercise 18.8(b). which have corner nodes but midnodes only over certain sides. As part of the opening moves in the shape function game this would be a lucky guess indeed. Accordingly we try N1e guess = c1 ζ1 (ζ1 − ζ2 ). If one goes to a more complicated element no obvious factorization is possible.5 DOES THE MAGIC WAND ALWAYS WORK? taken to be that of a lower order element. and so on. respectively. As an example. Candidate lines for the recipe (18. Shape functions that work can be derived with one. zeta3_]:=4*zeta1*zeta2. The region is assumed to have straight sides to simplify the logic.zc2.f4]. xyc3={Sqrt[3]. Show[ Graphics3D[RGBColor[1.f_.0}. Graphics3D[Line[xytrig]].f4.xyf2.3]==0&&Mod[iz2-1.zc3[[3]]]}.xyf2. Argument Nsub controls the plot resolution while aspect controls the x yz box aspect ratio.f1. Continue[]].005]].6(a. Graphics3D[RGBColor[0.Graphics3D[poly3D].0.Graphics3D[Thickness[.Nsub.0}. zc1=N[{iz1+d+d. f4[zeta1_. d=0.xyf2.Polygon[{xyf1.zc1.Boxed->False] ].xyf1}]]. PlotTriangleShapeFunction[xytrig.y3. PlotTriangleShapeFunction[xytrig. AppendTo[poly3D. The test statements that follow the module produce the shape function plots shown in Figure 18. Do [ Do [iz3=Ni-iz1-iz2.poly3D={}.0}.1/2]. listed in Cell 18.Nsub_.iz2-d. Continue[]].y1.z3}}=Take[xytrig. listed in Cell 18. xyf2={xc.PlotRange->All.y3.1.f[zc3[[1]].1 Mathematica Module to Draw a Function over a Triangle Region PlotTriangleShapeFunction[xytrig_.x3.0. {iz2.{x2.5].zc1[[3]]]}.iz3+d+d}/Ni].xyf1.x3}.1. xc={x1.Graphics3D[line3D].6.d) for the 9-node biquadratic quadrilateral.yc.1/2.3]==0. xyc1={0.zc2.iz3-d}/Ni].002]].y2. η) over a quadrilateral region.zc2[[3]]]}. xc.yc.2. xyc2={3.iz2-d.zc3[[2]].x2. Nsub=16. has been developed to produce perspective plots of shape functions Ni (ξ. yc={y1. The remaining arguments are self explanatory. xytrig=N[{xyc1. ClearAll[f1. Ni=Nsub*3.zc2[[2]].zc2.zeta3_]:=zeta1*(2*zeta1-1).iz1.3]==0&&Mod[iz2+1.xyc2.1.{iz1.Nsub.z1}.1. If [d==0.0]]. ζ3 ) over a triangular region.line3D={}.Line[{xyf1.z2}.z3.zc3.0.xyc1}]. If [iz3<=0.iz3.zeta2_. *Mathematica Modules to Plot Shape Functions A Mathematica module called PlotTriangleShape Functions.{x3. The region is assumed to have straight sides to simplify the logic. zc2=N[{iz1-d.3/2.zc3.aspect}.d}. d=-1]. f1[zeta1_.yc. {{x1. zc3=N[{iz1-d.Chapter 18: SHAPE FUNCTION MAGIC Cell 18.3 for the 6-node quadratic triangle.iz2.z1. If [Mod[iz1-2. xyf1={xc.z2.y2. If [Mod[iz1+2.3]==0.zc1. Graphics3D[Thickness[. ζ2 .y2.b.zc1[[2]].x2.Ni}]. BoxRatios->{1. The test statements that follow the module produce the shape function plots shown in Figure 18. x1. xyf3={xc. §18.aspect_]:=Module[ {Ni.xyc3.xyf3}]].0.xyf3.zc1.f[zc2[[1]].xyf3.zeta2_. has been developed to draw perspective plots of shape functions Ni (ζ1 .Ni-iz1}].y3}. AppendTo[line3D.0]].3].f[zc1[[1]]. Another Mathematica module called PlotQuadrilateralShape Functions.iz3-d}/Ni]. Argument Nsub 18–12 .iz2+d+d.zc3.y1.yc. d= 1]. x2. Nev=Ne[xi.eta]}. f5[xi_.poly3D={}.line3D={}.xyc1}]. Show[ Graphics3D[RGBColor[1.ieta+1/n}]. Nev=Ne[xi.eta].eta.xyc4.eta}=N[{ixi-1/n.f[xi.y4.x4}. {xi.aspect}.z3.6 *MATHEMATICA MODULES TO PLOT SHAPE FUNCTIONS Cell 18.ieta-1/n}].0.Nsub_.z1}.yc.y2.3.y4. xyf4={xc.f1. {xi.Nev.Boxed->False] ].xyf4.y1.Nsub. Graphics3D[Thickness[.eta].eta_]:=(1/2)*(xi-1)*(eta-1)*xi*eta.eta}=N[{ixi-1/n. 18–13 .y4}. xc={x1.xyf4}]]. PlotQuadrilateralShapeFunction[xyquad.xyf3.aspect_]:=Module[ {Ne.Nev. {i.Graphics3D[poly3D]. xyf3={xc.i. AppendTo[line3D.eta}=N[{ixi+1/n.f[xi.xyf2. PlotQuadrilateralShapeFunction[xyquad.eta]}.xyf1. f9[xi_.xyf2.x1.{x4.3.x3.n.{j.Nev.5].Nsub}].Line[{xyf1.2 Mathematica Module to Draw a Function over a Quadrilateral Region PlotQuadrilateralShapeFunction[xyquad_.{x3.1.Graphics3D[Thickness[.0]].ieta-1/n}]. xyquad=N[{xyc1.yc.ixi.(1+xi)*(1-eta).xyf3.f9].eta]. Nev=Ne[xi. n=Nsub. PlotRange->All. f1[xi_.y3. PlotQuadrilateralShapeFunction[xyquad.z1.eta]}. Do [ Do [ ixi=(2*i-n-1)/n.0]]. The remaining arguments are self explanatory.005]].f5. BoxRatios->{1.xyc2.Nev.0}.eta]. AppendTo[poly3D.Polygon[{xyf1.ieta. ieta=(2*j-n-1)/n. ClearAll[f1.y2.ieta+1/n}]. xyc4={0.§18.yc.x2.eta_]:=(1/2)*(1-xi^2)*eta*(eta-1).Nsub.y3.y2. xyc1={0.j.0.1/3].eta_]:=(1-xi^2)*(1-eta^2). Ne[xi_.1/2. Nev=Ne[xi.Nsub.yc.Nev. xyc3={3.Nev.1/2]. (1+xi)*(1+eta).f[xi.0. xi.0.z3}.y1. Graphics3D[Line[xyquad]].yc}. {xi. {xi.{x2.4].f9.1.0}.0}.Nsub}].002]].0}.x3.f5.z4.xyf2.Nev.x4.1.f_. xyf2={xc.z2}.eta]}.y3.(1-xi)*(1+eta)}/4].xyf1}]].z4}}=Take[xyquad.xyc3.Graphics3D[line3D]. xyf1={xc.eta_]:=N[{(1-xi)*(1-eta). Nsub=16. Graphics3D[RGBColor[0.xyf3.f[xi.xc. xyc2={3.eta}=N[{ixi+1/n. {{x1. controls the plot resolution while aspect controls the x yz box aspect ratio.z2.Nev.Nev. yc={y1. although it is mentioned in prior internal reports. References Referenced items have been moved to Appendix R. the first all-FEM meeting that strongly influenced the development of computational mechanics in Generation 2. A comprehensive exposition is given in the textbook by Irons and Ahmad [397]. The quick way of developing shape functions presented here was used in the writer’s 1966 thesis [203] for triangular elements. The key connection to numerical integration was presented in [394]. The qualifier “magic” arose from the timing for covering this Chapter in a Fall Semester course: the lecture falls near Halloween. The earliest published reference seems to be the paper [64]. This was presented in 1965 at the first Wright-Patterson conference.Chapter 18: SHAPE FUNCTION MAGIC Notes and Bibliography The name “shape functions” for interpolation functions directly expressed in terms of physical coordinates (the node displacements in the case of isoparametric elements) was coined by Irons. 18–14 . 4.2/3) 6(0.5(a) by using the diagonal lines 5–8 and 2–9–4 in addition to the sides 2–3 and 3–4. N4e and N0e for the 10-node cubic triangle. Obtain all 8 shape functions and verify that their sum is unity. Add the shape functions (use a CAS and simplify) and verify whether their sum is unity.3 [A/C:15] Complete the above exercise for all nine nodes.1/3) 6 9 0(1/3.2/3) 9(2/3.1/3. N4e and N0e for nodes 1.1. Ten-node cubic triangle for Exercise 18. EXERCISE 18. 18–15 . Perspective plots of the shape functions N1e .4 [A/C:20] Verify that the shape functions N1e and N5e of the eight-node serendipity quadri- lateral discussed in §18.1.Exercises Homework Exercises for Chapter 18 Shape Function Magic EXERCISE 18.2.1. [Hint: each shape function is the product of 3 and only 3 lines.1.1/3) 0 2(0.2/3. (b) Construct the missing 7 shape functions by appropriate node number permutations. and 0 (the interior node is labeled as zero.1/3.1.2. with their triangular coordinates listed in parentheses.0.3 using the module PlotQuadrilateralShapeFunction listed in Cell 18.1/3) 7 8 8(1/3.1/3. 3(0.0. EXERCISE 18. not 10) using the line-product technique. (a) Construct the cubic shape functions N1e .1 [A/C:10+10] The complete cubic triangle for plane stress has 10 nodes located as shown in Figure E18. EXERCISE 18.0.4.2/3. The left picture shows the superparametric element whereas the right one shows the isoparametric version with curved sides.0.] Perspective plots of those 3 functions are shown in Figure E18. 4.5 [C:15] Plot the shape functions N1e and N5e of the eight-node serendipity quadrilateral studied in §18. N1e N4e e N0 Figure E18. For the unit sum check use the fact that ζ1 + ζ2 + ζ3 = 1. EXERCISE 18.0) 4(2/3.2 [A:15] Find an alternative shape function N1e for corner node 1 of the 9-node quadrilateral of Figure 18.3 satisfy the interelement compatibility condition (C) stated in §18.2.1. and verify that the sum of the 10 functions is identically one.0) 2 5(1/3. Show that the resulting shape function violates the compatibility condition (C) stated in §18.0) Figure E18.0) 5 4 1 1(1.1) 3 7(0. η) (i = 1. determining α so that all Ni vanish at node 5. i = 1. EXERCISE 18. η 8 7 5 Construct the (trilinear) shape function for node 1 (follow the node numbering of the figure).4.4 takes the value 14 there. 18–16 .9 [A:15]. Hint: develop N5 (ξ.8 [A:15]. the N1e of Figure 18. 2.2 Find five shape functions Nie .2 by the correction method. Perspective views of N1e and N5e are shown in that Figure. Construct the six shape functions for the 6-node transition quadrilateral element of Figure 18.5. N3 = ζ3 and N4 = 4ζ1 ζ2 .3. Can this be expressed as a line product like (18. Consider the 4-node transition triangular element of Figure 18. Hint: for the corner nodes. Partial result: N1 = 14 (1 − ξ )(1 − η) − 14 (1 − ξ 2 )(1 − η). The equations of the brick faces are: z 4 6 ξ 3 1 1485 : ξ = −1 1265 : η = −1 1234 : µ = −1 x 2376 : ξ = +1 4378 : η = +1 5678 : µ = +1 2 y Figure E18.6 [A:15].3. These coordinates vary from −1 at one face to +1 at the opposite face. Five node quadrilateral element for Exercise 18. they are not the same.4.Chapter 18: SHAPE FUNCTION MAGIC η N1 3 4 N5 ξ 5 1 2 Figure E18. and also verify that their sum is unity. The shape function for node 1.3 must vanish at node 5 (ξ = η = 0). EXERCISE 18. Check compatibility and completeness. η and µ. A five node quadrilateral element has the nodal configuration shown in Figure E18. 3.4. Show that N1e = ζ1 − 2ζ1 ζ2 − 2ζ2 ζ3 . N1 = ζ1 − 2ζ1 ζ2 was derived in §18. An eight-node “brick” finite ele- ment for three dimensional analysis has three isoparametric natural coordinates called ξ . That in Figure E18.1)? 2 Although this N1e resembles the N1e of the 4-node quadrilateral depicted in Figure 18. η) first for the 5-node quad using the line-product method. EXERCISE 18.7 [A:15].10 [A:20].7. then the corner shape functions N¯ i (ξ. Eight-node isoparametric “brick” element for Exercise 18. finally combine Ni = N¯ i + α N5 . EXERCISE 18. Show that the others are N2 = ζ2 − 2ζ1 ζ2 .8(b).6.8(c). µ EXERCISE 18. 4) for the 4-node quad (already given in the Notes). Consider a 5-node transition triangle in which midnode 6 on side 1–3 is missing. 4. 2. On the other hand. Check that N1 + N2 + N3 + N4 + N5 = 1 identically. as sketched in Figure E18. 5 that satisfy compatibility. 3. use two corrections to the shape functions of the 4-node bilinear quadrilateral. Check that compatibility and completeness are verified. I. with shape functions called NiP .11 [A:30].4. C.5. . N1 = ζ12 + 2ζ2 ζ3 . Hint: study §16. 4 and Ni = NiP + β N9P for i = 5. i = 1. (E18.3 result. N2 = ζ22 .2). leads to 4α + 4β = 1.1) (E18. u x9 and u y9 are slaves while boundary DOFs are masters.4.2) Dr. Dr. Mapping of reference triangles under sets (E18. i=1 Solve these two equations for α and β. Furthermore. that set CL1 will work because it is conforming and that set CL2 will work because N1 + N2 + N3 = 1. Exactness of displacement interpolation for ξ 2 and η2 leads to 2α + β = 0. . N3 = ζ32 + 2ζ1 ζ2 . and verify that the serendipity shape functions given in §18. 18–17 . EXERCISE 18. part of triangle 2-3-4 turns "inside out" 4 3 4 2 1 2 4 3 4 2 1 Reference 2 triangular elements Set CL2 2 1 2 Figure E18. EXERCISE 18. Show that the claims are false. and both sets are worthless. show that α and β can be determined by two conditions: 8 Ni = 1. He provides no numerical examples. (In the terminology of Chapter 9. Clueless proposes two sets of quadratic shape functions: CL1: CL2: N1 = ζ12 . N3 = ζ32 . In an effort to improve it. N2 = ζ22 + 2ζ3 ζ1 . . (E18. Another way of constructing shape functions for “incomplete” elements is through kinematic multifreedom constraints (MFCs) applied to a “parent” element that contains the one to be derived. To construct the shape functions of the 8-node serentipity quadrilateral. .12 [A:25]. You get the paper for review. Suppose that the 9-node biquadratic quadrilateral is chosen as parent.) Show that the shape functions of the 8-node quadrilateral are then Ni = NiP + α N9P for i = 1. . The unit sum condition: 2.Exercises 4 3 4 Set CL1 Side 2-4 maps to this parabola. 1. writes a learned paper claiming that both sets satisfy the interpolation condition.6 and Figure E18. EXERCISE 18. Triangles are slightly separated at the diagonal 2–4 for visualization convenience. .2. u y9 = α(u y1 + u y2 + u y3 + u y4 ) + β(u y5 + u y6 + u y7 + u y8 ). 9 given in §18.5.1) and (E18. the motions of node 9 are expressed in terms of the motions of the corner and midside nodes by the interpolation formulas u x9 = α(u x1 + u x2 + u x3 + u x4 ) + β(u x5 + u x6 + u x7 + u x8 ). The three-node linear triangle is known to be a poor performer for stress analysis. .13 [A:25] Construct the 16 shape functions of the bicubic quadrilateral.3) where α and β are scalars to be determined. . 8. M. . 19 FEM Convergence Requirements 19–1 . .3. §19. . .4. . . . . 19–7 §19. . . . . . . . . . . . 19–11 References . . . . .3 Matching and Non-Matching Meshes . . . . . . 19–8 §19.1 Completeness . . . . . . . . . . . .2 §19. . . . . . . . . 19–11 Exercises . . . . . .2 Compatibility .4. . . Overview . . . . . . . . . . . . . . . . . . 19–13 19–2 . . . . . . . . . . . . . . .Chapter 19: FEM CONVERGENCE REQUIREMENTS TABLE OF CONTENTS Page §19. . . . . . . . . 19–3 Consistency Requirements . . . . . . . . . . . . . . . 19–9 Notes and Bibliography . . 19–4 §19. . . .3. . . . . . . . . . .3 §19. . . §19. . . . . . . . . .1 Rank Sufficiency . . . . . . . . . . . . . . . . . 19–4 §19. . . . . . . . .4 §19. . . .3. . . . . . . . . . . . . . .2 Jacobian Positiveness . 19–4 §19.1 §19. 19–6 Stability . . . . 19–3 The Variational Index . . . . . . . Completeness and compatibility are two aspects of the so-called consistency condition between the discrete and mathematical models. The system of finite element equations must satify certain well posedness conditions that preclude nonphysical zero-energy modes in elements. As the mesh is refined. Remark 19. The elements must have enough approximation power to capture the analytical solution in the limit of a mesh refinement process. it states that a numerical scheme for the scalar conservation law. du/dt + d f /d x = 0 converges to a unique (weak) solution. The FEM is based on the direct discretization of an energy functional [u]. This is the FEM analog of the famous Lax-Wendroff theorem.2 THE VARIATIONAL INDEX §19. or (equivalently) the function to be varied.§19. Overview Chapters 11 through 18 have discussed. if it is consistent. More precisely. Physically these insure that no material gaps appear as the elements deform. Compatibility. such gaps would multiply and may absorb or release spurious energy. This Chapter provides unified information on convergence requirements. in piecemeal fashion.1. FEM models in common use that do not satisfy compatibility.1 This attribute is obviously necessary to instill confidence in FEM results from the standpoint of mathematics. Nonetheless. where u (displacements for the elements considered in this book) is the primary variable. The Variational Index For the mathematical statement of the completeness and continuity conditions. 2 Proven originally for classical finite difference discretizations in fluid mechanics. the FEM solution should approach the analytical solution of the mathematical model. stable and conservative. As discussed in Chapter 1. the satisfaction of the three criteria guarantees convergence and may therefore be regarded as a safe choice for the beginner user.2. This m is called the variational index. There are. 19–3 . Stability. 1 Of course FEM convergence does not guarantee the correctness of the mathematical model in capturing the physics. The shape functions should provide displacement continuity between elements. the variational index alluded to in previous sections plays a fundamental role. A deeper mathematical analysis done in more advanced courses shows that completeness is necessary for convergence whereas failure of the other requirements does not necessarily precludes it. This intuitive statement is rendered more precise below.1. for example. A finite element model that passes both completeness and continuity requirements is called consistent. as in the modeling of local singularities. Furthermore.2 which says that consistency and stability imply convergence. There is no equivalent theorem for systems of conservation laws. These requirements can be grouped into three: Completeness. §19. These are motivated by convergence: as the mesh is refined. model verification against experiments is a different and far more difficult problem. as well as the absence of excessive element distortion. Let m be the highest spatial derivative order of u that appears in . numerically unstable models may be used (with caution) in situations where that property is advantageous. requirements for shape functions of isoparametric elements. This is done by evaluating (19. the quadratic transverse displacement v = α0 + α1 x + α2 x 2 (19. Consequently m = 1.2) 0 The highest derivative of the transverse displacement is the curvature κ = v  = d 2 v/d x 2 .  L 1  v  E I v  − qv d x. which is first order in the space coordinate x. This is also the case on the plane stress problem studied in Chapter 14.2.1) 0 The highest derivative of the displacement u(x) is u  = du/d x.3.3) at the nodes to form a displacement vector ue and then checking that u = Ne ue recovers exactly (19. Consequently m = 2.3). In the plane beam problem discussed in Chapter 12. In the bar problem discussed in Chapter 11. §19. This is easily verified in for the 2-node beam element developed in Chapter 13. because the assumed transverse displacement is a complete cubic polynomial in x. For the plane beam problem. (19. we can proceed to state the two key requirements for finite element shape functions.4.3. u y = α0 + α1 x + α2 y (19. A set of shape functions that satisfies this condition is called m-complete. Section 16.Chapter 19: FEM CONVERGENCE REQUIREMENTS Example 19. which is of second order in the space coordinate x. A complete cubic contains the quadratic (19. Completeness The element shape functions must represent exactly all polynomial terms of order ≤ m in the Cartesian coordinates. Example 19.4) as special case. Example 19. Example 19. in which m = 2.1. Suppose a displacement-based element is for a plane stress problem.  L [u] = 1 2 u  E Au  − qu  d x. Note that this requirement applies at the element level and involves all shape functions of the element.3) be exactly represented for any value of the α coefficients. 19–4 .6 presents the details of this calculation for an arbitrary isoparametric plane stress element. because the strains are expressed in terms of first order derivatives of the displacements. in which m = 1. 2 [v] = (19.4) must be exactly represented over the element. Consistency Requirements Using the foregoing definition of variational index. §19.3.1. That analysis shows that completeness is satisfied if the sum of the shape functions is unity and the element is compatible. Then 1-completeness requires that the linear displacement field u x = α0 + α1 x + α2 y. and bars. A conforming element that satisfies the finite energy requirement is said to be compatible. 4-node bilinear quadrilaterals.1(a) contains only one type of element: 3-node linear triangles.1: a shape function for node i should vanish on all sides or faces that do not include i. and element patch. 19–5 . An element endowed with conforming shape functions is said to be conforming.3 3 The FEM literature is a bit fuzzy as regards these terms. The definition is illustrated in Figure 19. quadrilaterals. With the help of these definitions we can enunciate the compatibility requirement as follows. Note that this condition applies at two levels: individual element. labeled i.3. and C 1 inside elements.3 (b) (a) i CONSISTENCY REQUIREMENTS (c) i i 2-node bars Figure 19.1. and is zero beyond it. The patch of Figure 19. and C m piecewise differentiable inside each element. informally “an element that gets along with its neighbors.1. We define a finite element patch trial function as the union of shape functions activated by setting a degree of freedom at the patch node to unity. (c) a mixture of triangles. The patch of Figure 19. This property follows from the local-support requirement stated in §18.2. A conforming expansion that satisfies the second requirement is said to be of finite energy. it is convenient to introduce the concept of element patch. A set of shape functions that satisfies the first requirement is called conforming. and 2-node bars. An element patch is the set of all elements attached to a patch node. called the patch node. It seems better to leave the qualifier “conforming” to denote interelement compatibility. §19.§19. This is the set of all elements attached to a given node. the patch trial functions must be C 0 continuous between elements.1(c) combines three element types: 3-node linear triangles. If the variational index is m = 1.1(b) mixes two plane stress element types: 3-node linear triangles and 4-node bilinear quadrilaterals. while all other freedoms are zero.” The qualifier “compatible” is used in the stricter sense of conforming while possessing sufficient internal smoothness. (b) a mixture of triangles and quadrilaterals. A patch trial function “propagates” only over the patch. Patch trial functions must be C (m−1) continuous between interconnected elements. (a) illustrates a patch of triangles. The patch of Figure 19. or simply patch. Compatibility To state this requirement succintly. which shows three different kind of patches attached to patch node i in a plane stress problem. 1(b. This generality poses some logistical difficulties because the condition is necessarily mesh dependent. of little practical interest.e. In (d. Examples of 2D non-matching meshes. Compatibility can be checked at the element level by restricting attention to matching meshes. This simplified criterion is the one used in previous Chapters. the check is far more involved and trickier because continuity of normal derivatives along a side is involved. and then to the side shared by these elements.3. Then a polynomial variation of order up to k − 1 in the natural coordinate(s) can be specified uniquely over the side. Remark 19. compatibility refers to the complete finite element mesh because mesh trial functions are a combination of patch trial functions. if the shape functions are polynomials. as in the case of plates and shells. This is sufficient to verify interelement compatibility for m = 1. This practically important scenario is examined in advanced FEM treatments.1.c) illustrates the fact that one needs to check the possible connection of matching elements of different types and possibly different dimensionality. Figures 19. Interelement boundaries that fail matching conditions are shown offset for visualization convenience. For a matching mesh it is sufficient to restrict consideration first to a pair of adjacent elements. leading to violations of C 0 continuity.2. as in the patches shown in Figure 19. 19–6 . on the other hand. Suppose that the variation of a shape function along that side is controlled by k nodal values.2. A matching mesh is one in which adjacent elements share sides.b. If the variational index is m = 2 and the problem is multidimensional. Specific 2D examples were given in Chapters 15 through 18. nodes and degrees of freedom. §19.c) some nodes do not match. implying C 0 continuity. In (a.Chapter 19: FEM CONVERGENCE REQUIREMENTS (a) (b) (c) 3-node bars (e) (f) (d) Figure 19.3. which in turn are the union of element shape functions. Matching and Non-Matching Meshes As stated. The case of non-polynomial shape functions is.f) nodes and DOFs match but some sides do not. but element types are different. Even if the meshes match at initial contact. etc.§19... slipping may produce a nonmatching mesh in the deformed configuration... in which case even more variety can be expected... For example.. Example of a 3D non-matching mesh. are outside the scope of this book). lower portion with bricks..4 illustrates what happens in a problem of slipping contact.3. 19–7 . Initial shape Deformed shape ... Nonmatching meshes are the rule rather than the exception in contact and impact problems (which.. As can be seen there is a wide range of possibilities: nonmatching nodes.3 depicts a three-dimensional example.2.4. Figure 19. if the only motions that produce zero internal energy in the mathematical model are rigid body motions. .5. Top portion discretized with tetrahedra... matching meshes are the exception rather than the rule.4 STABILITY Mesh of tetrahedra Common surface Mesh of bricks Figure 19. being geometrically nonlinear. §19..4... See Figure 19... In multiphysics simulations nonmatching meshes are common. leading to violation of C 0 continuity.. Figure 19.. since they are often prepared separately for the different physical components. Nodes and boundary-quad edges and DOFs match.. A mesh that does not satisfy the matching criteria stated above is called a nonmatching mesh. Stability Stability may be informally characterized as ensuring that the finite element model enjoys the same solution uniqueness properties of the analytical solution of the mathematical model. In contact and impact problems. Several two-dimensional examples are shown in Figure 19. matching nodes but different element types. as illustrated in Figure 19.. .. as illustrated in the figure. .......... n E n G must equal or exceed n F − n R : n E nG ≥ n F − n R (19. Stability is not a property of shape functions per se but of the implementation of the element as well as its geometrical definition. and n R be the number of independent rigid body modes. In the latter case. while n E denotes the order of the stress-strain matrix E. the finite element model must inherit that property. the rank deficiency is defined by d = (n F − n R ) − r (19. (ii) Matrix E is of full rank.5) If an isoparametric element is numerically integrated. In the present outline we are concerned with stability at the element level. let n G be the number of Gauss points. Rank Sufficiency The element stiffness matrix must not possess any zero-energy kinematic mode other than rigid body modes. rank sufficiency is the most important one.5)2 .Chapter 19: FEM CONVERGENCE REQUIREMENTS Fluid Structure Figure 19.7) from which the appropriate Gauss integration rule can be selected. Let n F be the number of element degrees of freedom.1.6) r = min(n F − n R . n E n G ) To attain rank sufficiency. If the meshes are independenly prepared node locations will not generally match. Let r denote the rank of Ke . n E = 3 because E is a 3 × 3 matrix of elastic moduli. §19. It involves two subordinate requirements: rank sufficiency. The element is called rank sufficient if r = n F − n R and rank deficient if r < n F − n R . Two additional assumptions are made: (i) The element shape functions satisfy completeness in the sense that the rigid body modes are exactly captured by them. Two-dimensional model to simulate flow around a thin plate. as in this example of fluid-structure interaction (FSI).5. Also n R = 3.4. including individual elements. this property is required to hold at the element level. Consequently r = min(n F − 3. up to a maximum of n F − n R . 3n G ) and 3n G ≥ n F − 3. Since FEM can handle arbitrary assemblies of elements. see equation (14. Then each Gauss point adds n E to the rank of Ke . Nonmatching meshes are common in multiphysics problems. Of these. and Jacobian positiveness. In the plane stress problem. This can be mathematically expressed as follows. Hence the rank of Ke will be (19. 19–8 . 2.6.) symmetric matrix. n F = 2n > 3 is the number of element freedoms. which has rank 3 if wi > 0. Then n F = 2 × 6 = 12. n G ≥ 5. Let B be a n E ×n F rectangular real matrix with rank r B ≤ n E . The fact that each Gauss point adds n E n G to the rank can be proven considering the following property. Thus B has rank 3 and a fortiori BT E B must also have rank 3 since E is p. respectively. A 3-point Gauss rule. Hence a 3 × 3 rule. By a theorem of linear algebra. The 2 × 2 product Gauss rule is insufficient because n G = 4. Therefore B u = 0.§19. Table 19.5. n G ≥ 3. If BT E B u = 0 then 0 = uT BT E B u = ||E1/2 B u||. Example 19.6.2.4 STABILITY Table 19. and E an n E ×n E positive-definite (p. is added to Ke . Consider a plane stress 9-node biquadratic quadrilateral. Then the rank of BT E B is r B . To attain the proper rank of 12 − n R = 12 − 3 = 9. makes the element rank sufficient. Identify now B and E with the strain-displacement and stress-strain (constitutive) matrix. Example 19. Remark 19. Consider a plane stress 6-node quadratic triangle. such as the midpoint rule defined in §24.3.d. which yields n G = 9.d. is required to attain rank sufficiency. 19–9 . 3 3 4 4 1 2 1 3 3 4 2 1 3 4 2 1 2 4 1 2 Figure 19. Effect of displacing node 4 of the four-node bilinear quadrilateral shown on the leftmost picture. to the right. To attain the proper rank of 18 − n R = 18 − 3 = 15.1 Rank-sufficient Gauss Rules for Some Plane Stress Elements Element n nF nF − 3 Min n G Recommended rule 3-node triangle 6-node triangle 10-node triangle 4-node quadrilateral 8-node quadrilateral 9-node quadrilateral 16-node quadrilateral 3 6 10 4 8 9 16 6 12 20 8 16 18 32 3 9 17 5 13 15 29 1 3 6 2 5 5 10 centroid∗ 3-point rules∗ 6-point rule∗ 2x2 3x3 3x3 4x4 ∗ These triangle integration rules are introduced in §24. Then n F = 2 × 9 = 18. Proof: let u = 0 be a non-null n F -vector.1 collects rank-sufficient Gauss integration rules for some widely used plane stress elements with n nodes and n F = 2n freedoms. the rank of Ke increases by 3 until it reaches n F − n R . At each Gauss point i a contribution of wi BT E B. In the plane stress case n E = 3. This clearly contradicts the erroneous advice of some FE books. The non-corner nodes (midside.20).2.Chapter 19: FEM CONVERGENCE REQUIREMENTS §19. The requirement J > 0 is equivalent to saying that corner nodes must be positioned and numbered so that a positive area A > 0 results.4. is positive everywhere. Jacobian Positiveness The geometry of the element should be such that the determinant J = det J of the Jacobian matrix defined4 in §17. The quadrilateral gradually morphs from a convex figure into a nonconvex one. 4 This definition applies to quadrilateral elements. For higher order elements proper location of corner nodes is not enough. note that the metric near node 4 is badly distorted (in fact J = 0 there) rendering the element unacceptable.7. 19–10 . It is easily checked by a finite element program. Effect of moving midpoint 5 of a 9-node biquadratic quadrilateral tangentially toward corner 2. This is called a convexity condition.2.6 for a 4-node quadrilateral in which node 4 is gradually moved to the right. The Jacobian determinant of an arbitrary triangular element is defined in §24. 3 3 7 7 4 7 4 6 6 9 9 8 8 2 5 8 1 2 5 1 3 5 3 7 4 6 7 4 6 9 4 6 9 9 8 8 5 2 2 3 7 1 4 6 9 1 3 8 1 5 2 1 5=2 Figure 19. The center figure is a triangle. which state that quadrilaterals can be reduced to triangles as special cases. For a three-node triangle J is constant and in fact equal to 2A. J characterizes the local metric of the element natural coordinates. As illustrated in Equation (17.2. etc. But for 2D elements with more than 3 nodes distortions may render portions of the element metric negative. thereby rendering triangular elements unnecessary.) must be placed sufficiently close to their natural locations (midpoints. interior. This is illustrated in Figure 19. Notes and Bibliography The literature on the mathematics of finite element methods has grown exponentially since the monograph of Strang and Fix [705].7 and 19. outwards in the last four. The subjects collected in this Chapter tend to be dispersed in recent monographs and obscured by overuse of functional analysis. Figure 19. the metric at corner 2 becomes singular in the sense that J = 0 there. 3 3 Notes and Bibliography 3 3 5 6 5 6 5 6 5 6 4 4 3 4 5 1 2 5 3 5 6 2 1 4 2 6 3 6 2 1 2 1 2 1 1 1 2 4 4 4 Figure 19. Effect of displacing midpoints 4. When the location of 5 reaches the quarter-point of side 1-2.8. 5 and 6 of an equilateral 6-node triangle along the midpoint normals. etc. as illustrated in Figure 19.7 depicts the effect of moving midside node 5 tangentially in a 9-node quadrilateral element while keeping all other 8 nodes fixed.8.§19.) to avoid violent local distortions. centroids. The effect of midpoint motions in quadratic elements is illustrated in Figures 19. This depicts a 6-node equilateral triangle in which midside nodes 4.8. In the lower leftmost picture nodes 1 through 6 lie on a circle. it has applications in the construction of special “crack” elements for linear fracture mechanics. the element may be even morphed into a “parabolic circle” (meaning that nodes 1 through 6 lie on a circle) without the metric breaking down. As shown in the lower left picture. 5 and 6 are moved inwards and outwards along the normals to the midpoint location. Motion is inwards in first two top frames. This is very readable but out of print. A more up-to-date exposition is the textbook by Szabo and Babuska [721]. Although this is disastrous in ordinary FE work. Displacing midside nodes normally to the sides is comparatively more forgiving. 19–11 . Chapter 19: FEM CONVERGENCE REQUIREMENTS References Referenced items have been moved to Appendix R. 19–12 . 6 [A/C:35] Repeat Exercise 19. EXERCISE 19. 27.7. For simplicity.7). 1 and 0 at nodes 1. EXERCISE 19. Show that the minimum α’s (minimal in absolute value sense) for which J = d x/dξ ¯ vanishes at a point in the element are ±1/4 (the quarter-points). respectively. The correct number of rigid body modes is 6. 19–13 .1) Here ξ is the isoparametric coordinate that takes the values −1. EXERCISE 19.e.5 [A/C:35] (Requires use of a CAS help to be tractable). 20.6. (This result has application in fracture mechanics modeling.7).1 [D:20] Explain why the two-dimensional meshes pictured in Figure 19. Discuss the range of motion for which det J > 0 within the element. and 9 at the center of the square. Each Gauss integration point adds 6 to the rank.4 [A:20] Consider three dimensional solid “brick” elements with n nodes and 3 degrees of freedom per node so n F = 3n. find the minimal rank-preserving Gauss integration rules with p points in the longitudinal direction if the number of node points is n = 2. N E = 6. By applying (19. This result is important in the construction of “singular elements” for fracture mechanics. Partial answer: for n = 27 the minimal rank preserving rule is 3 × 3 × 3. Each Gauss integration point adds 1 to the rank. etc) if the number of node points is n = 8. By applying (19. Repeat Exercise 19. nodes 5.8 are at the midpoint of the sides 1–2. 1×1×1. 3 or 4. or 64.2 [A:20] The isoparametric definition of the straight 3-node bar element in its local system x¯ is   1 x¯ v¯  = 1 x¯1 u¯ 1 1 x¯2 u¯ 2 1 x¯3 u¯ 3  N1e (ξ ) N2e (ξ ) N3e (ξ )  .f) fail interelement compatibility although nodes and DOFs match. Interpret this result as a singularity by showing that the axial strain becomes infinite at a an end point. that is N E = 1. while N1e .3 and listed in (E16.2). EXERCISE 19. x¯2 = L. x¯3 = 12 L + αL.) EXERCISE 19.Exercises Homework Exercises for Chapter 19 FEM Convergence Requirements EXERCISE 19. take x¯1 = 0.5 but moving node 5 along the normal to the side. 3–4 and 4–1. Here L is the bar length and α a parameter that characterizes how far node 3 is away from the midpoint location x¯ = 12 L.2 for a 9-node plane stress element. N2e and N3e are the shape functions found in Exercise 16. find the minimal rank-preserving Gauss integration rules with p points in each direction (that is. (E19. that is. EXERCISE 19. The element is initially a perfect square. Displace 5 tangentially towards 2 until the Jacobian determinant at 2 vanishes. respectively. 2 and 3.2(d. 2×2×2. The correct number of rigid body modes is 1.7 [A:20] Discuss whether the deVeubeke triangle presented in Chapter 15 satisfies completeness and interelement-compatbility requirements.3 [A:15] Consider one dimensional bar-like elements with n nodes and 1 degree of freedom per node so n F = n. 2–3. 20 Implementation of One-Dimensional Elements 20–1 . . . . . . . . §20. . . . §20. . . . . .Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS TABLE OF CONTENTS Page §20. . . . . . . . . . §20. . . . . .2 Rigid Link Transformation . . .3 Direct Fabrication of Offset Beam Stiffness . . . . . . . §20. . . . . . . . . . . . . . .2 Beam Stacks Allowing Interlayer Slip . . . . . .3. . . . . . . . §20. . . .1 Plane Beam-Column Stiffness Matrix . .1 SpaceBarStiffness Matrix . . . . .5 §20. . .5. 20–2 20–3 20–3 20–3 20–4 20–5 20–6 20–6 20–7 20–8 20–8 20–9 20–9 20–11 20–11 20–12 20–13 20–14 20–15 20–17 20–18 20–18 20–20 20–20 20–21 . . . . . . . . . . . . . .4 §20. . . . . . .4. . . . The Plane Beam-Column Element . . . . . . . . . . . . .2. . . . . .2 Plane Beam Column Stiffness Module . .1 Space Beam Stiffness Matrix . . §20. . .6 §20.3 Testing the Plane Beam-Column Module . . §20.6. . . . . . . . . .3. . .2. . .2. .1. . . . . . . . . Exercises .1 §20.2 §20. . . . . . . . . . Notes and Bibliography . . . .6. . . §20. . . . . . . §20. . .1. . .1 Layered Beam With No Interlayer Slip . . . . . . . . The Plane Bar Element . . . . . . §20. .2 Plane Bar Stiffness Module . . .3 §20. . . . . . §20. . . . . . . . . The Space Beam Element . . . *Plane Beam With Offset Nodes . . . . §20. . . . . §20. . . . . . . §20. . §20. . The Space Bar Element . . . . . . . . . .3 Testing the Plane Bar Module . .4. . . . . . . . . . . .5. . . *Layered Beam Configurations .1 Plate Reinforced With Edge Beams . . . §20. .3 Testing the Space Bar Module . . . . . .2 Space Bar Stiffness Module . . . .2 Space Beam Stiffness Module . . . . . . . . . . §20.4. . . . . . . .3. . . .1. . . . . . . .1 Plane Bar Stiffness Matrix . . . . . . §20.1. Specific examples of this Chapter illustrate the programming of one-dimensional elements: bars and beams. s = sin ϕ = y21 /.2. y2 ) e was studied in Chapters 2-3 for modeling plane trusses.1. and ϕ is the angle formed by x¯ and x. in which x21 = x2 −x1 . yi }. prismatic plane bar element is done by Mathematica module PlaneBar2Stiffness. Both are taken to be constant over the element. using Mathematica as implementation language.1) ue =  y1  .1:  2    c sc −c2 −sc x21 x21 x21 y21 −x21 x21 −x21 y21 E A  sc s 2 −sc −s 2  E A  x21 y21 y21 y21 −x21 y21 −y21 y21  Ke =  2 = 3   . y21 = y2 −y1 . (20. Em. Plane bar element. two-dimensional bar element 2 (x 2 .2) is preferable in a computer algebra system because it enhances simplification possibilities when doing symbolic work. For stiffness computations. §20. A. respectively.1. 2 of the two end nodes. i = 1. fe =  y1  . Plane Bar Stiffness Module The computation of the stiffness matrix Ke of the two-node. The Plane Bar Element x− The two-node. A constant ϕ two nodes and four degrees of freedom.1. y} coordinates is given by the explicit expression derived in §3.§20.3) . u y2 f y2 The element geometry is described by the coordinates {xi .1 for conveniency.  = x21 + y21 .2) 2 −c −sc c sc −x21 x21 −x21 y21 x21 x21 x21 y21   −sc −s 2 sc s 2 −x21 y21 −y21 y21 x21 y21 y21 y21  2 2 Here c = cos ϕ = x21 /. and gradually builds up toward more complex models and calculations.1. u x2 f x2 Figure 20. This is listed in Figure IFEM:Ch20:fig:PlaneBarStiffMatrixModule. and is the one actually implemented in the module described below. measured from x positive counterclockwise — see Figure 20. §20. It begins with simple topics. The module is invoked as Ke = PlaneBar2Stiffness[ncoor. the only material and fabrication properties required are the modulus of elasticity E = E e and the cross section area A = Ae . The element y node displacements and conjugate forces are 1 (x 1 . It is organized in “bottom up” fashion. It has E.1.  =L y− It is reproduced in Figure 20. Plane Bar Stiffness Matrix The element stiffness matrix in global {x. This Part deals with the computer implementation of the Finite Element Method for static analysis. such as programming of bar and beam elements.1 THE PLANE BAR ELEMENT This Chapter begins Part III of the course. prismatic. options] 20–3 (20. The second expression in (20. y1 )     u x1 f x1 x u  f  (20. y21. 0. 40).-y21*y21. 48. L=PowerExpand[L]].Em_. If [!numer. Ke= PlaneBar2Stiffness[ncoor.numer.L}]].40}}. A list of processing options.{x2.options_]:= Module[ {x1.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS PlaneBar2Stiffness[ncoor_.LL.3.Chop[Eigenvalues[N[Ke]]]]. 48. {-y21*x21.-x21*x21.Em. 0. 0. 0) and (30.y21. {0. If [numer. If True the computations are carried out in floating-point arithmetic.EA. ClearAll[A.Ke}.4. − 64. {-x21*x21.A_. y21*x21. 64.Simplify[Chop[Transpose[Ke]-Ke]]].LL.Em. − 36.EA. 0} Symmetry check={{0. − 36.-y21*y21}. The script shown on the top of Figure 20. 0. 0. {numer}=options. Elastic modulus. Em=1000.{True}]. Print["Numerical Elem Stiff Matrix: "]. Print[Ke//MatrixForm]. 20–4 . 48.y2 } }.x2. L=Sqrt[LL].3 tests a numerically defined element with end nodes located at (0.x21. Figure 20.3. Print["Eigenvalues of Ke=". A=5. x21*x21. Eigenvalues of Ke = {200.-x21*y21}.0}. The module returns the 4 × 4 element stiffness matrix as function value. 0. Executing the script produces the results listed in the bottom of that figure. Mathematica stiffness module for a two-node. LLL=Simplify[LL*L]. {0.. If False symbolic processing is assumed.y1}.y1. {{x1.L. This is a logical flag with the value True or False.L}=N[{x21. The arguments are ncoor Em A options Node coordinates of element arranged as { { x1. { y21*x21. 0}. x21*y21}. 0.-y21*x21.3 and 20.1.y1 }.y2-y1}. Print["Symmetry check=".{30. 0}} Figure 20. Return[Ke]]. A = 5.LLL.-x21*y21. {x21. − 48. EA=Em*A.LL.{ x2. x21*y21. LL=x21^2+y21^2. 0. 0}. Cross section area. prismatic plane bar element. For this element is has only one entry: { numer }. 48. {0. Numerical Elem Stiff Matrix: 36. with E = 1000. 0. 0. − 48. ncoor={{0. − 48.L]. Testing the Plane Bar Module The modules are tested by the scripts listed in Figures 20. §20. Ke=(Em*A/LLL)*{{ x21*x21.y21. 0}. Test of plane bar stiffness module with numerical inputs. − 48. 64. and numer set to True. − 64.2. y21*y21.{x21.A.EA.y2.y2}}=ncoor. y21*y21}}. 36.y21}={x2-x1. 0) and (L . As expected three eigenvalues.Em.kfac. fe =  z1  . A constant y 2 (x 2 . Print["Symbolic Elem Stiff Matrix: "]. prismatic. 0.z 1 ) E. which is aligned with the x axis.z 2 ) x  = Le z Global system Figure 20.  u x2   f x2      u y2 f y2 u z2 f z2 (20.Em.L]. this section describes the implementation of the space bar element. Properties E and A are kept symbolic. The symmetry of Ke is checked by printing (Ke )T − Ke upon simplification and chopping.Ke//MatrixForm].A." ". ncoor={{0. as can be observed in the printed results. The script of Figure 20. One thing to be noticed is the use of the stiffness scaling factor E A/. Print["Eigenvalues of Ke=".Eigenvalues[Ke]]. which correspond to the three independent rigid body motions of the element. The space (3D) bar element. Executing the script shown in the top of Figure 20. Test of plane bar stiffness module with symbolic inputs. This is a symbolic quantity that can be extracted as factor of matrix Ke .0}. space bar element is pictured in Figure 20."*". 0). Ke=Simplify[Ke/kfac]. Symbolic Elem Stiff Matrix: 1 0 −1 0 0 0 0 0 A Em L −1 0 1 0 0 0 0 0 Eigenvalues of Ke = A Em ∗{0.5. the stiffness matrix returned in Ke is printed.4 tests a symbolically defined bar element with end nodes located at (0.2 THE SPACE BAR ELEMENT ClearAll[A.y 2 . The two-node. are zero. kfac=Em*A/L.0}}. Its four eigenvalues are computed and printed.4 produces the results shown in the bottom of that figure. The effect is to clean up matrix and vector output.5. §20. 2} L Figure 20.§20.{L. The element node displacements and conjugate forces are arranged as     u x1 f x1  u y1   f y1      u   f   ue =  z1  . 0. The Space Bar Element To show how the previous implementation extends easily to three dimensions.{False}].2. Print[kfac. called kfac in the script. The remaining eigenvalue is positive and equal to E A/. Ke= PlaneBar2Stiffness[ncoor.4. On return from PlaneBar2Stiffness.4) − y − z 1 (x1 .y1 . The element has two nodes and six degrees of freedom. 20–5 x− . The element geometry is described by the coordinates {xi . A. SpaceBarStiffness Matrix For the  space bar element.-z21*z21}. Both are assumed to be constant over the element.EA.-z21*x21. { y21*x21. Space Bar Stiffness Module The computation of the stiffness matrix Ke of the two-node. §20.6.{ x2.z21.z2-z1}. {numer}=options.EA.-y21*z21}.-x21*y21. LLL=Simplify[LL*L]. Module to form the stiffness of the space (3D) bar element.z21.-z21*y21. The module is invoked as Ke = SpaceBar2Stiffness[ncoor.y21. y21*z21. y21*z21}. x21*y21.1. {-y21*x21. It can be shown1  = x21 given by  x21 y21 x21 x21 y21 y21  x21 y21 e e  A E y21 z 21  x21 z 21 Ke =  3 −x x −x   21 21 21 y21  −x21 y21 −y21 y21 −x21 z 21 −y21 z 21 that the element stiffness matrix in global coordinates is x21 z 21 x21 z 21 z 21 z 21 −x21 z 21 −x21 z 21 −z 21 z 21 −x21 x21 −x21 y21 −x21 z 21 x21 x21 x21 y21 x21 z 21 −x21 y21 −y21 y21 −y21 z 21 x21 y21 y21 y21 y21 z 21  −x21 z 21 −y21 z 21   −z 21 z 21  .Em_. is done by Mathematica module SpaceBar2Stiffness.{x21. Return[Ke].z2.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS SpaceBar2Stiffness[ncoor_.z1}.z2}}=ncoor.x2.z1.y1.6) The arguments are ncoor Node coordinates of element arranged as { { x1.x21. x21*z21}. options] (20. x21*x21. y21*y21.-x21*z21}. y21 = y2 − y1 .y1. z21*x21. y21*y21.y2-y1.-y21*y21. because it enhances simplification possibilities.z21}={x2-x1. z 21 = z 2 − z 1 and 2 2 2 + y21 + z 21 .-y21*x21. the two properties required for the stiffness computations are the modulus of elasticity E and the cross section area A.L}]]. { z21*x21. L=PowerExpand[L]]. Figure 20.y2.y21.-x21*y21.-z21*y21.y21.z21. 1 The derivation was the subject of Exercise 6. L=Sqrt[LL].2.A_. LL=x21^2+y21^2+z21^2. x21*z21. i = 1.y1.6.LL. z21*z21}}. {{x1. This is listed in Figure 20.LLL. Ke=(Em*A/LLL)* {{ x21*x21. yi . {-x21*x21. introduce the notation x21 = x2 − x1 . 2 of the two end nodes. If [numer.numer. {-z21*x21. 20–6 . As in the case of the plane bar.2.options_]:=Module[ {x1. §20. z21*y21.Ke}.y21. y21*x21. z21*y21. z i }.LL.-y21*y21.L}=N[{x21. x21*y21.y2.-x21*x21.-x21*z21.z1 }.L.y2.{x21. ].2. z21*z21. EA=Em*A. Em.{x2.z2 } }.-y21*z21.10.5) This matrix expression in terms of coordinate differences is useful in symbolic work.EA. If [!numer. x21 z 21   y21 z 21 z 21 z 21 (20.LL. prismatic space bar element.-z21*z21. 2*L}/3}. 120. Print["Numerical Elem Stiff Matrix: "]. 180. − 60. 120. If True the computations are carried out in floating-point arithmetic. − 90. 0. − 40. 90. Ke= SpaceBar2Stiffness[ncoor.8. 60. 120.Eigenvalues[Ke]]. A=10.2. − 90.{2. For this element is has only one entry: { numer }.Em].{False}].Ke//MatrixForm]. − 120.A." ". 20–7 .Chop[Eigenvalues[Ke]]]. 0. If False symbolic processing is assumed.. ncoor={{0.7. 0. 180. 0. Testing the space bar stiffness module with symbolic inputs. Testing the space bar stiffness module with numerical inputs. − 40. 0} − 120. 0. Print["Symbolic Elem Stiff Matrix: "]. − 180. §20. − 360. Testing the Space Bar Module The modules are tested by the scripts listed in Figures 20. − 120. Print["Eigenvalues of Ke=". 40.2*L. − 60. 90. The module returns the 6 × 6 element stiffness matrix as function value. Numerical Elem Stiff Matrix: 40. 0.2 THE SPACE BAR ELEMENT ClearAll[A.Em.6}}. Symbolic Elem Stiff Matrix: 1 2 2 −1 −2 −2 2 4 4 −2 −4 −4 4 4 −2 −4 −4 A Em 2 9L −1 −2 −2 1 2 2 −2 −4 −4 2 4 4 −2 −4 −4 2 4 4 A Em Eigenvalues of Ke = ∗ {0. 60. 360. 360. − 120.§20. Print[Ke//MatrixForm]. Figure 20. Em=343.0. 120. 0.0}. kfac=Em*A/(9*L).kfac. ncoor={{0.0.7 and 20.Em. − 180. ClearAll[A. A list of processing options."*".A. − 60.Em. − 180.L]. Ke=Simplify[Ke/kfac]. Em A options Elastic modulus. Print["Eigenvalues of Ke=".{True}]. Cross section area. Print[kfac. 0. 18} 9L Figure 20. − 60. − 180.8. 60. As these are similar to previous tests done on the plane bar they need not be described in detail. − 360. Ke= SpaceBar2Stiffness[ncoor.{L.3. Eigenvalues of Ke = {980.0}.3. 180. 180. This is a logical flag with the value True or False. 60. We consider a beam-column element in its local system (x. Note the use of a stiffness factor kfac of E A/(9) to get cleaner printouts. (20. A = 5 and numer set to True. Executing the script produces the results shown in the bottom of that Figure.  u¯ x2   u¯ x2   u x2   f x2          u¯ y2 u¯ y2 u y2 f y2 θz2 m z2 θz2 m z2 The rotation angles θ and the nodal moments m are the same in the local and the global systems because they are about the z axis. 2L)/3. The script of Figure 20. i = 1. 0) and (L .9(b). y1 ) x Figure 20. The element geometry is described by the coordinates {xi . yi }. Executing the script produces the results listed in the bottom of that Figure. (b) in the global system. I constant zz 2 (x 2 . fe =  z1  . 0) and (30.7 tests a numerically defined space bar with end nodes located at (0. Plane Beam-Column Stiffness Matrix 20–8 . y2 )  y− 2 1 x− 1 (x 1 . A.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS − y u−y1 u−x1 u−x2 (a) θz1 (b) θz2 u−y2 x− e  =L ϕ y E. 0. ¯f =  z1  . y) as shown in Figure 20. The script of Figure 20. 40. The element length is  = L e . Plane beam-column element: (a) in its local system. All properties are taken to be constant over the element.8 tests a symbolically defined bar element with end nodes located at (0. 0. 2L . the cross section area A and the moment of inertia I = Izz about the neutral axis.3. 0). which does not change in passing from local to global.9(a). §20.1. The Plane Beam-Column Element Beam-column elements model structural members that resist both axial and bending actions. 2 of the two end nodes. Properties involved in the stiffness calculations are: the modulus of elasticity E. §20. with E = 1000. and then in the global system (x. and a plane beam. The element properties E and A are kept symbolic.3. A plane beam-column element is a combination of a plane bar (such as that considered in §20.9. which has length L and is not aligned with the x axis.7) u¯ e =  z1  . The six degrees of freedom and conjugate node forces of the elements are:   ¯       u¯ x1 f x1 u x1 f x1  u¯ y1   f¯y1   u y1   f y1          e θ m θ    m     ue =  z1  . This is the case in skeletal structures such as frameworks which are common in steel and reinforcedconcrete building construction. ¯ y¯ ) as shown in Figure 20.1). and ϕ is the angle between x¯ and x. Before adding them.Izz }. The stiffness matrix in the global system is obtained through the congruent transformation ¯ e T. The displacement transformation matrix between local and global systems is      u¯ x1 c s 0 0 0 0 u x1  u¯ y1   −s c 0 0 0 0   u y1        θz1   0 0 1 0 0 0   θz1  e u¯ =  =   = T ue .7). §20. Plane Beam Column Stiffness Module The computation of the stiffness matrix Ke of the two-node. If True the computations are carried out in floating-point arithmetic. This is listed in Figure 20.  u x2   0 0 0 c s 0   u x2       u¯ y2 u y2 0 0 0 −s c 0 θz2 θz2 0 0 0 0 0 1 (20. options] (20. Izz Moment of inertia of cross section area respect to axis z. For this element is has only one entry: { numer }. measured positive-counterclockwise from x. options A list of processing options.11) The arguments are ncoor Node coordinates of element arranged as { { x1. see Figure IFEM:Ch20:fig:PlaneBeamColElem.10.22) and the BernoulliEuler bending stiffness (13.y1 }. Em Elastic modulus. A Cross section area.8) come from the bar stiffness (12.9) in which c = cos ϕ = (x2 − x1 )/.10) Explicit expressions of the entries of Ke are messy. The module returns the 6 × 6 element stiffness matrix as function value.2. rows and columns have been rearranged in accordance with the nodal freedoms (20. to get     1 0 0 −1 0 0 0 0 0 0 0 0 0 0 0 0 0 12 6 0 −12 6      EI   E A 0 0 0 0 42 0 −6 22    ¯e = + (20.{ x2.20). Unlike the bar.3. Ke = T T K (20. If False symbolic processing is assumed.8) K     0 0 0  1 0 0   3      12 −6 0 0 symm 42 symm 0 The two matrices on the right of (20. This is a logical flag with the value True or False. Em.y2 } }. it is better to let the program do the transformation.3 THE PLANE BEAM-COLUMN ELEMENT To obtain the plane beam-column stiffness in the local system we simply add the stiffness matrices derived in Chapters 11 and 12. The module is invoked as Ke = PlaneBeamColumn2Stiffness[ncoor.§20. respectively. { A. respectively. 20–9 . prismatic plane beam-column element is done by Mathematica module PlaneBeamColumn2Stiffness. s = sin ϕ = (y2 − y1 )/. EA.x21.0.-6.Kebar.y2}}=ncoor. 6.numer. which correspond to the three independent rigid body motions of the element. Figure 20.0}/L. 5000. LL}.0}. 0) and (3. EA=Em*A. The stiffness matrix returned in Ke is printed.0.0. 3600. A and Izz are kept in symbolic form. 0.L}]].{A_.{0.0.0.2*LL.0.0}. 4L/5). The output is shown at the bottom of that figure.0.{0.3.{3.{0.0. Print["Numerical Elem Stiff Matrix: "]. L=Sqrt[LL].LL. 0} Figure 20. Eigenvalues of Ke = {34800.0.A.{A. As expected three eigenvalues. with E = 100.0. The script at the top of Figure 20. 48. Te={{x21.0.{0.-1.0.L. −4800. 4800.y21.LLL.EI.0.1. 2464. −2464. −4800. Ke= PlaneBeamColumn2Stiffness[ncoor. Its six eigenvalues are computed and printed.0.0}. −48.11 tests a numerically defined element of length  = 5 with end nodes located at (0. 0) and (3L/5. 48.y21.0. −3600.0.L}=N[{x21. If [!numer.10.x2.0}.{0. −2436.0}. 4800. ClearAll[L.-3*L. {{x1. LLL=Simplify[LL*L].0}} + (2*EI/LLL)*{ { 0.0.11 and 20.0.Te. 10000. 2464. {numer}=options.EI. respectively. A=125.0}/L. 4).0.-3*L.0}. 20000. The output is shown at the bottom of that figure. Ke=Transpose[Te].{0.0. 20000. 4800. prismatic plane beam-column element.Ke}. Numerical Elem Stiff Matrix: 2436.0. §20.0.0}.0.Chop[Eigenvalues[Ke]]].0.{0.0. 48.EA.{0. −48.y1}. EI=Em*Izz.y21.{x21.0. The script at the top of Figure 20.EI.EA. 2436.y1.12. 48.0.LL.0.{-y21. Test of two-node plane beam-column element with numeric inputs.y21.{0.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS PlaneBeamColumn2Stiffness[ncoor_.0.0.0.x21.-3*L.y21.Em_.x21.0. The printed matrix looks complicated because bar and beam coupling 20–10 . 0.0.Te.0.0}. 1. 10000.-3*L}. {0.0.0. If [numer. The properties E.options_]:= Module[ {x1.y2-y1}. −48.2*LL}}.0. L=PowerExpand[L]].{0.0.Izz]. Izz=250.0.. −48.4}}. 4800. 3*L}.LL. Kebar= (EA/L)*{ { 1. −3600. are zero.{x2. Mathematica module to form the stiffness matrix of a two-node.0}.1}}..{0.0. −4800.0.y21}={x2-x1.x21. Print["Eigenvalues of Ke=".0.0.0.11.0}/L. Print[Ke//MatrixForm]. A = 125 and Izz = 250. Testing the Plane Beam-Column Module The beam-column stiffness are tested by the scripts shown in Figures 20.. 3*L. {-1.{True}]. −3600. 3600. −4800. −2436. Em=100.y2.3.0.0. 3600. LL=Simplify[x21^2+y21^2]. −2464.-y21.0.12 tests a plane beam-column of length L with end nodes at (0. 6.Kebar. −3600. 3600. { 0.3*L.0.0}/L. ncoor={{0. 10000. LL.0.Izz}. The remaining three eigenvalues are positive.Em.Em.3*L. {x21. Return[Ke] ].0.-6.Izz_}.0. will be placed at the plate midsurface. But those element centered locations do not coincide. respectively.d).§20. ClearAll[L.Em. Freedoms at connection and centroidal nodes are declared to be master and slaves. Print[kfac. however.{3*L/5. They are labeled as shown in Figure 20.13(c. and applying the master-slave congruential transformation introduced in Chapter 8. Structural configurations such as that of Figure 20."*". The beam connectors have been moved. *Plane Beam With Offset Nodes §20.13(a). We assume that those connection nodes. Three eigenvalues are exactly zero. Test of two-node plane beam-column element with symbolic inputs. For the beam these connectors are also known as offset nodes.Ke//MatrixForm]. 6 (4 Izz +3 Izz L ) } L L L Figure 20. Print["Eigenvalues of Ke=". from their original centroidal positions. one is associated with the axial (bar) stiffness and two with the flexural (beam) stiffness.{False}]. 0. 2 Izz . civil and mechanical engineering when shells or plates are reinforced with eccentric stiffeners. ncoor={{0. 0. It relies on setting up multifreedom constraints (MFC) between centered and offset node freedoms.kfac. Print["Symbolic Elem Stiff Matrix:"].4 *PLANE BEAM WITH OFFSET NODES occurs when the element is not aligned with the global axes.Eigenvalues[Ke]]. Plate Reinforced With Edge Beams Consider a plate reinforced with edge beams.4. because such equations are only written at nodes. kfac=Em." ".A.{A. as shown in Figure 20.13(b).Em.1. which is positive if going upward from beam centroid. Ke=Simplify[Ke/kfac].13(b) is a plane beam whose freedoms are to be moved upwards by a distance d. The eigenvalues are obtained in closed symbolic form.13(a) are common in aerospace. The process of moving the beam stiffness equation to the offset nodes is called offsetting.9) is orthogonal.Izz]. For simplicity we discuss only this process assuming that the beam of Figure 20. Symbolic Elem Stiff Matrix: Em 3 ( 64 Izz +3 A L2 ) 25 L3 12 ( −12 Izz +A L2 ) 25 L3 12 ( −12 Izz +A L2 ) 25 L3 − 245 LIzz2 4 ( 27 Izz +4 A L2 ) 25 L3 18 Izz 5 L2 − 3 ( 64 Izz +3 A L2 ) 25 L3 − 12 ( −12 Izz +A L2 ) 25 L3 ( −12 Izz +A L2 ) 25 L3 − 245 LIzz2 − 4 ( 27 Izz +4 A L2 ) 25 L3 18 Izz 5 L2 − 12 − 24 Izz 5 L2 18 Izz 5 L2 4 Izz L 24 Izz 5 L2 − 18 Izz 5 L2 2 Izz L − 3 ( 64 Izz +3 A L2 ) 25 L3 − 12 ( −12 Izz +A L2 ) 25 L3 − 12 ( −12 Izz +A L2 ) 25 L3 24 Izz 5 L2 − 4 ( 27 − 24 Izz 5 L2 Izz +4 A L2 ) 25 L3 18 Izz 5 L2 18 Izz 5 L2 2 Izz L 3 ( 64 Izz +3 A L2 ) 25 L3 12 ( −12 Izz +A L2 ) 25 L3 24 Izz 5 L2 12 ( −12 Izz +A L2 ) 25 L3 24 Izz 5 L2 4 ( 27 Izz +4 A L2 ) 25 L3 − 185 LIzz2 − − 18 Izz 5 L2 4 Izz L 2 Eigenvalues of Ke = Em∗{0.Izz}. or simply connectors. 2A . To assemble the structure it is necessary to refer both the plate and beam stiffness equations to common locations. and their simplicity provides a good check that the transformation matrix (20.4*L/5}}. §20. With that choice there is no need to change the plate equations. The original stiffness equations referred to centroidal (slave) freedoms are 20–11 . Ke= PlaneBeamColumn2Stiffness[ncoor.0}.4. as sketched in Figure 20. The conventional placement of the nodes is at the plate midsurface and beam longitudinal (centroidal) axis.12. (20.13)  u¯ x2c  =  0 0 0 1 0 d   u¯ x2m  or us = Tsm um . The T T T e Kec Tcm = Tcm fc = fem . Izzc constant Le u−y1m u− (d) θ z2m x1m 2 m u−y2c u−y1c 1c u−y2m u−x2m u−x1c θ z2c 2c d u−x2c Figure 20.12) m z2s in which A is the beam cross section area while Izzc denotes the section moment of inertia with respect to the centroidal axis z¯ c . This gives the centroidal(slave)-to-master transformation  u¯   1 0 d 0 0 0   u¯  x1c x1m u ¯ u ¯ 0 1 0 0 0 0 y1c      y1m   θz1c   0 0 1 0 0 0   θz1m  e e      (20. as is physically obvious.4.d). Plane beam with nodes offset for a rigid-link connection to plate. ym 1m d 1c d slave-to-master rigid-link offset distance for beam beam centroidal node → slave node connection node → master node (c) master nodes rigid links centroidal (slave) nodes 2m _ θz1m xm _ xc d 2c 1m d θ z1c E. A     E   Le     0 0 −A 0 0 12Izzc 6Izzc 0 − 12Izzc − 6Izzc (L e )2 (L e )2 (L e )2 (L e )2 4Izzc 0 − 6Izzc 2Izzc Le Le (L e )2 A 0 0 12Izzc − 6Izzc (L e )2 (L e )2 4Izzc symm Le     ¯  f x1s  u¯ x1s   u¯   f¯    y1s   y1s   θ  m    z1s   z1s  = .13(c.13. Rigid Link Transformation Kinematic constraints between master and centroidal (slave) freedoms are obtained assuming that they are connected by rigid links as pictured in Figure 20.  f¯x2s    u¯ x2s       u¯ y2s   f¯y2s   θz2s or Kec uec = fec .2. A. modified stiffness equations are obtained by the congruential transformation: Tcm which yields 20–12 .      u¯ y2c u¯ y2m 0 0 0 0 1 0 θz2c θz2m 0 0 0 0 0 1 The inverse transformation: Tmc = T−1 cm is obtained on replacing d with −d. §20.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS plate (a) (b) plate d edge beam edge beams _ _ yc . y¯m } pictured in Figure 20. Izzc = Ae y¯c2 Izzm = d A. This may cause the beam stiffness to be significantly underestimated. The following cross section geometric properties are defined for use below: A= d A.4 *PLANE BEAM WITH OFFSET NODES  A 0 d 6 I 12 I zzc zzc  0 Le  (L e )2  6 Izzc 4 I +A d 2  E  d zzc Le  L e  −A 0 −d  12 I  0 − e zzc2 − 6 Izzc  Le (L ) 6 Izzc Le −d  0 −d   ¯   6 Izzc f x1m u¯ x1m  0 − 12 Ie zzc e L   u¯   f¯  (L )2   y1m   y1m  2    −d − 6 Izzc 2 I −A d zzc   θz1m  Le  =  m z1m    ¯  A 0 d   u¯ x2m    f x2m   12 I 6 I   f¯y2m   zzc  u¯ y2m 0 − zzc  Le (L e )2 θz2m m z2m d − 6 Izzc 4 Izzc +A d 2 e L −A 2 Izzc −A d 2 (20. as pictured in Figure 20. Direct Fabrication of Offset Beam Stiffness This approach directly interpolates displacements and strains from master nodes placed at distance d from the beam longitudinal (centroidal) axis.4.14. (20. Using the Bernoulli-Euler model gives  u¯ u¯ xm u¯ ym .14) Note that the modified equations are still referred to the local system {x¯m . y} prior to assembly.3.13(c). The foregoing transformation procedure has a flaw: for standard plate elements it will introduce compatibility errors at the interface between plate and beam. Sz = Ae y¯ d A = A d. The following subsections describes a different scheme that builds Kem directly and cures that incompatibility. Prior to assembly they should be transformed to the global system {x. As usual the isoparametric coordinate ξ along the beam element varies from −1 at node 1 through +1 at node 2.§20. al. See the textbook by Cook et. and references therein. [149] for an explanation.15) Ae The inplane displacements are expressed in term of the master freedoms at nodes 1m and 2m . Ae y¯ 2 d A = Izzc + A d 2 . §20. Nux2 = 12 (1 + ξ )/2. = Nux1 0 ∂N − y¯ ∂ xuy1 ¯ Nuy1 θ z1 − y¯ ∂ N ∂ x¯ Nθ z1 Nux2 0 ∂N − y¯ ∂ xuy2 ¯ Nuy2 θ z2 − y¯ ∂ N ∂ x¯ Nθ z2 x1m   u¯ y1m   θz1m     u¯ x2m    (20. Nθ z1 = 18 (1 − ξ )2 (1 + ξ ). Nθ z2 = − 18 (1 + ξ )2 (1 − ξ ) are the usual bar and beam shape functions. Nuy1 = 14 (1 − ξ )2 (2 + ξ ).16) u¯ y2m θz2m in which Nux1 = 12 (1 − ξ )/2. The axial strain is ex x = ∂u x /∂ x¯ and the strain energy U e = 20–13 1 2  Ve E ex2 x d V where d V = A d x=A. ¯ Carrying . but here referred to the offset axis x¯m . Nuy2 = 14 (1 + ξ )2 (2 − ξ ). These differences underscore the limitations of the rigid link assumption. the cross section is constant along the longitudinal direction). §20. Plane beam fabricated directly from offset master node freedoms. In this section we study how to form the stiffness equations of beam stacks under the following assumptions: 1. A. Comparing the first form of Ke in (20. also called composite beams as well as beam stacks. The overall cross section of the beam member is rectangular and prismatic (that is. 2. *Layered Beam Configurations Another application of rigid link constraints is to modeling of layered beams. out the integral and differentiating twice with respect to the degrees of freedom yields the stiffness matrix  A  0    −A d E  e K = e  L  −A   0   0 −A d −A 0 Ad 2 2 2 2 6 (Izzc +A d ) 6 (Izzc +A d )  12 (Izzc +A d ) −12 (Izzc +A d ) 0  Le Le (L e )2 (L e )2  2 2  6 (Izzc +A d ) −6 (Izzc +A d ) 2 2 4 (Izzc +A d ) Ad 2 (Izzc +A d )  Le Le   0 Ad A 0 −A d  2 2 2 2  −6 (Izzc +A d )  12 (Izzc +A d ) −12 (Izzc +A d ) −6 (Izzc +A d ) 0 Le Le  (L e )2 (L e )2 2 2 6 (Izzc +A d ) −6 (Izzc +A d ) Ad 2 (Izzc +A d 2 ) −A d 4 (Izzc +A d 2 ) e L Le  1  0 −d −1 0 d 12 (r G2 + d 2 ) −12 (r G2 + d 2 ) 6 (r G2 + d 2 ) 6 (r G2 + d 2 )   0 0 e   e 2 e 2 L Le (L ) (L )     2 2 6 (r G2 + d 2 ) −6 (r + d )  G 4 (r G2 + d 2 ) d 2 (r G2 + d 2 )  E A  −d e e  L L = e   L  −1 0 d 1 0 −1 d    −6 (r G2 + d 2 )  12 (r G2 + d 2 )  0 −12 (r G2 + d 2 ) −6 (r G2 + d 2 ) 0 e e   e 2 e 2 L L (L ) (L )   2 2 6 (r G2 + d 2 ) −6 (r + d ) G d 2 (r G2 + d 2 ) −d 4 (r G2 + d 2 ) Le Le (20. 20–14 .14. These are beam-columns fabricated with beam layers that are linked to operate collectively as a beam member.14) shows that the bending terms are significantly different if d = 0. Izzc constant ξ = −1 Le _ _ xm d yc _ Neutral axis zc Beam cross section ξ=1 Cross section centroid Symmetry plane Figure 20.5. r G2 = Izzc /A is the squared radius of gyration of the cross section about z. Both the beam stack and each of its constituent layers are prismatic.17) with (20.17) In the second form.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS _ ym θz1m d u−y1m Master node offset line θ z2m u−x1m 1m u−y2m u−x2m 2m master (connector) nodes _ xc E. (20. βh1 = βh2 = βh . The layers have area Ak = Hk h = H h/2 and self inertia Ix xk = Hk3 h/12 = H 3 h/96.8). Layer material.20) are the same as those found in the previous Section:  1 0 −H/4 0 0  0 0 0 0 0  0 1 0 0 1 0 0 0  . T2 =  0 0 0 1 0 H/4    0 0 20–15 0 0 0 0 0 0 1 0 0 1 (20.§20.5. The layer stiffness matrices in template form are  H k  0  ¯ ek = E h  0 K e L   −Hk 0 0  0 0 −Hk 0 0 0 0 0 0 0  3 1 1 3 0 0 − 12 Hk3  0 12 Hk + βhk E Hk h 0 0 Hk 0 0  4(L e )3  0 0 0 0 0 1 1 Hk3 0 0 12 Hk3 0 − 12 0 0 0 e 0 4 2L   0 2L e (L e )2  0 0 0  e  0 0 0 0 −4 2L e  0 −2L e (L e )2  . For a rectangular cross section of height H and width h. The key modeling assumption is: is interlayer slip allosed or not? The two cases are studied next. K b2 = E Izzc /L e . 2. The layers are of homogeneous isotropic material. that is.18) 0 0   K h3 −K h4 −K h4 K h5 in which K b1 = E A/L e . A = H h and Izzc = H 3 h/12.20) Beacuse the layers are identical it is reasonable to assume the same higher order free parameter for both layers. may vary from layer to layer.21) . T1 =  0 0 0 1 0 −H/4    0 0 0 0 0 0 0 0 1 0 0 1  1 0 H/4 0 0  0 0 0 0 0  0 1 0 0 1 0 0 0  . however. and the template (20. To discuss how to meet this requirement it is convenient to introduce a beam template that separates the stiffness matrix into basic and higher order components. The rigid-link transformation matrices for (20. Here βh is a free parameter that scales the higher order stiffness Kh . See Figure 20.19) 0 0 0   0 −4 −2L 0 4 −2L e 0 2L e (L e )2 0 −2L e (L e )2 Next. isotropic prismatic beam column element with elastic modulus E. the stiffness equations should reduce to those of a homogenous beam. cut the foregoing beam into two identical layers of height Hk = H/2. The offset distances from each layer to the centroid of the full beam to the centroid of each layer are d1 = −H/4 and d2 = H/4. The template form of the stiffness matrix in the local system is  K b1  0  ¯ e = Keb + Keh =  0 K  −K b1  0 0 0 0 −K b1 0 0 0 0 0 K b2 0 0 K b1 0 0 0 0 −K b2 0   0 0 0 0 0  0  0 −K b2   + βh  0  0 0 0   0 0 0 0 K b2 0 0 0 K h3 K h4 K h4 K h5 0 0 −K h3 −K h4 K h4 K h5 0 0 0 0 0 0  0 0 −K h3 K h4  −K h4 K h5   (20. K h3 = 12E Izzc /(L e )3 .15(b).5 *LAYERED BEAM CONFIGURATIONS 3. §20.1. Layered Beam With No Interlayer Slip The main modeling constraint here is: if all layers are of the same material. K h4 = 6E Izzc /(L e )2 and K h5 = 3E Izzc /L e . where k = 1. 0 0 0   0 −4 −2L 0 4 −2L e 0 2L e (L e )2 0 −2L e (L e )2 k = 1. 2 is used as layer index.18) becomes  H  0  0 E h e  ¯ = K Le   −H  0 0 −H 0 0 0 0 0 0 0  3 0 0 − 121 H 3  0 121 H 3  + βh E H h 0 0 H 0 0  4(L e )3  0 0 0 0 0 0 − 121 H 3 0 0 121 H 3 0 0 0 0 0 e  0 4 2L  0 2L e (L e )2  0 0 0  e  0 0 0 0 −4 2L e  0 −2L e (L e )2   (20. If βh = 1 we recover the standard beam column stiffness (20. Consider a homogeneous. cross section area A and cross section second moment of inertia Ix xc with respect to its neutral (centroidal) axis. (20. . A. Carrying out the same exercise for three identical layers of height H/3. .15. It is not difficult to show that if the beam is divided into N ≥ 2 layers of height H/N .19) if we set βh = 9.15(c). What is the interpretation of this boost? A spectral analysis of the combined stiffness shows that taking βhk = 1 lowers the rigidity associated with the antisymmetric bending mode of the element. the correct beam stiffness is recovered if we take βh = N 2 . k = 1. Plane beam divided into identical “sticking” layers. Suppose that the beam is cut into N layers of heights N N Hk = γk H . For example.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS E. 20–16 . But this mode is associated with shear-slippage between layers. Boosting βhk as found above compensates exactly for this rigidity decay.24) βhk = 1/γk2 . yields  H  0  0 E h e  ¯ = K e L   −H 0 0  0 0 −H 0 0 0 0 0 0 0  3 1 H3 0 0 − 121 H 3  0 12  + βh E H h 0 0 H 0 0  36(L e )3  0 0 0 0 0 0 − 121 H 3 0 0 121 H 3 0 0 0 e 0 4 2L   0 2L e (L e )2  0 0 0  e  0 0 0 0 −4 2L e  0 −2L e (L e )2   . Izzc constant 1 d1=0 2 1  = Le 2 1 d2= H/4 d1=−H/4  = Le H/2 H/2 (b) 2 layers H/3 H/3 H/3 (c) 3 layers 2 1 h 3 2 1 1 (a) 1 layer h 2 1 H 1 2  = Le d3= H/3 d1=−H/3 d2=0 3 2 1 h Figure 20. (20. To get the correct stiffness of the layered beam take (20. ¯ e = T1T K ¯ e1 T1 + T2T K ¯ e2 T2 gives Transforming and adding layers contributions as K  H  0  0 E h e  ¯ = K e L   −H 0 0  0 0 −H 0 0 0 0 0 0 0  3 1 H3 0 0 − 121 H 3  0 12  + βh E H h 0 0 H 0 0  16(L e )3  0 0 0 0 0 0 − 121 H 3 0 0 121 H 3 0 0 0 e 0 4 2L   0 2L e (L e )2  0 0 0  e  0 0 0 0 −4 2L e  0 −2L e (L e )2   . N that satisfy 1 Hk = H or 1 γk = 1. suppose that the but is divided into 3 layers of thicknesses H1 = H3 = H/4 and H2 = H/2. If is not difficult to prove the following generalization.19) if we set βh = 4. as shown in Figure 20. Then pick βh1 = βh3 = 1/( 14 )2 = 16 and βh2 = 1/( 12 )2 = 4.23) 0 0 0   0 −4 −2L 0 4 −2L e 0 2L e (L e )2 0 −2L e (L e )2 which becomes identical to (20.22) 0 0 0   0 −4 −2L 0 4 −2L e 0 2L e (L e )2 0 −2L e (L e )2 This becomes identical to (20. . §20. The core stiffness can be neglected since its effective elastic modulus is very low compared to the facings modulus E f . and the rigid-link transformation matrices:  Af   0    E f  0 Kek = e  L  −A f   0   0 0 0 −A f 0 0 12 I 6 Izz f 6 Izz f 12 Izz f 0 − ezz2f Le Le (L e )2 (L ) 6 Izz f 6I 4 Izz f −d − zze f 2 Izz f Le L 0 0 Af 0 0 12 Izz f 6 Izz f 12 Izz f 6 Izz f − e 2 − e 0 − e L L (L ) (L e )2 6 Izz f 6 Izz f 2 Izz f 0 − e 4 Izz f Le L   1 0 d  f   0 1 0   0 0 1   . There is no need to use here the template form and of adjusting the higher order stiffness.16. In addition. 20–17 . Ix x f = bt 3f /12. A f = bt f .16. k = 1. Beam Stacks Allowing Interlayer Slip Sandwich beam fabrication longitudinal cut _ y tf =2 cm Metal sheet facing Aluminum honeycomb core Metal sheet facing _ x z Cross section z c= 8 cm tf = 2 cm L = 80 cm _ y b = 9 cm Elastic modulus of facings = E f = 65 GPa Elastic modulus of core ~ 0 Figure 20. 2. Tk =  0 0 0    0 0 0   0 0 0  0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 df 0 1     .5. Plane sandwich beam. To form the beam stiffness by the rigid link method it is sufficient to form the faces self-stiffness.16. The beam is divided into three layers: 2 metal sheet facings and a honeycomb core.   (20. d1 = −(c + t f )/2 and d2 = (c + t f )/2.2. which are identical.16 may be inserted. There are beam fabrications where layers can slip longitudinally past each other.25) where. The stiffness of the sandwich beam is Ke = T1T K bold1e T1 + T2T K bold2e T2 into which the numerical values given in Figure 20. in the notation of Figure 20.5 *LAYERED BEAM CONFIGURATIONS §20. One important example is the sandwich beam illustrated in Figure 20. the facings are not longitudinally bonded since they are separated by the weaker core. z ) 1 The global coordinate system is {x. R by2 = E I yy /L 2 . m y2 m z2 ]T . Six global DOF are defined at each node i: the 3 translations u xi .y3 . Rz3 = E Izz /L 3 .y . which must not be colinear with 1–2. while 2 For circular and annular cross sections. thus the effect of tranverse shear on the beam stiffness is neglected. 1 (x .y2 . Venant’s theory of torsion. R t = G J/L. See Figure 20. a third orientation node 3.z3 ) x− 2 (x2 . the bars being omitted − z for convenience. define the following “rigidity” combinations by symbols: b R a = E A/L. ¯ Consequently the principal moments of inertia are I yy and Izz . For simplicity the cross section will Orientation node be assumed to be doubly symmetric.1. y. z¯ } with respect to the global system.y case in commercial I and double-T profiles. The element is prismatic and has two end nodes: 1 and 2. 20–18 . as is the −− defining plane x.26) The beam material is characterized by the elastic modulus E and the shear modulus G (the latter appears in the torsional stiffness). respectively. (20. §20. u yi . z}. ¯ For other sections J has dimensions of (length)4 but must be calculated according to St. To simplify the following expressions. The local y¯ and z¯ axes are aligned with the symmetry lines of the y− cross section forming a RH system with x. R by3 = E I yy /L 3 .6. the moment of inertia J that characterizes torsional rigidity. 3 (x3 .6. J is the polar moment of inertia of the cross section wrt x. Four cross section properties are needed: the cross section area A.17. or approximate theories. To define the orientation of { y¯ . The space (3D) beam element.17. R t the torsional rigidity. θzi . R by = E I yy /L. The Space Beam Element A second example in 3D is the general beam element shown in Figure 20. Space Beam Stiffness Matrix The element global node displacements and conjugate forces are arranged as ue = [ u x1 u y1 u z1 θx1 θ y1 fe = [ f x1 f y1 f z1 m x1 m y1 θz1 m z1 u x2 u y2 f x2 f y2 u z2 f z2 θx2 θ y2 m x2 θz2 ]T .z2 ) 1 1 y x z Figure 20. Note that R a is the axial rigidity. θ yi . placed at the centroid of the end cross sections.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS §20. The principal moments of inertia are defined by these symmetries. These define the local x¯ axis as directed from 1 to 2.17. The length of the element is denoted by L. u zi and the 3 rotations θxi . is introduced.2 and the two principal moments of inertia I yy and Izz taken with respect to y¯ and z¯ . Axis y¯ lies in the 1–2–3 plane and z¯ is normal to 1–2–3. The Bernoulli-Euler model is used. Rzb = E Izz /L. b Rz2 = E Izz /L 2 . 0. 0. 0.Iyy_. tzy=dx*z21-dz*x21. 0. 0.Izz_. 0. 0.dy. 0. 0.txz}.EIyy.y2. 0. 0}.z0}=ncoor[[3]] ].-ry2. 0.GJ. 0. 0.dy. 0.y21. 0. 0. 0.z2}=ncoor[[2]].-rx. rz2}. 0. { 0. 0}. 0. 0.y1.dz}={x0-xm. 0. 0. tyy=tzz*txx-tzx*txz. options_]:= Module[ {x1.EIzz.ry. 0}. { 0. 0. { 0.y1+y2. 0}. page 79 of Pzremieniecki [603].LL.18.z21. 0.LL. 0. 0. 0.tyy. { 0. 0.EA. If [Length[ncoor]==3.Kebar. 0.tyy. ry2=6*EIyy/LL.z1+z2}/2.tzz}/zL. 0. 0. Figure 20. { 0. LLL=Simplify[LL*L].txy. 0.z1}=ncoor[[1]].Gm_}. 0}. 0. 0. 0.y0. 0.xm.rz2. EIyy=Em*Iyy. rz3. 0. ry.2*rz}}.EIzz. rx.2*ry. 0. Kebar={ { ra.z2. { 0. tyx=tzy*txz-tzz*txy.tyz}. 0. 0. The presentation in this book includes transverse shear effects as per Timoshenko’s beam theory. { 0.EA. 0.EIyy. 0. { 0. 0.y21. 0.tzy. 0. 0. {tyx. EA.z0. 0}. 0.2*rz. {x0.dz}]]. the R b ’s are bending rigities scaled by the length in various ways. tyx. 0. 0. {x1.Jxx_}. ry2. 0.txz. Return[Ke] ]. 0.dx.-rz2. txx. zL=Sqrt[tzx^2+tzy^2+tzz^2].tzy.txz. {txx.zL=Simplify[PowerExpand[zL]]]. 0. 0. 0. 0.tyy.ry2. 0. 0. 0. 0. 0.tyy.y0-ym.1.tzz. { 0. 0.L}]].tzy. 0. ry2. { 0. rz2.y1.txx.EIyy. 0. L=Sqrt[LL]. tyz=tzx*txy-tzy*txx. 0.LLL.ym.tzz}={tzx. 0. { 0. 0. {numer}=options.z0}+={0. rz.2*ry.-rz2}. ry.zm. rx.y0. tzz=dy*x21-dx*y21. 0. 0. 0. -rx. 0.ry3. rz}. Ke=Transpose[Te]. 0. 0.tzz. ra.tyz. rz2. 0. Te={{txx. Then the 12 × 12 local stiffness matrix can be written as3 3 Cf. 0. 0. ry3. 0}. The form (20. 0.-ry3. 0. 0. {x2.z2-z1}.Kebar. rz=2*EIzz/L.dy.27) results from neglecting those effects. 0. If [!numer.-rz2. ra=EA/L.txy. 0.dz}=N[{dx. EIzz=Em*Izz. 20–19 .tyz. 0}.yL. 0.z0}={xm. 0. 0. 0.x21.numer. {x21.z21}={x2-x1.txy. 0.LL. 0. { 0. 0. 0.tyx.§20.rz3. {tzx. 0. tyx. 0. 0}. 0.y0. 0. rz2=6*EIzz/LL. 0.-rz3.txz. 0.-ry3. 0. { 0.y21. 0.tzz. 0.y2-y1. 0. 0.y0. 0.x0. 0. 0.If[numer.tzy. 0. 0. 0. 0. tzx=dz*y21-dy*z21. 0. 0. 0. 0.{Em_. 0.0}]. EA=Em*A.ra. If [!numer.rx. {x21.ym. 0. 0. 0. 0. 0. 0}.T.txy. 0. {-ra. 0.tzx.z1. rz3. ry2. { 0.tyy.dz. txx. ry3=12*EIyy/LLL. 0.Te. txx. 0}. 0. { 0. 0. 0}. 0. { 0.{A_.-ry2. 0.6 THE SPACE BEAM ELEMENT SpaceBeamColumn2Stiffness[ncoor_. 0. 0. 0. 0. { 0. 0. {dx. tzx.{x0. 0. rx=GJ/L.txz}={x21. L=PowerExpand[L]]. 0}. 0. 0. 0. 0. 0. 0. 0. 0.z21}/L. ry=2*EIyy/L.tyz.txz.-ry2. 0}.{dx.-rz3. { 0. 0. 0. 0. 0. If [numer. 0. 0. tzx. 0.tzy.L}= N[{x21. 0. 0.GJ.tyz.y2. 0. 0. GJ=Gm*Jxx. 0.tzy. 0.z21. 0. ry3.txy. Module to form stiffness of space (3D) beam. 0. 0.z0-zm}.rz. 0. { 0.dy. 0.x2. ry2.-ry2. 0. 0. 0. 0. 0. 0.EIzz.Ke}. 0. {tzx. rz2. 0.{x0.tzy. tzx. 0}. 0. 0. 0. 0. 0}.tzz. tyx. -ra.GJ.z21. 0.txy. 0.-rz2. If [Length[ncoor]<=2. 0. 0. L. rz3=12*EIzz/LLL.y21. 0}. 0. 0. 0. LL=Simplify[x21^2+y21^2+z21^2].y21. 0. 0.zm}={x1+x2.tzz}}. 2.9. Shear modulus.{ x2. The implementation logic and testing of this element is the subject of Exercises 20. Implementation and testing procedures are rarely covered. Space Beam Stiffness Module The computation of the stiffness matrix Ke of the two-node. Inertia with respect to x¯ that appears in torsional rigidity G J . Przemieniecki [603] has been recommended in Chapter 1 on account of being inexpensive.8. Notes and Bibliography All elements implemented here are formulated in most books dealing with matrix structural analysis.8 and 20.Chapter 20: IMPLEMENTATION OF ONE-DIMENSIONAL ELEMENTS  Ra 0 b 0 12Rz3   0 0  0  0  0 0   b e ¯ =  0 a 6Rz2 K  −R 0  0 −12R b  z3  0 0   0 0  0 0 b 0 6Rz2 0 0 0 0 −R a b 0 0 0 6Rz2 0 12R by3 0 −6R by2 0 0 0 Rt 0 0 0 b −6R y2 0 4R by 0 0 0 0 0 4Rzb 0 0 0 0 0 Ra b 0 0 0 −6Rz2 0 b b −12R y3 0 6R y2 0 0 0 −R t 0 0 0 −6R by2 0 2R by 0 0 0 0 0 2Rzb 0 0 0 0 0 0  b b −12Rz3 0 0 0 6Rz2  b b 0 −12R y3 0 −6R y2 0   0 0 −R t 0 0  b b 0 6R y2 0 2R y 0   b −6Rz2 0 0 0 2Rzb   0 0 0 0 0  b b  12Rz3 0 0 0 −6Rz2  0 12R by3 0 6R by2 0   0 0 Rt 0 0   0 6R by2 0 4R by 0 b −6Rz2 0 0 0 4Rzb (20.18. The module returns the 12 × 12 element stiffness matrix as function value. If False symbolic processing is assumed. This is a logical flag with the value True or False. Moment of inertia of cross section area respect to axis y¯ .6.z2 }. Elastic modulus.Iyy.28) The arguments are ncoor Em Gm A Izz Iyy Jxx options Node coordinates of element arranged as { { x1. options] (20. This is listed in Figure 20. §20.y2.z1 }. A list of processing options. The use of rigid links for offsetting degrees of freedom is briefly covered in §7. { Em.{ x3. 20–20 .y1.Izz. Cross section area.z3 } specifies an orientation node 3 that defines the local frame.y3.y3. { A.Jxx }.Gm }. See §20.z3 } }. Moment of inertia of cross section area respect to axis z¯ . If True the computations are carried out in floating-point arithmetic. in which { x3.27) The transformation to the global system is the subject of Exercise 20.1. The module is invoked as Ke = SpaceBeamColumn2Stiffness[ncoor.8 of the textbook [149].4. For this element is has only one entry: { numer }. prismatic space beam-column element is done by Mathematica module SpaceBeamColumn2Stiffness. Jxx}.Iyy. plane beam-column and space bar stiffness element module in a lower level programming language and check them by writing a short test driver.Ke//MatrixForm].4 [A+C:30] Explain why the space bar element has rank 1 although it has 6 degrees of freedom and 6 rigid body modes.0}.{False}].{2*L. Comment on whether the computed stiffness matrix Ke has the correct rank of 3. ncoor={{0. ClearAll[L.) EXERCISE 20.2.Iyy. Comment on whether the stiffness matrix Ke has the correct rank of 1." ".{1.{Em.Iyy.Gm. Script for numeric testing of the space beam module of Figure 20.8 [D+A:25] Explain the logic of the space beam module listed in Figure 20.0. Fortran 77 or Fortran 90. Hint: use the results of Exercise 16.2 [C:15] Download the space bar stiffness module and their testers and verify the test results reported here. 20–21 .Exercises Homework Exercises for Chapter 20 Implementation of One-Dimensional Elements EXERCISE 20. kfac=Em. (According to the formula given in Chapter 19.{Em. Iyy=72. Print["Eigenvalues of Ke=". Assume that ¯ e stored in Kebar is correct (it has been trranscribed from [603].{True}].Gm}.0}.Izz.1.] Your choices are C. EXERCISE 20.Jxx].{A. Comment on whether the element exhibits the correct rank of 6.Gm.6 [A:25] Explain why the eigenvalues of Ke of any the elements given here do not change if the {x.Jxx}.18."*".Iyy.1 [C:15] Download the plane bar stiffness module and their testers and verify the test results reported here. Em=54. Gm=30. A=18.18.Izz.Eigenvalues[Ke]]. focus on the local stiffness matrix K how the local to global transformation is built and applied.5 [C:25] Implement the plane bar. y.{A. Comment on whether the computed stiffness matrix Ke has the correct rank of 1.kfac.5 and transform the local stiffness to global coordinates via a 3 × 9 transformation matrix.2*L. Print["Numerical Elem Stiff Matrix: "].Izz. (C++ is overkill for this kind of software).4}}. Instead.7 [A+C:30] (Advanced) Implement a 3-node space bar element. Print["Eigenvalues of Ke=".Gm}. z} global axes change.1 and E20.3 [C:15] Download the plane beam-column stiffness module and their testers and verify the test results reported here. Print["Numerical Elem Stiff Matrix: "]. EXERCISE 20.2. Figure E20.Em. [Do not bother about the mass modules.A. EXERCISE 20. Print[kfac. ClearAll[L.18 using the scripts given in Figures E20.Izz. Izz=36.0. Ke=SpaceBeamColumn2Stiffness[ncoor. and report results.4]//MatrixForm].9 [C:25] Test the space beam element of Figure 20. Jxx=27. Figure E20.L}/3}. the correct rank should be 6 − 6 = 0. EXERCISE 20. Ke= SpaceBeamColumn2Stiffness[ncoor. Ke=Simplify[Ke/kfac].18.Chop[Eigenvalues[Ke]]]. ncoor={{0.8. EXERCISE 20. Script for symbolic testing of the space beam module of Figure 20.A.Jxx].Em. EXERCISE 20. Test the element and verify that it has two nonzero eigenvalues. Print[SetPrecision[Ke. EXERCISE 20. FEM Program for Space Trusses 21–1 .21 . . . 21–3 21–3 21–3 21–5 21–6 21–8 21–9 21–10 21–11 21–12 21–13 21–13 21–15 21–15 21–19 21–20 21–21 .5. .2. Displacement Solution and Reaction Recovery . . . .6. . . . . . . . Notes and Bibliography . . . .3. . . .7. Utility Graphic Modules §21. . . . . . . . Utility Print Modules §21. . . 21–2 . . .2. .3. . . . Plot Module Calls . . . Plot View Specification . . . §21.3. . . . . Analysis Stages §21. .21–2 Chapter 21: FEM PROGRAM FOR SPACE TRUSSES TABLE OF CONTENTS Page §21. . .1. . . . . . . . Exercises .5. . .1. . . . .5. .3. . . . . .5. . . §21. . . . . . . §21. . .3. §21. .3.2. . . . . Example 1: Bridge Plane Truss Example §21. . . §21. §21. . .6. The Solution Driver . . . . . . . . . . . . . Flattening and Partitioning Node-Freedom Vectors §21. . §21. . . .4. . . . . §21. . . . .3. . . . . Example 2: An Orbiting Truss Structure §21. . .1. Internal Force Recovery . . . Modifying the Master Stiffness Equations .3. . . . . Introduction §21.4. . . Defining Boundary Conditions . Analysis Support Modules §21. User prepares script for each problem Problem Driver Utilities: Tabular Printing. First. Data structures are explained along the way as they arise.1. and postprocessing. the difference between 2D and 3D implementation logic for truss analysis is insignificant. Overall organization of space truss analysis program. • Plotting deflected shapes and member stress levels. The program includes some simple minded graphics. For the program presented here the built in Mathematica function LinearSolve is used. Why not start with plane trusses? Three reasons. The processing stage involves three steps: • Assembly of the master stiffness matrix. particularly for orbiting structures in aerospace. which directly sets the data structures for the problem at hand. processing.3 ANALYSIS SUPPORT MODULES §21. ending with the driver program. Graphics.21–3 §21.1 left to right and bottom to top. etc Analysis Driver Assembler Element Stiffness BC Application Built in Equation Solver Presented in Chapter 20 Internal Force Recovery Element Int Forces Element Library Figure 21. space trusses are more interesting in engineering applications. This means traversing the diagram of Figure 21. although most components were tailored to the example truss of Chapters 2–3. The following postprocessing steps follow. The preprocessing portion of the space truss analysis is done by a driver script. The overall organization of the space truss analysis program is diagramed in Figure 21. Of course the stages here are very short.1. done through a Ku matrix multiplication. Second. Introduction This Chapter presents a complete FEM program for analysis of space trusses. 21–3 . • Computation of internal (axial) forces and stresses in truss members. including animation. through huge commercial codes. The graphic modules are provided in the posted Notebook but not described in detail. Upon executing the processing steps. Finally.1. plane truss code already appeared in Chapter 4. with a subordinate element stiffness module. §21. • Modification of master stiffness matrix and node force vector for displacement boundary conditions. Analysis Stages The analysis of a structure by the Direct Stiffness Method involves three major stages: preprocessing or model definition. • Solution of the modified equations for displacements. That means the element level modules are presented first. This is true for toy programs such as the one presented here. The description is done in “bottom up” fashion.2. followed by midlevel modules. the displacements are available. • Recovery of forces including reactions. elenod.{3*numnod}].3*nj-1. If [!numer.-z21*z21.yn.z2}}=ncoor.{3*numnod}. x21*z21}.j1 }.-y21*y21.z21. ].ii. z21*y21. neldof=Length[Ke].-x21*y21. For [i=1.2.{x2.jj.z1}.x21. where n is the total number of nodes of the truss. ii=eftab[[i]].elenod_.y1.Chapter 21: FEM PROGRAM FOR SPACE TRUSSES 21–4 SpaceTrussMasterStiffness[nodxyz_.3. ncoor={nodxyz[[ni]]. K=Table[0. Analysis Support Modules We begin by listing here modules that support processing steps.y21. where e is the total number of elements of the truss. .-z21*x21.ncoor.EA. y21*z21.y2-y1.-y21*y21. eftab={3*ni-2.L}]].-y21*z21}.z1. If [numer. elenod Element end nodes placed in an element-by-element list: { { i1.j]] ].-x21*z21}.jj]]+=Ke[[i.elefab. assembles the master stiffness matrix of a space truss. Em=elemat[[e]].Em. z21*z21. listed in Figure 21. For [e=1.2.x2. L=Sqrt[LL].je } }.Ke}.prcopt_]:=Module[ {numele=Length[elenod].-y21*z21.Em_.3*nj}. These are put into separate cells for display and testing convenience.ni.y1.-z21*y21.EA. options=prcopt. y21*x21. {numer}=options.y21. ].-z21*z21}.1) The arguments are nodxyz Nodal coordinates placed in a node-by-node list { { x1.3*nj-2. The element stiffness module SpaceBar2Stiffness. SpaceBar2Stiffness[ncoor_.z2 }. x21*x21.A_.j.y1.-x21*x21.nj.j2 }. j++. L=PowerExpand[L]]. e<=numele.3*ni. {-x21*x21.LL.prcopt] (21. EA=Em*A. {{x1. { y21*x21. 21–4 .numnod=Length[nodxyz]. z21*y21. i++.LL. . Return[Ke]]. { ie.A.elemat. The assembler is invoked by K = SpaceTrussMasterStiffness[nodxyz. y21*z21}. y21*y21. x21*z21. Ke=(Em*A/LLL)* {{ x21*x21.zn } }. i<=neldof.options. {-z21*x21. is listed for convenience.y21.z21. That module is also listed in Figure 21.z2-z1}. Figure 21.2 for convenience of the reader.{x21.numer. e.ii]]=K[[ii.z21.z2.-z21*y21. LL=x21^2+y21^2+z21^2. z21*z21}}.i.y2. {-y21*x21. z21*x21. For [j=i.L}=N[{x21.nodxyz[[nj]]}. x21*y21.eftab. Return[K].A. ]. { i2.options_]:=Module[ {x1. .Ke.z1 }.y2.z21}={x2-x1. elemat_. .y2.{x21. Ke=SpaceBar2Stiffness[ncoor. K[[jj. jj=eftab[[j]]. A=elefab[[e]].-x21*y21. Master stiffness assembly module for a space truss.LL. e++. y21*y21.-x21*z21. already discussed in Chapter 20.Em.K}.EA. LLL=Simplify[LL*L]. { xn. .3*ni-1. HAssembling the Master Stiffness Module SpaceTrussMasterStiffness.options].nj}=elenod[[e]]. §21. {ni. x21*y21.-y21*x21. j<=neldof.{ x2.neldof.y21.L. { z21*x21.LLL.elefab_. . It uses the element stiffness formation module SpaceBar2Stiffness discussed in the previous Chapter. stored as a full 3n × 3n matrix. Here we note that the module uses the freedom-pointer-table technique described in §3.3}. Testing the space truss assembler module. elefab Element fabrication properties. as function value. 0. 0.1/2. Print["eigs of K:". y} plane. 7. where e is the total number of elements of the truss.0}. 0. The axial rigidity values E A = 100.0. Running the assembler in exact arithmetic gives the 9 × 9 master stiffness shown in the bottom cell of Figure 21.{2. elefab= {1.21–5 §21. 21–5 .3.elemat. Ae }.3.0}}.Chop[Eigenvalues[N[K]]]]. Details of the assembly process are discussed in Chapter 25 for more general scenarios.3}}.100 } = Table[100. 2 and 3. elenod= {{1. Only one option is required in the assembler and so prcopt is simply { numer }. . where e is the total number of elements of the truss. E2.0. The only such property required for this analysis is the elastic modulus E of each element. which is the expected number in three dimensions. A2.3. The module returns the assembled stiffness. Thus elemat = { 100.elenod. Print["Master Stiffness of Example Truss in 3D:\n". .3577.K//MatrixForm]. .{10. The only such property required for this analysis is the cross section area A of each element. nodxyz={{0.10.7403.elefab. K=SpaceTrussMasterStiffness[nodxyz.4. elemat= Table[100. 50 and 200 2 for elements 1.2*Sqrt[2] }.{3}].{1. prcopt= {False}. See Figure 21. The script defines the example truss of Chapters 2–3 as a 3D structure with its three members √ placed in the {x.902. 16. These are put in an element-by-element list: { A1. Ee }. 0.elefab. 0} Figure 21. These are put in an element-by-element list: { E1.0}. elemat Element material properties. Master Stiffness of Example Truss in 3D: 20 10 0 −10 0 0 −10 −10 0 10 10 0 0 0 0 −10 −10 0 0 0 0 0 0 0 0 0 0 −10 0 0 10 0 0 0 0 0 0 0 0 0 5 0 0 −5 0 0 0 0 0 0 0 0 0 0 −10 −10 0 0 0 0 10 10 0 −10 −10 0 0 −5 0 10 15 0 0 0 0 0 0 0 0 0 0 eigs of K: {45.4 for merging each element stiffness matrix into the master stiffness. 0.eleopt]. The assembler is tested by the script shown in the top cell of Figure 21.1/2. .100.prcopt]. Here numer is a logical flag set to { True } to tell the assembler to carry out element stiffness computations in floating-point arithmetic. To split E A we take E = 100 for the three elements. respectively. prcopt Processing option list. . have to be untangled because E is placed in elemat whereas A goes to elefab. Else set to { False } to keep computations in exact arithmetic or symbolic form.2*Sqrt[2]}. .3 ANALYSIS SUPPORT MODULES ClearAll[nodxyz.{10.elemat.{ 3 }] whereas elefab = { 1. Taking its eigenvalues gives 6 zeros.2}. 4. fy3 = 1 uz3 = 0 fx3 = 2 3 .4.1 }. . the tag entry is { 1.3. and freedoms assigned to that node at the second level. y and z directions.0 } } (21.1 } and the value entry is { 0. These are assumed to be single-freedom constraints. which has 3 nodes and 9 freedoms.3) For node 1.0 }.0 }. internally called nodval. The second level is associated with freedoms: displacements in the x. The entries of nodval can be integers. for example. used as module tester. Each first-level entry of this list pertains to a node.1 } } (21. For node 2 it says that f x2 = 0 and u y2 = u z2 = 0.1. Freedom activity is marked by tag 0 or 1.. This is done by the two modules listed in Figure 21.72.0. K] (21.{ 0. (The reason is that nodes are highly visible to casual users. Thus { 1.) This space truss program is no exemption.{ 2.1. or nonhomogeneous such as u z6 = −0.. and may in fact be used for more general problems... The node freedom tag list. Defining Boundary Conditions The modification process described here refers to the application of displacement boundary conditions on the master stiffness equations. Modifying the Master Stiffness Equations The modification of the master stiffness equations K u = f for displacement BCs produces the ˆ u = ˆf.1 }.1 } for node 1 means that the node is fixed in the three directions. This says that u x1 = u y1 = u z1 = 0. These modules modified system K are not restricted to space trusses. This data is organized into two lists: node freedom tags and node freedom values. floating point numbers.3.{ 0.0 }. either homogeneous such as u x3 = 0. (3) (2) y 1 (1) z u x1= u y1 = u z1 = 0 .. internally called nodtag. The example truss in three dimensions.2) .1. 21–6 . . . Boundary condition data in FEM programs is usually specified in two levels: nodes at the first level. The stiffness modifier is invoked by Kmod = ModifiedMasterStiffness[nodtag.. f y3 = 1 and u z3 = 0.1.0.21–6 Chapter 21: FEM PROGRAM FOR SPACE TRUSSES §21. is nodtag = { { 1. u y2 = u z2 = 0 Figure 21.5. whereas those in nodtag can only be 0 or 1. Consider again the example truss in 3D shown in Figure 21.1 §21. The node freedom value list. A 1-tag means that the displacement is prescribed.0. For node 3 it says that f x3 = 2.1. gives the prescribed value of the force or the displacement.2.{ 0.1.. Their configuration is best specified through an example.0.. or symbols.4) The arguments are: 1 Other tag values may be implemented in more complicated programs to mark multifreedom constraints. For the example truss it is nodval = { { 0.. 2 x . whereas a 0-tag indicates that the force is known.. .. whereas direct access to freedom numbers is difficult. K The master stiffness matrix K produced by the assembler module. np=Length[pdof].i]]=0].f_]:= Module[ {i. 7.np. K The master stiffness matrix K produced by the assembler module (before modification). This is only used if at least one of the displacement BCs is non-homogeneous. ].pval.Kmod=K}. 21–7 .pdof.k<=np. It uses symbolic master stiffness equations of order 6.nodval_.6. Kmod[[i.k. The modified force vector. is returned as function value.k.d.n=Length[K]. which has the same order as K. pval=PrescDisplacementDOFValues[nodtag.j]]*c[[j]]*d]. For [k=1. d=pval[[k]]. The force modifier is invoked by fmod = ModifiedNodeForces[pdof.k<=np. For example.15 }. c[[i]]=0].j++.k++.3 ANALYSIS SUPPORT MODULES ModifiedMasterStiffness[nodtag_. i=pdof[[k]]. nodval The node freedom value list defined in the previous subsection. i=pdof[[k]].5. should be self explanatory. These lists are constructed by the modules listed in Figure 21. The modules are tested by the script listed in the top cell of Figure 21. For [k=1.K_] := Module[ {i. Return[fmod]]. On entry. pdof=PrescDisplacementDOFTags[nodtag].7. pdof = { 4. shown in the bottom cell of Figure 21. as defined in the previous subsection.j]]=Kmod[[j. For [k=1.nodval].j<=n. is returned as function value.j++.7.9. The modified stiffness matrix.n=Length[K].np.j. pdof=PrescDisplacementDOFTags[nodtag]. Remark 21. fmod[[i]]=d. nodtag A node by node list of freedom tags. Modules to modify the master stiffness matrix and node force vector to apply the displacement boundary conditions.1. For [j=1. ModifiedNodeForces[nodtag_. fmod[[j]]-=K[[i.5 build auxiliary lists pdof and pval to simplify the modification logic. np=Length[pdof].k++. Figure 21. pdof is a list of the prescribed degrees of freedom identified by their equation number in the master stiffness equations. Continue[]]. pval is a list of the prescribed displacement values listed in pdof. the modification modules of Figure 21.21–7 §21.nodval]. pval.j. c=Table[1.pdof. For [j=1. K.c. Return[Kmod]]. If [d==0.5) The arguments are: nodtag The node freedom tag list defined in the previous subsection. if freedoms 4. i=pdof[[k]]. The calls are pdof = PrescribedDOFTags[nodtag] and pval = PrescribedDOFValues[nodtag. Kmod[[i. The test illustrates a not well known feature of Mathematica: use of Array function to generate subscripted symbolic arrays of one and two dimensions. These indices are stored in ascending order.K_. 9 and 15 are specified.fmod=f}.6. f] (21. The results.{n}].i]]=1]. f The force vector before application of the displacement BCs.k++. which has the same order as f.j<=n.k<=np. f[2].{6. 5] f[6] − v1 K[1.1}.v4].{0. 6] K[3. f[5]. Master Stiffness: K[1. 3] K[5. 5] K[5. 1] K[5. where K ˆ and ˆf are the modified stiffness and force matrices. 4] K[2. The logic of ModifiedMasterStiffness is straightforward. 2] K[1.v2}. §21. 5] K[3. 3] K[1. 3] K[3.Km//MatrixForm].3. 6] K[6.1}.Kmod//MatrixForm]. 5] K[3. 4] K[6. f[6] } v1 v2 f[3] − v1 K[1. 5] K[6.0}}. 5] K[6. 5] K[1. 6] 0 0 0 1 0 0 0 0 K[5. fmod=ModifiedNodeForces[nodtag.{6}]. On entry it constructs pdof and pval.3. 2] K[2.v1. 6] Master Force Vector: { f[1]. 3] K[2. 2] K[6. 2] K[5.{0. 1] K[4.nodval. 5] K[2. 21–8 .6) At this point postprocessing begins.2.2. 1] K[3. 6] − v4 K[4. Print["Modified Master Stiffness:". 2] K[3.Km. 4] K[3.f. Similarly n=Length[K] sets n to the order of the master stiffness matrix K. Construct pdof. 1] K[2. which is used to bound the row and column clearing loop. 2] K[4. 3] 0 K[3.Chapter 21: FEM PROGRAM FOR SPACE TRUSSES 21–8 ClearAll[K.fm]. 5] − v4 K[4. 6] K[5. f[4]. Displacement Solution and Reaction Recovery ˆ u = ˆf. Testing the displacement boundary condition application modules. Force vector entries corresponding to the prescribed displacement values are replaced by the latter in accordance with the prescription (4. If nonzero values appear in pval. 4] K[4. In Mathematica LinearSolve is available for this purpose: u = LinearSolve[Kmod. 6] K[4. 6] K[2. Km=Array[K. ModifiedNodalForces has more complicated logic because it accounts for nonhomogeneous BCs. Remark 21. Print["Modified Force Vector:". then clear appropriate rows and columns of K and place ones on the diagonal. 3] − v2 K[2. 1] Modified Master Stiffness: K[1. Print["Master Force Vector:". 6] 1 0 0 0 0 0 0 1 0 0 0 0 0 0 K[3. f[3].6.{0. Print["Master Stiffness: ". 3] K[4. 3] 0 K[5. fm=Array[f.13). fmod] (21. This is because stiffness coefficients that are cleared by ModifiedStiffnessMatrix are needed for modifying the force vector. 4] K[5. Kmod=ModifiedMasterStiffness[nodtag. 3] K[6.Km]. 3] − v4 K[4. The node forces including reactions are obtained from f = K u.{0. 6] 0 0 K[6. 1] K[6. The linear system K is solved for displacements by a built-in linear algebraic solver. respectively. and the end result is the effective force vector. the original entries of f are modified as described in §4. nodtag={{1.v4}. 6] − v2 K[2. 3] 0 K[6. 4] K[1.6}].3. 5] K[4. 5] − v2 K[2. Remark 21.v2. 6] Figure 21.fmod//MatrixForm].0}}. Note the use of the Mathematica function Length to control loops: np=Length[pdof] sets np to the number of prescribed freedoms. These statements may be placed in the list that declares local variables. 3] Modified Force Vector: v4 f[5] − v1 K[1. If there are nonhomomogeneous BCs it is important that the stiffness matrix provided as third argument be the master stiffness before modification by ModifiedStiffnessMatrix.1.fm]. 5] K[5. nodval={{v1. 1.0 }.-0.4.k=0.numnod=Length[nodtag].2.n. This can be done simply as a matrix product: f = K.k+j]].j<=m. Return[pdof]]. If [Length[nfc]==0. Utility modules to flatten and node-partition node-DOF vectors. AppendTo[pval.0. nv[[n]]=Table[v[[m+i]].0 }. For [j=1. In flat form this is called f and in node-partitioned form nodfor.pdof={}.0. numnod=Length[nfc].nodval_]:= Module [ {j.j]]>0.n. m+=k]]. Flattening and Partitioning Node-Freedom Vectors In the analysis process one often needs displacement and force vectors in two different list formats.nv={}.8.6) for the example truss in 3D is u = { 0.numnod=Length[nodtag]. m=0.0.k.2. For postprocessing purposes (especially printing and plotting) it is convenient to rearrange to the node by node form noddis = { { 0. ].j]]]]. For [n=1.j]]>0.7) where K is the original master stiffness matrix before modification.{i.k=0.4. Return[pval]]. For [n=1.m}. NodePartFlatVector[nfc_. PrescDisplacementDOFValues[nodtag_.j++. k+=m.0.m.n<=numnod. the computed node displacement vector produced by (21. FlatNodePartVector[nv_]:=Flatten[nv].m}.7.nodval[[n. ]. If [nodtag[[n. If [Length[nfc]>0.0 } } (21. nv=Partition[v.3.21–9 §21. m=Length[nodtag[[n]]].0 } (21.n<=numnod.9) This will be called the node-partitioned form of the displacement vector. m=Length[nodtag[[n]]].nfc]].numnod}.3 ANALYSIS SUPPORT MODULES PrescDisplacementDOFTags[nodtag_]:= Module [ {j.n++. Figure 21.{numnod}]. For [n=1.k}]. §21.pval={}. k=nfc[[n]].{ 0.j++.n. Similar dual formats exist for the node force vector.v_]:= Module [ {i.n<=numnod. Figure 21. nv=Table[0.j<=m. Modules to build auxiliary lists pdof and pval from node-by-node BC data.{ 0.4.n++. and u the displacement vector computed by LinearSolve. ]. Return[nv]].n++.-0. For [j=1.0.0. 21–9 .0. ].0. If [nodtag[[n. k+=m.u (21.8) Following the terminology of Mathematica this will be called the flat form of the displacement vector. For example. AppendTo[pdof. y21. If [numer.{x21. elesig[[e]]=elefor[[e]]/elefab[[e]] ].Chapter 21: FEM PROGRAM FOR SPACE TRUSSES 21–10 SpaceTrussIntForces[nodxyz_.z21.e.v] (21.10) To node-partition a flat vector v say nv = NodePartFlatVector[nfc. Return[pe]].y1.nodxyz[[nj]]}.ncoor. Remark 21. Return[p]]. Em=elemat[[e]].EA.numer. A=elefab[[e]]. noddis_.x2. The additional code in NodePartFlatVector caters to the case where the number of freedoms can vary from node to node. To flatten the node-partitioned form of a vector. in which case nfc is a list (not a number) called the node freedom count. SpaceBar2IntForce[ncoor_. pe=(EA/LL)*(x21*(ue[[4]]-ue[[1]])+y21*(ue[[5]]-ue[[2]])+ +z21*(ue[[6]]-ue[[3]])).5. LL=x21^2+y21^2+z21^2.5.{numele}].y2-y1. {x21.u] and nodfor = NodePartFlatVector[3. e++.nj.{numele}].{x2. FlatNodePartVector can be directly done by the built-in function Flatten whereas NodePartFlatVector — for a fixed number of freedoms per node — can be done by Partition.options] ]. ue=Flatten[{ noddis[[ni]].prcopt_]:= Module[{ numnod=Length[nodxyz].y2. SpaceTrussStresses[elefab_.y21. The utility modules listed in Figure 21. p[[e]]=SpaceBar2IntForce[ncoor. say nv.y21.options. Modules to compute internal forces and stresses in a space truss. {{x1. e<=numele.z2}}=ncoor.noddis[[nj]] }].f].z21}={x2-x1.A. The reason for the “wrappers” is to guide the conversion of Mathematica code to a lower level language such as C.elemat_. §21.LL}=N[{x21.ni.11) where nfc is the number of freedoms per node.z2-z1}.y1.elenod_. numele=Length[elenod]. where such built-in list functions are missing.z21.z21. Return[elesig]].8 can be used to pass from one format to the other.LL. e<=numele.A.prcopt_]:= Module[ {numele=Length[elefab].z1. say v = FlatNodePartVector[nv] (21. EA=Em*A.y2. For [e=1.elefab_.ue_.z1}. {numer}=options.pe}.Em.EA. p=Table[0.ue.Em.z2.y21. hence the abbreviation.elesig}. Internal Force Recovery The calculation of internal forces and stresses in a space truss involves computing axial forces in the bar elements. options=prcopt.Em_.EA. Remark 21. elesig=Table[0. That facility is useful in more advanced courses.e. For space trusses this is 3 so appropriate conversion calls are noddis = NodePartFlatVector[3.LL}]].3. Figure 21.9.ue. e++.elefor_.x21.4.options_]:= Module[ {x1. The modules that do those calculations given the displacement solution are listed 21–10 . For [e=1.A_.nj}=elenod[[e]]. ncoor={nodxyz[[ni]]. {ni.p}. uzn } } (21.12) Five of the arguments: nodxyz. requesting exact calculiations. elefab and prcopt. This is invoked as SpaceBar2IntForce p = SpaceBar2IntForces[ncoor. As function value SpaceTrussIntForces returns a list of element axial forces { p1.0}. Em.{1.A.noddis.SpaceTrussStresses[elefab.0}}. elemat= Table[100.9 computes the member stresses simply by dividing the internal forces by the cross section areas. . contains the computed node displacements arranged in node-partitioned form noddis = { { ux1.uz2 }.elenod.2*Sqrt[2]}.. elefor=SpaceTrussIntForces[nodxyz.prcopt].13) This form can be obtained from the computed displacement solution through the utility module (21. Module SpaceTrussIntForces computes the internal forces (axial forces) in all truss members.3}}.0}.prcopt]].noddis.elenod.uz2 }.0}. elenod. It is invoked as elesig = SpaceTrussStresses[elefab. 2*Sqrt[2] } Stresses: { 0.elemat.ux2.uyn.{3}].9 exercise the internal force recovery for the example truss in 3D. −1. −2. {4/10.elefor. 1 } Figure 21. A and options are the same as in the call to SpaceBar2Stiffness described in §20.elefab. contains the flat list of the six element node displacements in the global system arranged as { ux1. { uxn.noddis].1) to the stiffness assembler.15) Arguments ncoor.9.elemat.uz1 }.uy1. −1 and 2 2 agree with those determined in Chapter 3.{2. noddis={{0.Em.options] (21.14) SpaceTrussIntForces makes use of SpaceBar2IntForce.prcopt] (21.2.0.{ ux2. elemat. Print["Int Forces of Example Truss:".0.21–11 §21. . . It is invoked by elefor = SpaceTrussIntForces[nodxyz.elenod.elefab.elefor]. The statements of the top cell of Figure 21. Int Forces of Example Truss: { 0. Test of the internal force recovery module.{10. The last module in Figure 21.2}. noddis. ue. elefab= {1.10.-2/10. and elefor contains the element forces computed by SpaceTrussIntForces.ux2. . prcopt={False}. The additional argument.0.0}.0}}. which computes the internal force in an individual bar element.3}.uy2. elefab. Array p is printed in the bottom cell. pe } (21. in Figure 21. {0. Print["Stresses:".2.3 ANALYSIS SUPPORT MODULES ClearAll[nodxyz.{10. The axial forces √ of 0. .11).16) Here elefab and prcopt are as before.10. The recovery equation is the subject of Exercise 21. elenod={{1. The additional argument.uy1.prcopt] (21.elemat. The element axial stresses are returned as function value. nodxyz={{0.4. 21–11 .ue.ux1. are the same used in the call (21.0. p2 .1/2.elefor. 4.u.elemat. elenod.elefor.11.u. elesig=SpaceTrussStresses[elefab. K=SpaceTrussMasterStiffness[nodxyz.nodfor.f. The following six modules are provided in Cell 6 of the SpaceTruss. 10.f]. To print the node coordinates in nodxyz: PrintSpaceTrussNodeCoordinates[nodxyz. elemat.elenod.prcopt]. (* Print["eigs of Kmod=".nodtag.elefab_. f=FlatNodePartVector[nodval].elesig }= SpaceTrussSolution[nodxyz. namely assembly.nodtag_. nodval and prcopt.noddis. noddis=NodePartFlatVector[3.elefor. *) u=LinearSolve[Kmod.elefor.nodfor.nodval_. element materials in elemat and element fabrications in elefab: PrintSpaceTrussElementData[elenod.elefor. Decommenting those commands comes in handy when setting up and running a new problem if errors are detected.11 has two commented out eigenvalue computations. SpaceTrussSolution[nodxyz_. The module returns four lists: noddis Computed node displacement in node partitioned format.21–12 Chapter 21: FEM PROGRAM FOR SPACE TRUSSES §21. The Solution Driver It is convenient to package the sequence of operations desribed in the previous subsections.fmod]. §21. prcopt_]:= Module[{K. Figure 21.nb notebook. noddis.elenod_. (* Print["eigs of K=". The analysis driver module. solution. elefor=Chop[SpaceTrussIntForces[nodxyz.19) . have been described in previous subsections.nodval. one for the master stiffness K and one for the modified stiffness Kmod.3.0^(-8)]. f=Chop[K. Note that the listing of SpaceTrussSolution in Figure 21.elemat_. nodfor Recovered node forces including reactions in node partitioned format. fmod=ModifiedNodeForces[nodtag.elenod.elesig}.elefab.17) All arguments: nodxyz. It is invoked by saying { noddis. elefor Element internal forces. ].elefab.elefab. elemat.title. modification.u].18) To print the element nodes in elenod.prcopt] (21. into one module called the solution driver.11.prcopt]].Chop[Eigenvalues[N[Kmod]]]]. nodfor=NodePartFlatVector[3. elesig Element stresses.f]. force and stress recovery.K.Chop[Eigenvalues[N[K]]]].6.fmod. This is listed in Figure 21.digits] (21.nodfor.elenod.digits] 21–12 (21.K].elesig}].Kmod. nodtag.elemat. Utility Print Modules Utility print modules are used to display input and output data in tabular form. *) Kmod=ModifiedMasterStiffness[nodtag. Return[{noddis.nodval.title.prcopt]. u=Chop[u].elemat. elefab.elefab. aspect. Plot Module Calls To plot elements only: PlotSpaceTrussElements[nodxyz.5.1 } }.5.elenod. If a void list is provided for the argument.25) To plot deformed shape of the truss under computed node displacements: PlotSpaceTrussDeformedShape[nodxyz. the default is { { 0.24) To plot element and nodes with optional labeling: PlotSpaceTrussElementsAndNodes[nodxyz. title is an optional character string to be printed as a title before the table.box.labels }] (21. If set to { d.2.title. elements and nodes with labels.colors }] (21. this means that view direction is along the −z axis whereas the up direction is the y axis.21–13 §21.title.21) To print the node forces in nodfor (configured in node-partitioned form): PrintSpaceTrussNodeForces[nodfor. view A list configured as a list of two 3D vectors: { { Vhat1.elenod.W3 } specifies the view direction whereas vector V. If digits is specified as a void list: { }. is optional. Utility Graphic Modules Graphic modules that support preprocessing are placed in Cells 4 and 5 of the SpaceTruss.digits] (21.Vhat3 }. { view. These display unlabeled elements. 21–13 . for example "Node coordinates of bridge truss".f } it specifies that floating point numbers are to be printed with room for at least d digits.0.title.5 UTILITY GRAPHIC MODULES To print the freedom activity data in nodtag and nodval: PrintSpaceTrussFreedomActivity[nodtag. specify "" (two quote marks together).V2.5.{ view.elesig. deformed shapes and element stress levels.V3 }.elenod.{ W1.noddis.0 }.nodval. The other arguments are as follows.nb notebook.elesig.title.20) To print the node displacements in noddis (configured in node-partitioned form): PrintSpaceTrussNodeDisplacements[noddis.1.{ 0.{ view.elenod.box.aspect.26) To plot element axial stress levels using a coloring scheme: PlotSpaceTrussStresses[nodxyz.23) In all cases. as discussed in §21.title. a preset default is used for d and f. global components { V1. elenod.1. §21.aspect.title.{ } }] (21.amplif. §21.digits] (21.digits] (21.title. noddfor elefor and elesig have been described above.22) To print the element internal forces in elefor and element stresses in elesig: PrintSpaceTrussElemForcesAndStresses[elefor.Vhat2.digits] (21.title.W2.sigfac. To eliminate the title. { view. Vector ˆ with W with global components { W1.W2.aspect. noddis. specifies the up direction for the plot view. with f digits after the decimal point.W3 } }.{ } }] (21.27) In the foregoing nodxyz. The last argument of the print modules: digits. one being to do realistic animations by drawing a sequence of deformed shapes moving inside this box. frn Radius of circle drawn around each node expressed as percentage of plot size.fntsiz. fex Vertical eccentricity in points of node label from node location. Because of the confusing way Mathematica handles plots. an aspect ratio is computed by the plot module as appropriate.{ fntfam.fre }.fntslt } }. This is useful for various purposes.fex. If set to −1. 21–14 . elabels A logical flag."red" }. y. "blue". fntwgt Font weight used for element labels. If set to zero. Typical settings are "Plain" or ”Bold”. Becomes a list if the call is to draw several shapes (for example undeformed and deformed). Node labels are always drawn in Plain. do not). that forms a box that encloses the plot. black is assumed. usually 10 through 14. amplif The displacement amplification factor to be used by PlotSpaceTrussDeformedShape. colors Defines element colors to be used by PlotSpaceTrussDeformedShape. some interactive experimentation with dimension specs seems inevitable. Legal ones are "black". A list with the following configuration: { { nlabels. If more than one shape is to be drawn the colors specification comes in handy. the Mathematica default Aspect->Automatic is chosen. For example setting amplif to { 0. specified by their {x. "Italics" or "Slanted". The box is converted to a frame by the view projector.frn.Chapter 21: FEM PROGRAM FOR SPACE TRUSSES 21–14 aspect Vertical-to-horizontal aspect ratio of the plot as it appears on a Notebook cell. "green" and ”white”. the aspect ratio is set to that number. z} global coordinates. Typical settings are "Plain". If the call is to draw several shapes (for example undeformed and deformed). Usually a value much larger than one (say 100 or 1000) is necessary to visualize displacements in actual structures. Set to True to get element labels in plot. Three possibilities. If set to a positive number. Normally set to 1. for example "Times" fntsiz Size in points of font used for labels. specified as lower case character string. Set to True to get node labels in plot. box A list of points. fre Radius of circle drawn around each element number expressed as percentage of plot size. { elabels. this argument can be a list. Node labels are always drawn in boldface.100 } will draw two shapes: the undeformed configuration and one with magnification of 100. sigfac A stress scaling factor for PlotSpaceTrussStresses. such as font sizes. in which case the colors are in one to one correspondence with the amplification values in amplif. fntfam Font family used for labels. labels Only used in PlotSpaceTrussElementsAndNodes. fex Horizontal eccentricity in points of node label from node location. such as { "black". "red". Used in PlotSpaceTrussDeformedShape and PlotSpaceTrussStresses. from node location. (some features do scale with plot size while others.fntwgt. If no color is specified. nlabels A logical flag.fey }. fntslt Font slant used for element labels. such as the space trusses considered here. The screen coordinates {xs . the eye point C is assumed to be at infinity. ys . The view direction is the line defined by joining the eye position at C with the origin O of {x. The viewing ingredients are shown in Figure 21. To define the up direction V ≡ ys one has to enter a second ˆ which must not be parallel to W. 1/3] = [−4/9. It is contained in the {x. and need not be discussed here. 2/3. y.1 } says that W is the trisector of the {x. z} into screen coordinates {xs . Plot view in 3D as mapping of world to screen coordinates. respectively. y} plane and can only move in that plane. aka camera point. where Wn is W normalized to length one. the specification { 1. Plot View Specification Plotting 3D objects.1. The screen plane passes through O and is normal to W. 2/3. z} octant.{ 2. ys . 1. z}. §21. 1/3] = [0. 2 Graphics where the eye point C is at a finite distance produce perspective plots.12.6 Up vector.2. 1/3)[2/3. z} is called the world space for obvious reasons. respectively. aka vertical screen direction V = ys Horizontal screen direction C e an en pl re Sc EXAMPLE 1: BRIDGE PLANE TRUSS EXAMPLE U = xs y O x W = zs View direction z eye point. 5/9. 0] − (2/3)[2/3. view reference point Global coordinate system (FEM) World coordinate system (graphics) Mathematica cell Figure 21. In computer graphics. which in computer graphics are typically identified as W and V: the view direction and up direction. §21. Since V ˆ is not necessarily normal to W. is used. The Graphics3D system of Mathematica allows perpective plotting.5. Screen coordinates xs and ys are in the screen plane and going along the horizontal and vertical directions. It is fixed at node 1 and on rollers at node 12.2 Thus only the view direction W. 1. U ≡ xs goes horizontally from left to right. For constructed by orthogonalization: V = V ˆ example if V and and W are specified by view argument { { 0.1 } }. Example 1: Bridge Plane Truss Example This example deals with the analysis of the 6-bay bridge truss problem defined in Figure 21. V is “indication” vector: V. respectively. as specified by three direction numbers. 2/3. Construction of this mapping is based on the view specification. When the plot is rendered in a Mathematica cell. Axes {u ≡ xs . Mappings from screen to pixel coordinates are handled by the plotting system.6. y.21–15 §21. y.13. In the plot modules used here. For example. Note that VT W = 0. 21–15 . the 3D space spanned by the FEM global system {x.12.0 }. z s } in which z s = 0. involves mapping the coordinates given in the FEM global system {x.2. z s } are defined by two vectors. which appears as argument of all plotting routines described in the foregoing subsection. 1. W ≡ z s } form a RHS Cartesian coordinate system. V ≡ ys . 0] − ([0. then V = [0. In computer graphics the xs and ys directions are called U and V. However the plots described here use only the 2D graphics subset. Objects are rendered using screen coordinates.1. T ˆ − (V ˆ Wn )Wn . This truss has 12 nodes and 17 elements. 0]T [2/3. observer point. y. −2/9]. NodeDOFValues Same configuration as nodval. 5.21–16 Chapter 21: FEM PROGRAM FOR SPACE TRUSSES (a) Elastic modulus E = 1000 Cross section areas of bottom longerons: 2. Preprocessing statements appear on top.14. 9 and 11. for the areas of bottom longerons. NodeDOFTags Same configuration as nodtag. battens: 3. Then the support conditions in the {x. u y1 and u z1 of node 1 are specified. For example. For example NodeDOFValues[[7]] = { 0. Abat and Adia. These define the problem through specification of the following data structures. Initialized to { 0. 10 top joints lie on parabolic profile 11 (6) Figure 21. Running the solution module returns computed displacements. It also helps grading returned assignments.1. Initialized to { 0. This simplifies the preparation of problem solving assignments since driver scripts are more self-documenting. Six-bay bridge plane truss used as example problem: (a) truss structure showing supports and applied loads. internal forces and member stress. Then the value of nonzero applied loads is set at nodes 3. Atop. The input data structures can be shown in tabular form for convenient inspection using print utility modules.0 } on creation for all nodes. with light green background. These are printed with utility modules. diagonals: 1 (b) y (7) x (13) (1) 3 4 (9) (19) (18) (2) 6 5 (10) (15) (14) . y} plane are specified at supported nodes. This list is built up from four repeating cross sectional areas: Abot. For example NodeCoordinates instead of nodxyz. Printed tables are shown on the left of Figure 21. NodeDOFTags[[1]] = { 1.-16. 1 2 (8) 10 16 10 span: 6 bays @ 10 = 60 (3) 8 7 10 (11) (16) (20) (4) 10 (12) (21) (17) 9 9 (5) 12 . battens and diagonals.1 } for all nodes on creation so as to fix all z displacements. top longerons: 10..3 NodeCoordinates Same configuration as nodxyz ElemNodes Same configuration as elenod ElemMaterials Same configuration as elemat ElemFabrications Same configuration as elefab.0.. top longerons. The driver is listed in Figure 21.0. These results are shown 3 Note the use of longer mnemonic names in the problem driver. respectively. 7.0 } specifies f x7 = 0. 21–16 .15. (b) finite element idealization as pin-jointed truss. node forces including reactions.1 } says that the three node displacement components u x1 . f y7 = −16 and u z7 = 0.13. {"black".0}."blue"}}].7}. Atop=10.box.0. NodeDOFValues[[5]]= {0.0.ElemNodes.6 EXAMPLE 1: BRIDGE PLANE TRUSS EXAMPLE NodeCoordinates={{0. "Computed node displacements:". NodeDOFTags[[1]]= {1.Atop.{}].0.{3.0.5}.{60.12}.7}.0}.10.9}.0}.{10.-10.ElemForces.-1.{7.Atop.labels}]. ElemFabrications={Abot.Abat. NodeDOFValues[[7]]={0. labels={{True.0}.labels}].1}.Abot. PrintSpaceTrussNodeForces[NodeForces.0}.0}.1}.NodeDOFValues.NodeDOFTags.0}. PlotSpaceTrussDeformedShape[NodeCoordinates.ElemNodes. Abot=2. ElemNodes={{1.{0.ElemMaterials. {2. NodeDOFTags= Table[{0.0.11.{20.Abat.1}.0.{6. NodeDOFValues[[3]]={0.ElemFabrications."Roman"}}.0.8}.box.0}.5}.0. Driver script for analysis of the 6-bay plane bridge truss.Abot.10}}.{50.{4.ElemNodes.-10. Em=1000.3}.0}.{11.0}.{10.1. "bridge mesh". 21–17 .0}. {0.-4.-1.7}.1.NodeDOFValues.6}."Node coordinates:".{60. numnod=Length[NodeCoordinates].{50.{20.0.5.-10.11}.NodeForces.{30.ElemStresses}= SpaceTrussSolution[ NodeCoordinates.0}. PrintSpaceTrussElementData[ElemNodes.Atop.{0.0}}.{7.{}]. "axial stresses in truss members".Adia.06.{4. PrintSpaceTrussElemForcesAndStresses[ElemForces. ElemMaterials= Table[Em.5.{view.{}].8}.-4.9}.Abat.{numnod}].0}.0}. box={{0.1. (* hroller @ node 12 *) PrintSpaceTrussFreedomActivity[NodeDOFTags.Abat.{60.9. NodeDOFValues[[9]]={0.{numnod}].{40. Output plot results are collected in Figure 21.{10.0}.{8.ProcessOptions ].Atop.Adia.{5.-1.-10.ElemMaterials. NodeDOFValues[[11]]={0.0. PrintSpaceTrussNodeCoordinates[NodeCoordinates.2}.12}. {1. Preprocessing statements in light green background. PrintSpaceTrussNodeDisplacements[NodeDisplacements.{True.Abat.{10.Adia.Atop.{0. ProcessOptions= {True}.0}}.ElemStresses. {30. view={{0.0.{9. Atop.0}.1}}.{2. Figure 21.0}.15.1.-16.1.0.0.{}].{numele}].14.0}.5. (* fixed node 1 *) NodeDOFTags[[numnod]]={0.1.3}.{6. Abat=3.Adia}. ElemFabrications. view={{0.0}.4}. Adia=1.ElemStresses.0}.10. NodeDOFValues=Table[{0.0}.{}].21–17 §21. PlotSpaceTrussElementsAndNodes[NodeCoordinates.{40. PlotSpaceTrussStresses[NodeCoordinates. on the right of Figure 21. "Node forces including reactions:".8. {2.5}.{view.Abot. "Int Forces and Stresses:".0}.10}.11}.NodeDisplacements.{4.ElemNodes.1}.{8.16.{view.Abot.0. {NodeDisplacements.{9.Abot.8. "Element data:".12}."deformed shape (unit magnif)". "DOF Activity:".1}}. Processing and postprocessing statements in light blue.{"Times". numele=Length[ElemNodes].5}.{}]. 421940 8 0.00 10.000000 0.0830 15 12.2500 3.00 1000.00 1000.00 3.809536 -1.0000 -10.00 1.0000 28.6770 z-value 0 0 0 0 0 0 0 0 0 0 0 0 Figure 21.2020 3.7500 5 56.6770 19 3. 12< 82.000000 0.00 1000.000000 0.15.3000 -6. 8< 89.000000 5.6770 1.00 2.00 3.000000 0.0000 3 0.0000 0.00 10.000000 0.0000 6 0.0000 7 0. 21–18 .695000 0.792260 4 0.560000 -2.000000 z-coor 0.0830 17 10.291930 5 0.0000 -10.000000 10 50.0000 4.0000 4 0.0300 -6.316600 6 0.795999 -2.000000 5 20.00 x-value 0 0 0 0 0 0 0 0 0 0 0 0 z-displ 0. Bridge truss example: tabular printed output.00 1000. 9< 89.00 1000.0000 0.000000 Node forces including reactions : node x-force y-force z-force 1 0.5000 28. 6< 86.2610 8 -60.0000 0.00 2.0000 3 57.280000 -1. element and freedom data.792260 12 1.0000 9 0.00 10.2610 13 10.291930 9 1.00 1000.000000 0.0000 5 0.000000 0.00 1.000000 9 40.3330 14 9. 7< 87.6100 -6.000000 0.000000 0.775600 3 0.000000 0.000000 6 30.0000 3.0000 2 0.000000 0.775600 11 1. 11< 811. Bridge truss example: graphic output collected in one figure.00 3.000000 4 20.0000 0.000000 12 60.000000 11 50.00 1000.0030 12 -62. On the right: computed displacements.0000 0. node forces.000000 0.0000 0.00 2.00 1. internal forces and member stresses.16.00 1.0000 6 56.0000 0.0030 9 -60.0000 -16.0000 7 -62. 4< 84.0000 0.000000 2 0.21–18 Chapter 21: FEM PROGRAM FOR SPACE TRUSSES Node coordinates : node x-coor 1 0.000000 3 10.000000 0. bridge mesh bridge mesh with elem & node labels 2 1 7 1 13 3 4 9 14 19 6 10 8 20 16 8 18 2 5 3 15 7 4 9 11 10 21 5 17 11 12 6 12 deformed shape axial stress level plot Figure 21.415000 -1.0000 0. 5< 86.0000 area 2.0000 0.000000 0. 12< 81.000000 0. 3< 84.0000 11 0.2020 3. 7< 87. 8< 88.000000 0.000000 0. 3< 83.0000 28.0300 -6.3330 18 1.0000 0.000000 0.000000 0. 11< 82.000000 0.00 2.000000 0.0000 28.0000 10 0. 10< 810.0000 2 56.0000 0.00 1000.00 10.135000 -2.0000 0.000000 data: nodes 81.000000 0.00 1000.000000 5.00 3.00 1000.00 1000. 5< 85.0000 0.0000 8 0.00 1000.000000 8.0000 28.00 1000.0000 28.000000 7 30.00 1000.000000 8 40.0000 0.0000 16 9.00 10.0000 -10.00 1000.885464 -1.385940 7 0.000000 0.6770 1.00 10.316600 10 0.2020 20 3.5000 28. 2< 82.000000 8.2020 21 1.0300 11 -60.0000 -10.00 z-tag 1 1 1 1 1 1 1 1 1 1 1 1 Computed node displacements : node x-displ y-displ 1 0.000000 0.00 1000.0000 0.000000 0.0000 3.00 1000.3000 -6.00 1000.000000 0.00 1000. 10< DOF Activity : node x-tag y-tag 1 1 1 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 9 0 0 10 0 0 11 0 0 12 0 1 modulus 1000.00 1000.000000 0.7500 4 57.000000 2 10. 5< 84.000000 0.000000 y-value 0 0 -10 0 -10 0 -16 0 -10 0 -10 0 Int Forces and Stresses : elem axial force axial stress 1 56.0000 0.00 3.0300 10 -60.847500 -2.000000 Element elem 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 y-coor 0.0000 28.000000 0.6100 -6.0000 12 0. 7< 88.847500 -2. 9< 810.2500 3.00 2.000000 9.899001 -2. On the left: node. 21–19 .21–19 §21. Example 2: An Orbiting Truss Structure To be included in the final version of the Chapter.7.7 EXAMPLE 2: AN ORBITING TRUSS STRUCTURE §21. and may be understood as a whole by one person. The philosophy followed here is to use special purpose codes written in a high level language.Chapter 21: FEM PROGRAM FOR SPACE TRUSSES 21–20 Notes and Bibliography The dominant philosophy in FEM implementation is to construct general purpose programs that can solve a wide range of problems. At the graduate level. These codes do have a place in undergraduate engineering education. students should understand what goes on behind the scene. it would be difficult to follow given their complexity). however. Their source code by now has reached into millions of lines. But access to innards of commercial programs is precluded (and even if it were. 21–20 . For example. starting at the junior level. These may be collectively called grey level codes. It is reflected in the current crop of commercial FEM programs. A high level language such as Mathematica conceals utility operations such as matrix products. but permits the application code logic to be seen and studied. it can be built and debugged in a few hours. As a result a complete FEM program is tiny (typically a few hundreds lines). but for instructional use simplicity outweights generality. At this level students should be taught rudiments of modeling and how to use those black box programs as tools. static and dynamic response of arbitrary structures with linear or nonlinear behavior. linear solvers and graphics. On the down side of course these toy programs can do only very limited problems. This exposure provides also basic knowledge for capstone senior projects that require finite element analysis. This path was naturally taken once the Direct Stiffness Method became widely accepted in the mid 1960s. Hence justify the formula used in module SpaceBar2IntForce listed in Figure 21. and  is the bar length. This is a pin-jointed truss model of a 200-in-high (5m) transmission tower originally proposed by Fox and Schmit in 1964 [146] as a test for early automated-synthesis codes based on FEM.1 and E21.1) in which x21 = x2 − x1 . .1(b) gives the element numbers.5 [C:25] Analyze the structure shown in Figure E21. (E21.1.1.9 to recover the axial force p = (E A/)d. Figure E21. (a) z 1 Coordinates: node 2 ( 37. (b) element numbers. EXERCISE 21.200) (b) 2 1 (1) 2 (8) (9) (5) (4) (10) 100 in 75 in (14) joins 3-10 (20) joins 5-10 3 6 4 (13) 6 (20) 5 75 in y (14) 8 (21) x 9 (23) (15) (24) 10 100 in 200 in 4 5 (22) 7 10 (6) (7) (3) (2) (12) 3 7 (11) (25) (18) (19) (17) (16) 9 200 in Figure E21.0. . It became a standard benchmark for structural optimization.2. EXERCISE 21. u x21 = u x2 − u x1 . Justify this assertion. The truss geometry and node numbering are defined in Figure E21. but can be used for any FEM program that stores K and f as full arrays. z} planes. Joints 1 and 2 at the top of the tower lie on the {x. The truss has 10 joints (nodes) and 25 members (elements).5. u z2 from d = (x21 u x21 + y21 u y21 + z 21 u z21 )/. Justify this assertion. Justify this assertion.1 [D:10] The logic of SpaceTrussMasterStiffness cannot be used for structures other than space trusses.5. EXERCISE 21. . z} plane.4 [A:15] Show that the longitudinal elongation of a space bar can be computed directly from the global displacements u x1 . (a): Geometry definition and node numbers. etc. z} and {x.1(a). The truss (but not the loads) is symmetric about the {y.2 [D:10] The logic of ModifiedMasterStiffness and ModifiedNodeForces is not re- stricted to space trusses.21–21 Exercises Homework Exercises for Chapter 21 FEM Program for Space Trusses EXERCISE 21.3 [D:20] The logic of PrescDisplacementDOFTags and PrescDisplacementDOFValues is not restricted to a fixed number of DOF per node. 21–21 8 . EXERCISE 21. u y1 . 25-member space truss model of a transmission tower. For member properties and loads see Tables E21.0.200) node 1 (−37. ) Note: as a quick check on model preparation.0 and later versions.014 0. 2008 so that plots will display correctly under Mathematica Version 6.1 Cross section areas of transmission tower members Element A (sq in) Element A (sq in) Element A (sq in) 1 2 3 4 5 6 7 8 9 0.2.980 0.015 2. 4 Data taken from an optimal design reported by Venkayya. (More details on HW assignment sheet.823 2. The applied load case to be studied is given in Table E21. The members are aluminum tubes with the cross sections listed in Table E21.4 The modulus of elasticity is E = 107 psi for all members. Cell 0 added to Notebook SpaceTruss.015 2. Analyze the transmission tower using the program provided in the SpaceTruss.21–22 Chapter 21: FEM PROGRAM FOR SPACE TRUSSES Table E21.1 lb/in3 .440 2.010 0. The specific weight is 0.760 19 20 21 22 23 24 25 1.010 0. Khot and Reddy in 1968 [399].014 0.2 Applied load case for transmission tower Node x-load (lb) y-load (lb) z-load (lb) 1 2 3 6 1000 0 500 500 10000 10000 0 0 −5000 −5000 0 0 Applied forces at all other nodes are zero.980 0.440 Table E21.760 1.015 2. If plots dont show up correctly please notify instructor. node displacements and element stresses. 21–22 .033 2.1.980 0.nb Notebook (downloadable from Chapter 21 Index). A Fix for Version 6.nb on November 1. Results to report: driver program cell. Own-weight loads not considered.440 2.015 2.760 1.823 2.18 lb. the total weight of the tower should be 555.823 10 11 12 13 14 15 16 17 18 0.823 2.980 1.440 2.760 2. 22 . FEM Programs for Plane Trusses and Frames 22–1 . . . . . . . . Internal Force Recovery . . .4. . . . Graphic Modules . . . . . §22. . . 22–5 . . A Bridge Truss Example §22. 22–6 . . .3. . 22–3 22–3 22–3 . Exercises . . . . Modifying the Master Stiffness Equations §22. . . . Assembling the Master Stiffness . 22–6 22–6 .1. . .3. . . .3. . Analysis Support Modules §22. §22. . . . . §22. . . . . .3. . . 22–2 .4. Introduction §22.3. . .Chapter 22: FEM PROGRAMS FOR PLANE TRUSSES AND FRAMES 22–2 TABLE OF CONTENTS Page §22. . . . 22–3 .2. . . .3.1. Analysis Stages §22. . . . . 22–11 .2. . . The processing stage involves three steps: II. For the programs presented here the built in Mathematica function LinearSolve is used. and which are put into separate cells for testing convenience.2-22. §22.1 Recovery of forces including reactions. §22. Upon executing these three processing steps. including nodes and element labels. II. assembles the master stiffness matrix of a plane truss.1 Assembly of the master stiffness matrix. (II) processing. III.3 Solution of the modified equations for displacements. Exercises 22. The statements at the end of the cell test this module by forming and printing K of the example truss. That means the basic modules are presented.4 discuss a complete FEM program for frame analysis for homework assignments. Analysis Support Modules We begin by listing here the modules that support various analysis steps.1. These steps will be demonstrated in class from a laptop computer.2 Plot of the FEM mesh. programmed in Mathematica.1. then the driver program.2 Computation of internal (axial) forces in truss members. Analysis Stages As in all FEM programs. The description is done in “bottom up” fashion. The arguments of PlaneTrussMasterStiffness are 22–3 .3 Plotting deflected shapes and member stress levels.1.22–3 §22. the analysis of a structure by the Direct Stiffness Method involves three major stages: (I) preprocessing or model definition. It uses the element stiffness formation module PlaneBar2Stiffness described in the previous Chapter. the displacements are available The following postprocessing steps may follow: III. with a subordinate element stiffness module. and (III) postprocessing. including animation. which directly sets the data structures.3 ANALYSIS SUPPORT MODULES §22.3.2 Modification of master stiffness matrix and node force vector for displacement boundary conditions. done through a Ku matrix multiplication. I. §22.1 Model definition by direct setting of the data structures. The preprocessing portion of the plane truss analysis is done by the driver program. The program includes some simple minded graphics.2. III. II. Graphic modules are provided in posted Notebooks but not explained. Introduction This Chapter presents a complete FEM program for analysis of plane trusses. listed in Figure 22.3. Assembling the Master Stiffness The function PlaneTrussMasterStiffness. I. {ni. .nodcoor[[nj]]}.LL.i.mprop.A}]]. i++.A. ncoor={nodcoor[[ni]].alpha. Only the elastic modulus Em is used in this program. . Figure 22.y2 }.K}. elemat.L.ncoor.jj]]+=Ke[[i. {A}=fprop.opt. .elefab_.Gme. . y21*x21.mprop. y21*y21}}.3}}.A}=N[{x21. where e is the total number of elements. e. Ke=(Em*A/LLL)*{{ x21*x21. x21*x21.1. 22–4 . { y21*x21.opt]. .y21. e++. i<=neldof.eftab.j1 }. {x21. j<=neldof.eNL. {-y21*x21.nj}=eNL. elemat= Table[{100.Chapter 22: FEM PROGRAMS FOR PLANE TRUSSES AND FRAMES 22–4 PlaneTrussMasterStiffness[nodcoor_.0.mprop_. LL=x21^2+y21^2. y21*y21.2*nj-1. For the other properties zeros may be stored as placeholders. K[[jj. neldof=Length[Ke].ni. {Em.Ke.y21.{1/2}.{10. eNL=elenod[[e]]. x21*y21.eleopt_]:=Module[ {numele=Length[elenod].3}.alpha}=mprop.Gm.rhoe. ii=eftab[[i]].Gm1. LLL=Simplify[LL*L].y2}}=ncoor. {-x21*x21. If [numer.y1. where e is the total number of elements.Em.elefab.opt_]:= Module[ {x1. nodcoor={{0.rho1.-x21*x21.0}. opt=eleopt.-x21*y21. Return[Ke] ].2*ni.j2 }. Ke=PlaneBar2Stiffness[ncoor. nodcoor Nodal coordinates arranged as a two-dimensional list: { { x1.nj.rho.{ x2.rho.numnod=Length[nodcoor].je } }.fprop. mprop=elemat[[e]]. elenod= {{1. x21*y21}. {numer}=opt.alpha1 }.y2.{x2.Em. {{x1.fprop_. ]. eftab={2*ni-1.j. For [i=1. .y21}={x2-x1.{x21. Master stiffness assembly module. Return[K].eleopt]. . K=PlaneTrussMasterStiffness[nodcoor.-x21*y21}.y21.0}. Print["Master Stiffness of Example Truss:"].{3}].numer.{2*numnod}].2*nj}.-y21*y21}. { ie. K=Table[0.2}.Em.0.y1 }.y1}. where n is the total number of nodes.yn } }. with test statements in red.{2*numnod}.elenod.x2.0}. Print[K//MatrixForm].Gm. e<=numele. { xn. fprop=elefab[[e]]. .x21.ii]]=K[[ii. elemat_.-y21*x21. { i2.j]] ]. elefab= {{1}.10}}. elenod Element end nodes arranged as a two-dimensional list: { { i1.alphae } }.LLL.{10. { Eme.Ke}. ].-y21*y21.{2. L=PowerExpand[Sqrt[LL]].fprop. elemat Element material properties arranged as a two-dimensional list: { { Em1. For [e=1. ]. j++. For [j=i.{2*Sqrt[2]}}.elenod_. PlaneBar2Stiffness[ncoor_. . jj=eftab[[j]]. eleopt= {True}.y2-y1}.{1. Print[f]. that is. The logic of ModifiedNodalForces is considerably simplified by assuming that all prescribed displacements are zero. . fmod=f.22–5 §22.4}. .j. Module ModifiedMasterStiffness receives two arguments: 22–5 .k. The assembler uses the freedom-pointer-table technique described in §3. The statements at the end of Figure 22.fmod}.f_] := Module[ {i.2. i=pdof[[k]]. §22. Kmod=K.3. Modifying the master stiffness and node force vector for displacement boundary conditions. Else set to { False } to keep computations in exact arithmetic or symbolic form. f=ModifiedNodeForces[{1.3 ANALYSIS SUPPORT MODULES ModifiedMasterStiffness[pdof_. Modifying the Master Stiffness Equations Following the assembly process the master stiffness equations Ku = f must be modified to account for displacement boundary conditions. For [k=1.k<=np. where e is the total number of elements.k<=np.2. { Ae } }. elefab Element fabrication properties arranged as a two-dimensional list: { { A1 }. Kmod[[i. Print["Assembled Master Stiffness:"].k++. This is the case in the implementation shown here. which is stored as a full matrix. with test statements in red.{6}].2.j<=n. This is done through the computer-oriented equation modification process described in §3.j]]=Kmod[[j.K_] := Module[ {i. K=Array[Kij. along with test statements. whereas ModifiedNodalForces does this for the nodal force vector f.4}. fmod[[i]]=0].i]]=0].:"].4 for merging the element stiffness matrix into the master stiffness.n=Length[K].j++.6}]. eleopt Element processing option: set to { True } to tell PlaneBar2Stiffness to carry out element stiffness computations in floating-point arithmetic. .C.{6. Kmod[[i.k. ModifiedNodeForces[pdof_.np=Length[pdof]. Print[K//MatrixForm]. and A the cross section area. the BCs are homogeneous. Figure 22.2. Print[f].i]]=1 ].4. For [k=1.K]. Modules that perform this operation are listed in Figure 22. For [j=1.2. Print["Master Stiffness Modified For Displacement B.Print[K//MatrixForm].1 test this module by forming and printing the master stiffness matrix of the example truss. Print["Node Force Vector Modified For Displacement B. The module returns the master stiffness matrix K in list K. f=Array[fi. i=pdof[[k]].f]. Return[fmod] ].:"]. Print["Node Force Vector:"]. These statements are executed when the cell is initialized.np=Length[pdof]. K=ModifiedMasterStiffness[{1.k++. Return[Kmod] ]. Module ModifiedMasterStiffness carries out this process for the master stiffness matrix K.Kmod}.2.C. 4}. Graphic modules that support postprocessing are placed in Cells 5A and 5B of the Notebook. On the other hand. §22. uyn } (22. Similarly n=Length[K] sets n to the order of the master stiffness matrix K. Internal Force Recovery Module PlaneTrussIntForces listed in Figure 22. 4B and 4C of the Mathematica notebook.1. 2. One unresolved problem is to find a way for absolute placement of supported nodes for correct deflected-shape animations. §22. contains the list of the four element node displacements in the global system. The first four arguments are identical.3. . and returns the thus modified K as function value.3. The logic of the recovery module is straightforward and follows the method outlined in §3. K The master stiffness matrix K produced by the assembler module described in the previous subsection.2 are chosen to illustrate another feature of Mathematica: the use of the Array function to generate subscripted symbolic arrays of one and two dimensions.3 test the internal √ force recovery for the example truss of Chapters 2-3. For the example truss of Chapters 2-3 this list would have three entries: {1. which computes the internal force in an individual member. respectively. The statements at the bottom of Figure 22. The first five arguments are the same as for the assembler routine described previously. that for homogeneous BCs the two module are independent of each other and may be called in any order. The test statements at the bottom of Figure 22.1) PlaneTrussIntForces makes use of PlaneBar2IntForce. The last argument. −1 and 2 2 for members 1. This is because stiffness coefficients that are cleared in the latter are needed for modifying the force vector. These modules are not listed since they are still undergoing modifications at the time of this writing. if there were nonzero prescribed displacements the force modification must be done before the stiffness modification. Note the use of the Mathematica function Length to control loops: np=Length[pdof] sets np to the number of prescribed freedoms. These plot unlabeled elements..4. and boundary conditions. It is important to note. Both the force vector and its modified form are printed as row vectors to save space. elements and nodes with labels. Module ModifiedNodalForces has a very similar structure and logic and need not be described in detail. places ones on the diagonal. PlaneBar2IntForce is similar in argument sequence and logic to PlaneBar2Stiffness of Figure 22.Chapter 22: FEM PROGRAMS FOR PLANE TRUSSES AND FRAMES 22–6 pdof A list of the prescribed degrees of freedom identified by their global number. however. 2 and 3. uy1 . u y1 and u y2 in u. Graphic Modules Graphic modules that support preprocessing are placed in Cells 4A. u. . The module clears appropriate rows and columns of K. These plot deformed shapes and axial stress levels in color. a and should return forces of 0. The test output should be self explanatory and is not shown here. one dimensional list: { ux1. which is used to bound the row and column clearing loop. uxn. The last argument. These statements may be placed in the list that declares local variables. 22–6 .3. which are the freedom numbers of u x1 . ue.3 computes the internal forces (axial forces) in all truss members.2. contains the computed node displacements arranged as a flat. fprop.i<=4.pe}.mprop. {A}=fprop.mprop.nj.{2.mprop_.e.y2. p=Table[0.u].0}. It is fixed at node 1 and on rollers at node 12. Atop.3}. {numer}=opt.elenod. This is a two-dimensional list that specifies freedom values.u_]:= Module[{numele=Length[elenod].nodcoor[[nj]]}. elemat= Table[{100.alpha}=mprop.opt.{4}].elefab.numer. ue=Table[0.ue] ]. elefab= {{1}.{x2.4 A BRIDGE TRUSS EXAMPLE PlaneTrussIntForces[nodcoor_. node by node. Abat and Adia. eftab={2*ni-1.A}]].{numele}].{3}]. ue[[i]]=u[[ii]]]. elenod= {{1. ii=eftab[[i]].elenod_.elemat_.5 and 22. §22.0. top longerons.nj}=eNL.alpha. ProcessOptions Same configuration as eleopt FreedomValue.3}}.i++.x21. for the areas of bottom longerons. 7.22–7 §22. 9 and 11. numnod=Length[nodcoor].fprop.elemat.0.eleopt.rho. eleopt_. pe=Em*A*(x21*(ue[[3]]-ue[[1]])+y21*(ue[[4]]-ue[[2]]))/LL.4. For [i=1. e<=numele. Print[p].0.opt_. p[[e]]=PlaneBar2IntForce[ncoor.elefab_. Figure 22.{1/2}. ncoor={nodcoor[[ni]].A.10}}.x2. This list is built up from four repeating cross sectional areas: Abot.6. respectively. For example FreedomValue[[7]] = { 0. {{x1. then the value of nonzero applied loads is set at nodes 3. p=PlaneTrussIntForces[nodcoor.Gm.{1.ue_]:= Module[ {x1. {ni.3. u={0.{10. Return[pe] ].{10.2*nj-1. FreedomTag.fprop_. For [e=1. fprop=elefab[[e]]. It begins by defining the problem through specification of the following data structures: NodeCoordinates Same configuration as nodcoor ElemNodeLists Same configuration as elenod ElemMaterials Same configuration as elemat ElemFabrication Same configuration as elefab. A Bridge Truss Example The driver program in Cell 6 defines and runs the analysis of the 6-bay bridge truss problem defined in Figure 22.LL. mprop=elemat[[e]]. This truss has 12 nodes and 17 elements. opt=eleopt.*) LL=x21^2+y21^2.2}.i. It is initialized to zero on creation.y2}}=ncoor. {Em.2*nj}.ue.opt.Em.-0. eNL=elenod[[e]].y21.ni. whether the value 22–7 .Gm.y1.y21}={x2-x1.-16 } specifies f x7 = 0 and f y7 = −16.2}.{2*Sqrt[2]}}. PlaneBar2IntForce[ncoor_.0. Print["Int Forces of Example Truss:"]. ncoor.4. (*If [numer.A}=N[{x21.0.Em. for each nodal freedom. nodcoor={{0. battens and diagonals.0}. 5. with test statements in red.y21. Calculation of truss internal forces.4.Em. eleopt= {True}.{x21.y1}.y2-y1}.eftab. The driver is listed in Figures 22. {x21.eNL.rho.y21.2*ni.0.0}.p}. This is a two-dimensional list that specifies. Return[p] ]. e++. 3. The master stiffness matrix is assembled by the module listed in Figure 22.2) which takes advantage of the built-in linear solver provided by Mathematica. diagonals: 1 top joints lie on parabolic profile 9 10 10 16 10 10 span: 6 bays @ 10 = 60 2 . is placed in f.22–8 Chapter 22: FEM PROGRAMS FOR PLANE TRUSSES AND FRAMES (a) Elastic modulus E = 1000 Cross section areas of bottom longerons: 2..5–6 produces the output shown in Figure 22. The complete displacement vector is obtained by the matrix calculation u=LinearSolve[Kmod. (7) (8) 1 x 4 3 (2) 6 (3) 8 (11) (16) (19) 5 (10) (15) (14) (13) (18) (1) (9) (20) 7 (4) 10 . The applied force vector stored as a one-dimensional list. then the support tags at nodes 1 (fixed) and 12 (horizontal roller) are set. The program prints u. The displacement boundary conditions are applied by the modules of Figure 22. The prescribed degree-of-freedom array pdof is constructed by scanning FreedomTag for nonzero values. It is initialized to zero on creation. Output plot results are collected in Figure 22. which return the modified master stiffness Kmod and the modified node force vector fmod.u (recall that K contains the unmodified master stiffness matrix). of the force (tag 0) or displacement (tag 1) is prescribed. Note that the modified stiffness matrix is stored into Kmod rather than K to save the original form of the master stiffness for the recovery of reaction forces later.8. For this problem pdof={ 1. For example. . The stiffness matrix is placed in K. top longerons: 10.. Running the program of Figures 22..23 }. f and p as row vectors to conserve space.fmod] (22.2.2. The remaining calculations recover the node vector including reactions by the matrix-vector multiply f = K. The member internal forces p are obtained through the module listed in Figure 22.1. FreedomTag[[1]] = { 1.4.7. (b) finite element idealization as pin-jointed truss. which results from the application of built-in function Flatten to Freedom Value. Processing commands are listed in Figure 22.1 } says that both node displacement components u x1 and u y1 of node 1 are specified. ..6. (b) y (12) (21) (17) 9 (5) 11 (6) 12 Figure 22. Six-bay bridge truss used as example problem: (a) truss structure showing supports and applied loads. battens: 3. 22–8 . Kmod=ModifiedMasterStiffness[pdof.9}. u=Chop[u].{40. Print["Internal Member Forces:"].aspect.8}. Print["External Node Forces Including Reactions:"]. If[FreedomTag[[n.11}.0}. sigma=Table[p[[i]]/ElemFabrication[[i.5}. FreedomValue[[3]]={0. aspect=0.numele}].{3.ElemNodeLists. ElemNodeLists= {{1.0}.Table[{Atop}.{numnod}]. Figure 22.eleopt.{6. FreedomTag[[1]]= {1.2*(n-1)+j]]]].0. Driver for analysis of the bridge truss: processing and postprocessing.12}. 22–9 .0}.1}. 1.5}. K=PlaneTrussMasterStiffness[NodeCoordinates.u]. ElemMaterial."Axial stress level"].12}. "test mesh"].aspect.ElemFabrication.0}.{50.{10.ElemNodeLists.{20. f=Chop[f].0. fmod=ModifiedNodeForces [pdof.{8.fmod].8}.ElemFabrication.-10}.10}}.ElemNodeLists. For[j=1.-10}.0. {1. Table[{Abat}. ElemMaterial= Table[{1000.{9. Print["Applied node forces="]. For[n=1.7}.j++.05}]. Print[p]. (* fixed node 1 *) FreedomTag[[numnod]]={0.Table[{Adia}. PlotTrussDeformedShape[NodeCoordinates.7}. ElemFabrication=Join[Table[{Abot}.0}. Atop=10.5}. p=Chop[p].6.{20. "test mesh with elem & node labels".3}.{i. FreedomValue[[7]]={0.-10}.{4. Print[FreedomValue].{7. FreedomValue[[11]]={0. f=Simplify[K.u].9}.0.ElemNodeLists.{True. FreedomTag=FreedomValue=Table[{0. numnod=Length[NodeCoordinates]. PlotAxialStressLevel[NodeCoordinates.{5.8}.{10.10}. Driver for analysis of the bridge truss: preprocessing. PlotLineElements[NodeCoordinates.12}.{True.{6.{4}]].{5}]. {2. FreedomValue[[9]]={0.ProcessOptions]. 1. Adia=1.22–9 §22.2}.f].{60.j<=2.0}.sigma. Print[f].K]. ElemNodeLists.{8.0}.u.4}.-16}.5}. Abat=3.n++. NodeCoordinates={{0.aspect.{50.0}}.{6}]. pdof={}. {30. numdof=2*numnod.{2.-10}.5. (* hroller @ node 12 *) Figure 22. ProcessOptions= {True}.1.7}. FreedomValue[[5]]={0.{7.{4.5}.3}.j]]>0. Print["Computed Nodal Displacements:"].ElemNodeLists.{numele}].n<=numnod.0. PlotLineElementsAndNodes[NodeCoordinates. {2."Deformed shape"].{6}].9}.ElemMaterial.11}.{10.{10.aspect. p=PlaneTrussIntForces[NodeCoordinates.6}.1}. f=Flatten[FreedomValue].0}. u=LinearSolve[Kmod. AppendTo[pdof. Abot=2. Print[u]. numele=Length[ElemNodeLists].0.1]].{4.{30.8}.{40.{9.{11.4 A BRIDGE TRUSS EXAMPLE ClearAll[]. 2.415.2993.20156. 0 Computed Nodal Displacements: 0.3166. 0. 0. 1.... 10. 0. 0.0318.885464. 10. 3. 10. 0. 12.6099. 0.7756. 0. 0.8.7. 2. Printed output from the bridge truss analysis.809536. 28. 0.56.. 62.22–10 Chapter 22: FEM PROGRAMS FOR PLANE TRUSSES AND FRAMES Applied node forces 0.. 0. 0.7756. 0.. 10. 0. 57. 0.135.695. 10. 0. 60. 60. 0.0318. 0. 10. 0. 60.6099.42194. 10. 16. 0. 0.38594. 1. 1.8475.25..79226. 0.. 0.3166.5. 0.5. 0. 1.28. 2.795999. 0. 10. 9. 9.2993. 0. 0.67705. 0. 62. 22–10 12 . 56. 0. 60. 1. 0. 10. 0 External Node Forces Including Reactions: 0. 2.. 3.25. 0. Internal Member Forces: 56. 1. 16. 0. 56. 0. 1. 0. 1. 0.67705 Figure 22.. 0.899001. Graphics output from the bridge truss analysis. 1. 0. 0.. 0..8475. 0.29193.20156. 57.. test mesh test mesh with elem & node labels 1 7 1 2 8 13 3 18 2 4 9 14 5 19 3 6 15 7 10 8 20 16 9 4 11 10 21 5 17 11 12 6 Deformed shape test axial stress level plot Figure 22.79226. 0. 10. 28. 2. 2. 56.29193. 0. The incomplete internal force module is shown in Figure E22. and save it. The lower cell shows the test output produced by a correctly completed module. then pick SaveSelectionAs -> Plain Text from the Edit menu. Do not touch for this one. To recover the end moments refer to the pertinent equations in Chapter 13. The same test statements can be kept. download the PlaneFrame. Cell 4-5: Graphic Modules. The incomplete assembler is shown in Figure E22. Complete these with rotations θi and θ j (which do not need to be transformed) to form the 4 × 1 beam local node displacement vector. y displacements and the rotation about z are zero. some of the modifications involve only partially filled Modules. and should not be touched.2 Furthermore the element displacement vector has six degrees of freedom. Cell 1: Assembler. along with the output of the test statements for those cells.1.1 Placeholder.2 [C:25] Using the PlaneTruss. u yi and θi .3 [C:25] Use the program developed in the previous Exercise to analyze the plane frame shown in Figure E22. and the material is the same. (e) to get the bending moments. is included in Cell 1 of the PlaneFrame. These are now provided ready to use. Two end moments are required because the beam element used here has linearly varying curvatures and hence moments.2. Cell 3: Internal Force Recovery. The test statements are shown in red after the module. (ii) the bending moment m i = E I κi at end node i. give it a file name in the pop-up dialogue box. and (iii) the bending moment m j = E I κ j at end node j. For element e recover the transverse displacements u¯ yi and u¯ y j in the local element system x¯ (e) .nb Notebook posted on the web site as guide. also known as clamped condition. The lower cell shows the test output produced by a correctly completed module. EXERCISE 22. EXERCISE 22. complete the PlaneFrame. called PlaneBeamColumn2Stiffness.nb Notebook that implements the analysis of an arbitrary plane frame using the plane beam stiffness presented in Chapter 21. y¯ (e) . a fixed condition. The two modules should work correctly for this problem since they dont assume anything about freedoms per nodes.nb notebook linked from the Chapter 22 index. Both modules require modifications because the beam has 3 internal forces: (i) the axial force (which is recovered exactly as for bars). To begin this homework. This module. Then apply the curvature-displacement relation (13. Cell 2: BC Applicator. 1 2 3 If you want to extract an individual cell from a Notebook to work on a separate file (a good idea for working on groups) select the cell. not just four.3. Test the modules on a simple beam problem. as described below.nb Notebook file from the web site. B and C. The test statements are shown in red after the module. Cell 6: Driver Program: use this for Exercise 22. The modification involves selected Cells of the Notebook. 22–11 .1 In modifying the assembler module. respectively. For additional details refer to the Notebook.22–11 Exercises Homework Exercises for Chapter 22 FEM Programs for Plane Trusses and Frames EXERCISE 22. No modifications are necessary. remember that there are three degrees of freedom per node: u xi . As solution to this Exercise return a listing of the completed Cells 1 and 3. The frame is fixed3 at A. All members have the same cross section a × a for simplicity. The element stiffness routine is the beam-column stiffness presented in Chapter 21. The steps are as follows. not just two.13) at ξ = −1 and ξ = 1 to get the two end curvatures κi(e) and κ (e) j . Finally multiply those curvatures by E (e) Izz For a plane frame. means that the x.3. It is loaded by a downward point load P at G and by a horizontal point load 12 P at D. 9. 21.5 m). Print["Master Stiffness of Example Frame:"]. 0.{10. 200. 22. Print[K//MatrixForm].{2.{10. H = 6.Ke.2132 21.6129.2}. Module PlaneBeamColumn2Stiffness.843   21. Master Stiffness of Example Frame: 22. elefab= {{1. The SI physical units to be used are: mm for lengths. 81.4971.87868 12. 800. 60.2132           21. 0.1213 7. 5. 0. 14. 12. K=PlaneFrameMasterStiffness[nodcoor. For the calculations use the following numerical data: L = 10.elefab_.2132 0. 0.fprop. 0.3}.000 (6 m).2132 1121. 60.7.1213 21. nodcoor={{0. e.2132 10.5 Provide deformed shape plot (but not the animation) and the frame stress level plots as part of the homework results. 22–12 . B E and C F.elenod.eNL. N for forces. 0. e++.Chapter 22: FEM PROGRAMS FOR PLANE TRUSSES AND FRAMES 22–12 (* PlaneBeamColumn2Stiffness module goes here *) PlaneFrameMasterStiffness[nodcoor_.elemat.{3*numnod}.87868 21. 46.87868 12.ni. 7. Output cell results are produced by a correct module.1.652. elenod= {{1.3}}.1213 21. The results of primary interest are: 1. elemat= Table[{100. 0.2132 141.mprop. 0. 0.{2*Sqrt[2]. The recommended finite element discretization of two elements per member is shown in Figure E22. Note: the Notebook on the web contains some of the actual plots produced by the complete Notebook.2132 0. eleopt= {True}. (* missing statements *) Ke=PlaneBeamColumn2Stiffness[ncoor. that module was listed in Figure 21. 200.000 mm (10 m). 3. and the flexural moment of inertia about the neutral axis is Izz = a 4 /12.4.87868 24. 555.2132          7. and the maximum bending moment in the columns AD.opt].{1/2.             0. K=Table[0. 0.10}}.0}. 60. 0.K}.87868 21.numnod=Length[nodcoor]. Print[Chop[Eigenvalues[K]]].421 60.1213 7.2132 682.10}.nj. 24.         7. 0.0. 17. E = 35.opt.1213 81.843 0.2132 21.2132 682. with appropriate sign4 . e<=numele.elefab.{1.2132 81. 200.fprop. 0 Figure E22. 60.366.2.1213 7.{3*numnod}]. As solution to this exercise list the driver program you used and the displacement and internal force outputs. elemat_. 7. 12.0.1213 21. which goes in the upper portion of the cell is omitted to save space.2132       141. It should be continuous at all joints except E.421            10. 2.2132 21.0}. 22.elenod_.87868 21.87868 17.0}.eleopt]. 4 Plus for tension. (* missing statements *) ].2132 12. The axial forces (N) in columns AD.eleopt_]:=Module[ {numele=Length[elenod].87868 81. 60.1213 7.800 N. P = 4.eftab. 531. 12. For [e=1. 60. 0. and MPa=N/mm2 for elastic moduli.mprop. 60. Return[K] ].           0.{3}]. a = 500 mm (0. The member cross section area is A = a 2 . 12.000 MPa (high strength concrete). B E and C F.10}}.i.10}. The horizontal displacement at D. minus for compression 5 The bending moment varies linearly over each element.mm) over the floor members D E and E F. with test statements in red. 200. 60. The maximum bending moment (N. The incomplete assembler module for Exercise 22. 60. 5. 60.ncoor.j. 60.338. and the vertical displacement at G (mm).          0. 0.2132    12. opt.3*nj-2.0}. eleopt_.alpha}=mprop. {Em.y2-y1}.3*nj}.nj}=eNL.2}. ue=Table[0.Izz3}}. u={0.Izz3.Izz1}.Izz}]]. For [i=1. For [e=1. p=Table[0.{L.Em. p[[e]]=PlaneBeamColumn2IntForces[ncoor. e<=numele.{x2. elefab= {{A1. ncoor={nodcoor[[ni]].y1.eftab.alpha.0. Print["Int Forces of Example Frame:"].elenod_.elefab.Em.Gm.ue_]:= Module[{x1.    .A1.Izz. {ni. If [num.{3}]}.nj.{x21.num. eftab={3*ni-2.mprop_. ClearAll[L.3*ni.A. Return[p] ].Izz1.uz2.x2. ue[[i]]=u[[ii]]].pe=Table[0.L}}.3}.{A2.y21.rho. numnod=Length[nodcoor]. elemat= Table[{Em.i<=6. opt=eleopt.elemat.rho.{3}].fprop_.x21.uy2.cv2.elenod.ni.uy1.y2. 0.y21.{2.uy3.elemat_.uz3].22–13 Exercises PlaneFrameIntForces[nodcoor_.{A3.mprop.y1}.uz1.{L.3}}.mprop. elenod= {{1. 0.p}.0.Gm.nodcoor[[nj]]}.{1.A.fprop.Em.   . PlaneBeamColumn2IntForces[ncoor_.Izz2.0}. mprop=elemat[[e]]. {num}=opt.i++.uz2. eNL=elenod[[e]].2 *) Return[pe] ]. ii=eftab[[i]]. p=PlaneFrameIntForces[nodcoor.y2}}=ncoor.0}.ue. Int Forces of Example Frame: 6 Em Izz1 uy1  uy2 6 Em Izz1 uy1  uy2 A2 Em uy2  uy3 0.L.elefab_.0}. eleopt= {False}.LL. nodcoor={{0. ncoor.3*ni-1.y21}={x2-x1.Izz}=N[{x21. dvy.opt_.u_]:= Module[{numele=Length[elenod].fprop.Izz2}.0.i. Print[p].eNL.eleopt. fprop=elefab[[e]].0.e.A. e++. {x21.3*nj-1. (* missing statements for Exercise 22.y21.u].opt. {{x1.{6}].ue] ].cv1.A2.{numele}]. {A.Izz}=fprop.Em. 0. 0.   ..    .   . L2 L2 L A3 Em uy1  uy3 3 Em Izz3 uy1  uy3 3 Em Izz3 uy1  uy3   .. . 8 × 106 N.232 mm (⇓) at node 4 Largest negative bending moment: −6.4 [D:20] Explain why the solution given by the FEM model of Figure E22. 22–13 . Incomplete element internal force recovery module for Exercise 22. Partial answers for this exercise: Largest vertical displacement: -0.2.mm. to be used as targets. Figure E22. Results in output cell are those produced by a correct module. cannot be improved by subdividing each element into more elements.3 is exact for the Bernoulli-Euler bending model. Test statements in red. at node 5 of element (4) Axial forces: −2651 N over (3) and (4) EXERCISE 22. that is.2.2.     2L 2 L2 2 L2 Figure E22. 4.y is arbitrary.3.22–14 Chapter 22: FEM PROGRAMS FOR PLANE TRUSSES AND FRAMES P L /2 y cross section of all members: P/2 D E G F H a a H x B A Origin of x. Plane frame structure for Exercise 22. C L L Figure E22. P P/2 3 (3) 5 (4) (5) 6 4 (2) 2 (9) (7) 8 10 (10) (1) 1 7 (6) (8) 11 Figure E22. Recommended FEM discretization for the plane frame of the previous figure. 22–14 9 .3. Implementation of Iso-P Quadrilateral Elements 23–1 .23 . . . .2. §23. . . . . . . .6. . .1. . . Exercises . Test of Trapezoidal Geometry . Element Stiffness . .5. . §23. 23–3 23–3 23–3 23–5 23–5 23–7 23–7 23–8 23–10 23–10 23–12 23–12 23–13 23–14 . Test of Rectangular Geometry .2. . . .1. . . .Chapter 23: IMPLEMENTATION OF ISO-P QUADRILATERAL ELEMENTS 23–2 TABLE OF CONTENTS Page §23. Shape Function Evaluation . Introduction §23. 23–2 . . *Consistent Node Forces for Body Force Field §23. . . . . §23. . . . . . . . . . . . Notes and Bibliography . . . References . . . . Gauss Quadrature Rule Information . §23.2. . . . . . . §23. . *Recovery of Corner Stresses §23. . . . . . . . . . . . . . . .3. . . . . . . . . . . .3. . . . . Test of Bilinear Quadrilateral §23. . . .1. . . .2. §23. . . . .3. . . . .3. . . . . . . . . . . . . *Quadrilateral Coordinates of Given Point §23. . . . . §23. .2. . .4. . . . . Bilinear Quadrilateral Stiffness Matrix §23. .2. The programming example is that of the four-node bilinear quadrilateral. depicted in Figure 23. For the bilinear quadrilateral stiffness computations. but not always. and stress recovery at selected points. y 1 ) η=−1 2 (x 2 . Quad4IsoPShapeFunDer.2. Returns two-dimensional Gauss quadrature formula of product type. whereas p1 and p2 are the number of Gauss points in the ξ and η directions. 23–3 .1. y 2 ) Figure 23. the computer implementation of isoparametric quadrilateral elements for the plane stress problem. Often.2.3 that Gauss quadrature rules for isoparametric quadrilateral elements have the canonical form  1  1  1 1 p1 p2 . For multidimensional elements. in a “bottom up” fashion. §23. Introduction This Chapter illustrates. as flowcharted in Figure 23. are covered in the next Chapter. The element stiffness matrix of simple one-dimensional elements. (23.1. for example to construct thermal. η j ).1. The application independent modules can be “reused” in other FEM applications.1) −1 −1 −1 −1 i=1 j=1 Here F = hBT EB J is the matrix to be integrated. the separation of Figure 23. η 4 (x 4 . the consistent node force vector for a body forces. Evaluates the shape functions of a four-node isoparametric quadrilateraland their x/y derivatives.23–3 §23. η) dξ = wi w j F(ξi . η) dξ dη = dη F(ξ. which present some programming quirks. at a specific point. Triangles. however. the same number p = p1 = p2 is chosen in both directions. fluid or electromagnetic elements. §23.  F(ξ. y 3 ) ξ=1 ξ ξ=−1 1 (x 1 . A formula with p1 = p2 is called an isotropic integration rule because directions ξ and η are treated alike. Bilinear Quadrilateral Stiffness Matrix We consider here the implementation of the 4-node bilinear quadrilateral for plane stress.2 is done by dividing the work into three modules: Quad4IsoPMembraneStiffness. it is convenient to break up the implementation into application dependent and application independent modules. can be easily packaged in a simple module. The 4-node bilinear quadrilateral element. respectively. QuadGuassRuleInfo. The organization of the computations is typical of isoparametric-element modules in any number of space dimensions.1. through a specific example.2. It covers the computation of the element stiffness matrix. Computes the element stiffness matrix Ke of a four-node isoparametric quadrilateral element in plane stress.2 BILINEAR QUADRILATERAL STIFFNESS MATRIX §23. y 4 ) η=1 3 (x 3 . These modules are described in further detail in the following subsections. Gauss Quadrature Rule Information Recall from §17. such as the ones discussed in Chapters 20– 22. If [p==2. Sqrt[(3-2*Sqrt[6/5])/7]. 322+13*Sqrt[70].Null}. m=point. (1/2)+Sqrt[5/6]/6.Null}. If [p==3. Module to get Gauss-product quadrature information for a quadrilateral. Usage of this module was described in detail in §17.0.j.point_]:= Module[ {g2={-1.p2.numer}. (1/2)-Sqrt[5/6]/6}. info={g3[[i]]. Sqrt[5-2*Sqrt[10/7]].w1}= LineGaussRuleInfo[{p1. LineGaussRuleInfo[{rule_. Return[Simplify[info]]]. If [numer. info={0.w3={5/9.-Sqrt[(3-2*Sqrt[6/5])/7]. 23–4 .i]. info={{ξ . Separation of element stiffness modules into application-dependent and application-independent levels. w5={322-13*Sqrt[70].-Sqrt[5-2*Sqrt[10/7]].w4[[i]]}].3. info={g4[[i]]. If [Length[point]==2.w2}= LineGaussRuleInfo[{p2. along with its subordinate module LineGaussRuleInfo.5/9}. Return[Simplify[info]]]. 23–4 APPLICATION DEPENDENT Element Stiffness Module Shape Function Module Gauss Quadrature Information Module APPLICATION INDEPENDENT Figure 23. If [Length[rule]==2.p1. ]. Figure 23.2.j}=point.numer}.numer}. info={g5[[i]]. (1/2)+Sqrt[5/6]/6.info={{Null. If [p==1. in Figure 23. If [p==5.w5[[i]]}]. {p1. {ξ . {i. Sqrt[5+2*Sqrt[10/7]]}/3.m.w2. Return[QuadNonProductGaussRuleInfo[ {-p1. QuadGaussRuleInfo[{rule_. This module is classified as application independent since it can reused for any quadrilateral element.1}]. i=point.0. j=Floor[(m-1)/p1]+1.point]]].512. w4={(1/2)-Sqrt[5/6]/6.p=rule. ].j].numer_}.8/9.numer_}.1}/Sqrt[3].2}].3.η. For the readers convenience it is listed.w3[[i]]}].0}}. i=m-p1*(j-1) ].point_]:= Module[ {ξ .Chapter 23: IMPLEMENTATION OF ISO-P QUADRILATERAL ELEMENTS QuadGaussRuleInfo is an application independent module that implements the two-dimensional product Gauss rules with 1 through 5 points in each direction. If [p==4.i.322+13*Sqrt[70].3. Sqrt[(3+2*Sqrt[6/5])/7]}. Return[N[info]]. {η.η}. The number of points in each direction may be the same or different.Sqrt[3/5]}.322-13*Sqrt[70]}/900. g5={-Sqrt[5+2*Sqrt[10/7]]. g4={-Sqrt[(3+2*Sqrt[6/5])/7]. info={g2[[i]]. p1=p2=rule]. If [numer.info={{Null.w1*w2}.0}}. g3={-Sqrt[3/5]. If [p1<0.w1.p2}=rule. Return[N[info]].4. Emat.{i.4}].2. x=Table[ncoor[[i. dNy=Simplify[dNy].2.dNx. The module is invoked as Ke=Quad4IsoPMembraneStiffness[ncoor.{i.(1+ξ ).4. List Nf collects the shape function values. The module configuration is typical of isoparametric elements in any number of dimensions.J11.(1+η). Figure 23. Element Stiffness Module Quad4IsoPMembraneStiffness computes the stiffness matrix of a four-noded isoparametric quadrilateral element in plane stress. 23–5 (23. η}.dNη. The statements at the bottom of the module box (not shown in that Figure) test it for specific configurations. and Jdet is the Jacobian determinant called J in Chapters 17. The former have the same configuration as described for the element stiffness module below. (1-η).Jdet}] ].η.J12.2.2) . J12=dNξ .y. which are passed in qcoor.Jdet.x.y.{ x3.Nx. Ny the shape function y-derivatives.x. is straightforward and follows closely the description of Chapter 17.dNy. in which the first three are 4-entry lists. 3.qcoor_]:= Module[ {Nf. The module logic is listed in Figure 23.dNx. but for strain and stress computations these may be other points. The quadrilateral coordinates define the element location at which the shape functions and their derivatives are to be evaluated.y2 }. dNx=Simplify[dNx]. §23.y}. Shape function module for 4-node bilinear quadrilateral. 4 and its x-y partial derivatives at the sample integration points. dNx= ( J22*dNξ -J12*dNη)/Jdet.3. (1-ξ )}/4. Return[{Nf.dNξ . J11=dNξ . listed in Figure 23. Nx the shape function x-derivatives.(1+ξ )*(1+η). For the stiffness formation these are Gauss points.J22. §23.2]].y3 }.y4 } }.options] The arguments are: ncoor Quadrilateral node coordinates arranged in two-dimensional list form: { { x1. 2.dNy. which are passed in ncoor.η}=qcoor. i = 1.y1 }. Nf={(1-ξ )*(1-η).i. Jdet=Simplify[J11*J22-J12*J21]. dNξ ={-(1-η). and the two quadrilateral coordinates {ξ.x.ξ .th.4}]. Quad4IsoPShapeFunDer returns the two-level list { Nf.1]]. The arguments of the module are the {x. y} quadrilateral corner coordinates. dNη= {-(1-ξ ).(1-ξ )*(1+η)}/4.Ny. dNy= (-J21*dNξ +J11*dNη)/Jdet.-(1+η)}/4.Jdet }. y=Table[ncoor[[i.4.{ x4.{ x2. It follows closely the procedure outlined in Chapter 17.23–5 §23. such as corner nodes. The logic.2 BILINEAR QUADRILATERAL STIFFNESS MATRIX Quad4IsoPShapeFunDer[ncoor_. J22=dNη.5. Shape Function Evaluation Quad4IsoPShapeFunDer is an application independent module that computes the shape functions Nie .(1+ξ )*(1-η).-(1+ξ ). {ξ .J21. J21=dNη. {numer. k<=p*p.qcoor. it reduces to   1 ν 0 E (23.{i.p } or one: { numer }. dNy[[i]]}.dNy.h2. c=w*Jdet*h.3) E = E 12 E 22 E 23 E 13 E 23 E 33 arranged as { { E11.numer=False.numer}.4}]].5. Return[Null]]. 2 The rank of an element stiffness is discussed in Chapter 19. For rank sufficiency.{8}]}.E12.Ke=Table[0.Nf].w}= QuadGaussRuleInfo[{p.c.p=2.h=th. If [p<1||p>4. Flatten[Table[{0. If p is 1 the element will be rank deficient by two.p}=options.Emat_.E22. The first form is used to specify an element of variable thickness. k++. Be={Flatten[Table[{dNx[[i]]. If [Length[th]==4.Chapter 23: IMPLEMENTATION OF ISO-P QUADRILATERAL ELEMENTS 23–6 Quad4IsoPMembraneStiffness[ncoor_.Nf. This list may contain two items: { numer. p must be 2 or higher. h=th.dNx.h3.{ E12. This matrix must be symmetric. For [k=1.Be. If the material is isotropic with elastic modulus E and Poisson’s ratio ν. dNx. If [Length[options]==2.4}]]}.w.k.{i. The second form specifies uniform thickness. the computations are done in floating point arithmetic.k].(Emat. Return[Simplify[Ke]] ]. 23–6 . This becomes more pronounced as elements get more complicated. in which case the entries are the four corner thicknesses and h is interpolated bilinearly.Be)].{i.Jdet. {Nf.E23. A symbolic or exact computation can take orders of magnitude more time than a floating-point evaluation.4) E= ν 1 0 1 − ν 2 0 0 1 (1 − ν) 2 th The plate thickness specified either as a four-entry list: { h1. {qcoor. Figure 23.{8}. Ke+=Simplify[c*Transpose[Be]. 0}. p may be 1 through 4. If True.Jdet}=Quad4IsoPShapeFunDer[ncoor.options_]:= Module[{i. options Processing options.4}]].E33 }. 1 The reason for this option is speed.dNy. ].1 p specifies the Gauss product rule to have p points in each direction. Print["p out of range"].2 If omitted p = 2 is assumed. numer is a logical flag with value True or False. Flatten[Table[{dNy[[i]].E33 } }.qcoor].h4 } or as a scalar: h. Element stiffness formation module for 4-node bilinear quadrilateral.th_.dNx[[i]]}.E23 }. For symbolic or exact arithmetic work set numer to False.{numer}=options].{ E13. Emat A two-dimensional list storing the 3 × 3 plane stress matrix of elastic moduli:   E 11 E 12 E 13 (23. The module returns Ke as an 8 × 8 symmetric matrix pertaining to the following arrangement of nodal displacements: ue = [ u x1 u y1 u x2 u y2 u x3 u y3 u x4 u y4 ]T .1.6(a).6. The two geometries will be used to illustrate the effect of the numerical integration rule. Test of Bilinear Quadrilateral The stiffness module is tested on the two quadrilateral geometries shown in Figure 23. The plate has unit thickness and isotropic material with E = 96 and ν = 1/3.6. (23.3 4 (a) TEST OF BILINEAR QUADRILATERAL 3 4 (b) a a 3 a 1 2 2a 1 2a 2 Figure 23.3. This is a rectangle of base 2a and height a.7) Note that the rectangle dimension a does not appear in (23. §23.5) §23. giving the stress-strain constitutive matrix  E= 108 36 0 36 108 0 0 0 36  (23. Both elements have unit thickness and isotropic material.7 computes and displays the stiffness of the rectangular element shown in Figure 23. Test quadrilateral element geometries.7). The right one is a right trapezoid with base 2a. This follows from the fact that entries of the strain-displacement matrix B have dimensions 1/L.23–7 §23. Test of Rectangular Geometry The script listed in Figure 23. This is a general property: the stiffness matrix of plane stress elements is independent of in-plane dimension scalings. where L denotes a 23–7 . top width a and height a.6) Using a 2 × 2 Gauss integration rule returns the stiffness matrix   42 18 −6 0 −21 −18 −15 0 78 0 30 −18 −39 0 −69   18   0 42 −18 −15 0 −21 18   −6   30 −18 78 0 −69 18 −39   0 e K =  0 42 18 −6 0  −21 −18 −15   0 −69 18 78 0 30   −18 −39   −15 0 −21 18 −6 0 42 −18 0 −69 18 −39 0 30 −18 78 (23.3. The left one is a rectangle of base 2a and height a. Test of Trapezoidal Geometry ClearAll[Em.{0. Figure 23. and 2 Gauss points in each direction suffice to compute the integral exactly.h.1.e. Consequently entries of BT B have dimension 1/L 2 .a}}. the element stiffness keeps changing as p is varied from 1 to 4. h=1.nu. The element is rank sufficient. however.3603 42 0 0 0] (23. The value of p is changed in a loop.{0.1).Emat. Unlike the rectangular case.2.a}.Chop[Eigenvalues[N[Ke]].p}]. The strange value of E = 48×63×13×107 = 4206384. Ke=Quad4IsoPMembraneStiffness[ncoor.h.nu.(* 2 x 2 Gauss rule *)numer=False. For [p=1.p]. Using a higher order Gauss integration rule.p++.{nu. 23–8 . and J is constant.Emat//MatrixForm].0.0}.7) has the eigenvalues [ 223. Print["Ke=". Print["Eigenvalues of Ke=".0000001]] ].0}.0}.6(b) for four Gauss integration rules. h=1.. Driver for stiffness calculation of trapezoidal element of Figure 23. nu=1/3.2.p. The computed entries of Ke are transformed to the nearest rational number (exact integers in this case) using the built-in function Rationalize. nu=1/3.0}.numer].8) This verifies that Ke has the correct rank of five (8 total DOFs minus 3 rigid body modes). Figure 23. since in that case the entries of B vary linearly in ξ and η.Chop[Eigenvalues[N[Ke]]. for p ≥ 2 in agreement with the analysis of Chapter 19.0000001]]. Using a 1 × 1 rule yields a rank-deficiency matrix.Ke//MatrixForm].{0.{0.3. Em=96. characteristic inplane length.6(a) for 2 × 2 Gauss rule.Emat.8.a.0. ncoor={{0.7. Integration over the element area cancels out L 2 .2.nu.a}.(1-nu)/2}}. The flag numer is set to True to use floating-point computation for speed (see Remark 23. (* 2:1 rectangular geometry *) p=2. Print["Eigenvalues of Ke=". §23. Therefore the integrand h BT E BJ is at most quadratic in ξ and η. This is a property characteristic of the rectangular geometry.0}.{2*a.{nu.Chapter 23: IMPLEMENTATION OF ISO-P QUADRILATERAL ELEMENTS 23–8 ClearAll[Em. Ke=Simplify[Chop[Ke]]. (* isotropic material *) Emat=Em/(1-nu^2)*{{1.a}}.b. Em=48*63*13*107.1. such as 3 × 3 and 4 × 4. The trapezoidal element geometry of Figure 23.64 90 78 46.6(b) is used to illustrate the effect of changing the p × p Gauss integration rule.nu.Ke//MatrixForm]. Print["Emat=".0}.(* exact symbolic arithmetic *) Ke=Quad4IsoPMembraneStiffness[ncoor.0}. The stiffness matrix (23..{2*a. ncoor={{0.{True.(1-nu)/2}}.7).a.{numer.0. reproduces exactly (23. Emat=Em/(1-nu^2)*{{1.p}].h. a result illustrated in detail in §23. Driver for stiffness calculation of rectangular element of Figure 23.h. Print["Ke=".{a.8.0000001]. The computations are driven with the script shown in Figure 23.{2*a.0}. Ke=Rationalize[Ke.p<=4. it can be seen that raising the order of the integration makes the element stiffer.26900 3. makes all entries of Ke exact integers when computed with the first 4 Gauss rules.19925 3.90944 8.91246 3.3 TEST OF BILINEAR QUADRILATERAL in conjunction with ν = 1/3.11627 2.10) 1093326 3764046 −304629 968136 −968136 −2724969 179439 −2007213 −489632 −304629 1278329 −484068 −190567 179439 −598130 609258 −304629 968136 −484068 1397955 179439 −2007213 609258 −358878 −1386827 −968136 −190567 179439 2747225 1218516 −1169831 −429819 −968136 −2724969 179439 −2007213 1218516 4803123 −429819 −70941 −190567 179439 −598130 609258 −1169831 −429819 1958528 −358878 179439  −2007213  609258  −358878   −429819  −70941   −358878 2437032 (23.77276 8.66496 0 1.11571 4.56155 1. The eigenvalues of these matrices are: Rule Eigenvalues (scaled by 10−6 ) of Ke 1×1 2×2 3×3 4×4 8. 23–9 .64521 2.13) The stiffness matrix computed by the one-point rule is rank deficient by two.9) 1092042 3761478 −303345 970704 −970704 −2730105 182007 −2002077 −485352 −303345 1274049 −485352 −182007 182007 −606690 606690 −303345 970704 −485352 1395387 182007 −2002077 606690 −364014 −1395387 −970704 −182007 182007 2730105 1213380 −1152711 −424683 −970704 −2730105 182007 −2002077 1213380 4792851 −424683 −60669 −182007 182007 −606690 606690 −1152711 −424683 1941408 −364014 182007  −2002077  606690  −364014   −424683  −60669   −364014 2426760 (23. This device facilitates visual comparison between the computed stiffness matrices:  1840293 1051596 −262899 −262899 −1840293 −1051596 262899 262899  3417687 −262899 1314495 −1051596 −3417687 262899 −1314495  −262899 1051596 −525798 262899 262899 −1051596 525798  1314495 −525798 1051596 262899 −1314495 525798 −1051596   −1051596 262899 262899 1840293 1051596 −262899 −262899  −3417687 262899 −1314495 1051596 3417687 −262899 1314495   262899 262899 −1051596 525798 −262899 −262899 1051596 −525798 262899 −1314495 525798 −1051596 −262899 1314495 −525798 1051596 1051596  −262899   −262899 Ke1×1 =  −1840293   −1051596   Ke2×2 2062746 1092042  −485352   −303345 =  −1395387   −970704  −182007 182007  Ke3×3 2067026 1093326  −489632   −304629 =  −1386827   −968136  −190567 179439  Ke4×4 2067156 1093365  −489762   −304668 =  −1386567   −968058  −190827 179361 (23.19966 0 2.09769 4.91237 8.12) As can be seen entries change substantially in going from p = 1 to p = 2.54678 1.66438 2.18565 3. then more slowly.23–9 §23.56199 0 0 0 0 0 0 0 0 0 0 0 0 (23. The eigenvalues do not change appreciably after p = 2. Because the nonzero eigenvalues measure the internal energy taken up by the element in deformation eigenmodes.11) 1093365 3764124 −304668 968058 −968058 −2724813 179361 −2007369 −489762 −304668 1278459 −484029 −190827 179361 −597870 609336 −304668 968058 −484029 1398033 179361 −2007369 609336 −358722 −1386567 −968058 −190827 179361 2747745 1218672 −1170351 −429975 −968058 −2724813 179361 −2007369 1218672 4803435 −429975 −71253 −190827 179361 −597870 609336 −1170351 −429975 1959048 −358722 179361  −2007369  609336  −358722   −429975  −71253   −358722 2437344 (23.68059 4. Specified as a two-item one-dimensional list: { bx.qcoor.qcoor]. For example if the element is subjected to a gravity acceleration field (self-weight) in the −y direction.fy2. §23.bx4.fy1.bx1. from which the field is interpolated bilinearly. {numer.by1 }. {qcoor.by3}.by.dNy.by }.7.Jdet.{ bx4. 4. 4.Nf. on a Mac G4/867.017.by1}.qctab.15 and 0.fx3.by4 }.bx2. If [Length[options]==2. The formation of the trapezoidal element stiffness using floating-point computation by setting numer=True took 0. bx=Nf. The arguments of the module are are exactly the same as for Quad4IsoPMembraneStiffness except for the following differences.fx2. fx4.by3 }. 3.{8}]}. mprop Not used. (The unusually large value for p = 4 is due to the time spent in the simplification of the highly complex exact expressions produced by the Gauss quadrature rule. where ρ is the mass density. k++.k].w. If [Length[bfor]==4.p=2.by4.bxc. bk=Flatten[Table[{Nf[[i]]*bx.23–10 Chapter 23: IMPLEMENTATION OF ISO-P QUADRILATERAL ELEMENTS Quad4IsoPMembraneBodyForces[ncoor_. retained as placeholder. by=Nf. Changing numer=False to do exact computation increases the formation time to 0.fy3.by3.p}=options. 0.4}]].th_. 2. { bx3. Return[fe] ].9 computes the consistent force associated  = {bx .bx2. In the first form the body force field is taken to be constant over the element.bx3. respectively. If [Length[bfor]==2. k<=p*p. bx = 0 and b y = −ρg.B.033.bx1=bx2=bx3=bx4=bx. The field is with a body force field b specified per unit of volume in componentwise form.by2 }. Remark 23.Nf[[i]]*by}.w}= QuadGaussRuleInfo[{p. c=w*Jdet*h.{bx. If [p<1||p>4.rho_.by4}. Print["p out of range"].byc. For [k=1. byc={by1.6 seconds.4.{ bx2.{i.by1=by2=by3=by4=by]. b y } given over a 4-node iso-P quadrilateral in plane stress. bx. *Consistent Node Forces for Body Force Field The module Quad4IsoPMembraneBodyForces listed in Figure 23.bxc.bfor_]:= Module[{i.dNy.1. c. ].{bx2.by2. The module returns fe as an 8 × 1 one dimensional array arranged { fx1.options_.by3.bx4}.Jdet}=Quad4IsoPShapeFunDer[ncoor. h=th.by4}}=bfor].fy4 } to represent the vector fe = [ f x1 f y1 f x2 f y2 f x3 23–10 f y3 f x4 f y4 ]T .dNx.9. 0. {Nf. respectively.{bx4. bfor Body forces per unit volume.bx3.by2}. Return[Null]].dNx. fe+=c*bk. (23.numer=False. If [Length[th]==4.numer}.{bx3.fe=Table[0.25 seconds for p = 1. Figure 23. {numer}=options].by1.h=th.Nf]. Module for computation of consistent node forces from a given body force field. The second form assumes body forces to vary over the element and specified by values at the four corners. or as a four-entry two-dimensional list: { bx1.k. bxc={bx1.14) .by2.083.by}=bfor.) This underscores the speed advantage of using floating-point arithmetic when exact symbolic and algebraic calculations are not required.{{bx1.byc.4 and 44. 1. or as a 4-entry two-dimensional list: { ux1.sigxy2 }.5.Nf.1}. Be={ Flatten[Table[{dNx[[i]].{i.qctab.{3}]}. ux4.options_.1}}.qcoor. qcoor=N[qcoor]].15) The stresses are directly evaluated at the corner points without invoking any smoothing procedure. these may be specified as a 8-entry onedimensional list form: { ux1.(Be. udis The 8 corner displacements components.dNx[[i]]}. two-dimensional list: { { sigxx1. Flatten[Table[{dNy[[i]]. If [Length[udis]==4. { sigxx3.uy4 }.Jdet}=Quad4IsoPShapeFunDer[ncoor.-1}.sigxy4 } } to represent the stress array  σe = σx x1 σ yy1 σx y1 σx x2 σ yy2 σx y2 σx x3 σ yy3 σx y3 σx x4 σ yy4 σx y4  (23.ue).uy1 }.dNy.sigyy1. ux3.{ sigxx2. fprop Not used. §23.sigxy3 }.{-1. for completeness a stress computation module called Quad4IsoPMembraneStresses for the 4-node quad is listed in Figure 23.4}]].uy2 }. { sigxx4.4}]].10. A more elaborated recovery scheme is presented in a later Chapter.sigyy3.{ ux4.10. {Nf.{4}.Emat_. 0}.{1.sigxy1 }.dNx. ue=Flatten[udis]]. The arguments of the module are are exactly the same as for Quad4IsoPMembraneStiffness except for the following differences.udis_]:= Module[{i. Figure 23.qcoor].{i. 23–11 .-1}. qcoor=qctab[[k]]. k++.uy3 }.Be.dNy. ux2. The module returns the corner stresses stored in a 4-entry.uy3. ].ue=udis. numer=options[[1]]. Flatten[Table[{0. Return[sige] ]. For [k=1.{ ux3.{1.uy1. dNx.sige=Table[0. dNy[[i]]}.th_. k<=Length[sige].numer=False.{ ux2.sigyy4.5 *RECOVERY OF CORNER STRESSES Quad4IsoPMembraneStresses[ncoor_. retained as placeholder.uy4 }. *Recovery of Corner Stresses Akthough the subject of stress recovery is treated in further detail in a later chapter.23–11 §23. qctab={{-1.4}]]}.Jdet.uy2. Module for calculation of corner stresses.{i. If [numer. sige[[k]]=Emat.k.sigyy2. Given a 4-node quadrilateral. These bilinear equations are to be solved for {ξ P . getting = b/(b + b2 − 4ac). In answering this question it is understood that the quadrilateral coordinates can be extended outside the element. the process is prone to numerical instabilities. the quadratic equations degenerate to linear. x0 = 1 4 (x 1 + x2 + x3 + x4 ). For example. bξ = A − x P0 yb + y P0 xb .6. .6.23–12 Chapter 23: IMPLEMENTATION OF ISO-P QUADRILATERAL ELEMENTS §23. The resulting algorithm can be presented as follows. In floating point arithmetic severe cancellation can occur in the other root. leads to a quadratic equation in η P : aη2P + bη P + c = 0. J2 = (x2 − x3 )(y1 − y4 ) − (x1 − x4 )(y2 − y3 ).11. ξ P . find the quadrilateral coordinates ξ P . yce = y1 − y2 − y3 + y4 . y0 = 1 4 (y1 A= 1 2 ((x 3 ycx = y1 + y2 − y3 − y4 . if the quadrilateral becomes a rectangle or parallelogram. ξP = − . y P0 = y P − y0 . x P and y P are referred to the quadrilateral center as coordinate origin. x P0 = x P − x0 . This six-point set defines the so-called complete quadrilateral. and an arbitrary point P(x P .11. y4 } and {x P . η2 } the one closest to ξ = 0. η P }. In addition. and one of the roots takes off to ∞. The evolute of the coordinate lines is a parabola. η1 } and {ξ2 . η P of P. + y2 + y3 + y4 ). cη = x P0 yce − y P0 xce . η = 0 is to be taken. J1 = (x3 − x4 )(y1 − y2 ) − (x1 − x2 )(y3 − y4 ). The six yellow-filled circles identify the four corners plus the intersections of the opposite sides. where N1 = 14 (1−ξ P )(1−η P ). yi } of its corners. Of the two solutions: {ξ1 . etc. and computing its minimum-modulus root the same way. It can be shown that b2 ≥ 4ac so there are two real roots: η1 and η2 . . which is important in projective geometry. y P ). − x1 )(y4 − y2 ) − (x4 − x2 )(y3 − y1 )). A robust numerical algorithm. 2 1 η=−1 Figure 23. Elimination of say. Given {x1 . Although seemingly straightforward. Quadrilateral coordinates can be extended outside the element to answer the problem posed in §23. which works stably for any geometry. xcx = x1 + x2 − x3 − x4 . y1 .3 ηmin P forming the other quadratic equation. is obtained by eliminating ξ and η in√ turn. defined by the Cartesian coordinates {xi . the minimum-modulus root of aη2P + bη P + c = 0 with the stable formula. These can be back substituted to get ξ1 and ξ2 . xce = x1 − x2 − x3 + x4 . x4 . η=1 4 3 ξ=−1 ξ=1 P(ξ?. bη = −A − x P0 yb + y P0 xb . as illustrated in Figure 23. compute xb = x1 − x2 + x3 − x4 . . y P }. *Quadrilateral Coordinates of Given Point The following inverse problem arises in some applications. yb = y1 − y2 + y3 − y4 .η?) The governing equations are x P = x1 N1 +x2 N2 + x3 N3 + x4 N4 and y P = y1 N1 + y2 N2 + y3 N3 + y4 N4 . 2cξ .16) One common application is to find whether P is inside the quadrilateral: if both ξ P and η P are in the range [−1.16) is listed in Figure 23. This occurs. 2 bη + 2J2 cη − bη (23. in relating experimental data from given sensor locations4 to an existing FEM mesh. although in three dimensions.6 of [320]. Pressure data measured at a wind tunnel had to be transported to an independently constructed FEM quadrilateral mesh modeling the wing skin.12. 2cη ηP = . else outside. 1] the point is inside. 4 While at Boeing in 1969 the writer had to solve a collocation problem of this nature. 3 See Section 5. A Mathematica module that implements (23. for example. 23–12 . bξ2 − 2J1 cξ − bξ cξ = x P0 ycx − y P0 xcx . ycη=y1-y2-y3+y4.y2_}.y1_}. dx=x-x0.y0=(y1+y2+y3+y4)/4.η}. {x4_.cη.cξ .16).bξ . References QuadCoordinatesOfPoint[{{x1_. cη=dx*ycη-dy*xcη. Return[{ξ . recognizing his developer [371].{x_. xb=x1-x2+x3-x4.12.{x3_. bη=-A-dx*yb+dy*xb. ξ =2*cξ /(-Sqrt[bξ ^2-2*J1*cξ ]-bξ ).y4_}}. A Mathematica module that implements the algorithm (23.xcξ =x1+x2-x3-x4.bη. The element is called the Taig quadrilateral in the early FEM literature.218]. η=2*cη/( Sqrt[bη^2+2*J2*cη]-bη).J0.J1. This paper actually uses the exactly integrated stiffness matrix.23–13 §23. Figure 23.ξ . J1=(x3-x4)*(y1-y2)-(x1-x2)*(y3-y4).ycξ =y1+y2-y3-y4. Gauss numerical integration for quadrilaterals was advocated by Irons [214.y_}]:= Module[{A.yb=y1-y2+y3-y4. J2=(x2-x3)*(y1-y4)-(x1-x4)*(y2-y3). J0=(x3-x1)*(y4-y2)-(x4-x2)*(y3-y1).dx. bξ =A-dx*yb+dy*xb. References Referenced items moved to Appendix R. who changed the range of the quadrilateral coordinates to [−1.{x2_. see Notes and Bibliography in Chapter 17. 23–13 . A=J0/2. xcη=x1-x2-x3+x4.η}]].dy. x0=(x1+x2+x3+x4)/4. cξ = dx*ycξ -dy*xcξ . Notes and Bibliography For an outline of the history of the 4-node quadrilateral.J2. dy=y-y0.y3_}. +1] to fit tabulated Gauss rules. dNy. Print["p out of range"]. {numer}=options].Jdet}=Quad5IsoPShapeFunDer[ncoor.Ke=Table[0.{i.dNy. J22=dNη.2]].-(1+ξ +dNbη)/4. dNbη}. Use Gauss rules 1 × 1. The shape function module for the 5-node “bilinear+bubble” iso-P quadrilateral. J12=dNξ .h4.4–5.w. (1-ξ -dNbη)/4.c.qcoor.h3. y=Table[ncoor[[i. Return[{Nf. Nb=(1-ξ ^2)*(1-η^2).y.{i.y}.x.Nf. (1-η-dNbξ )/4.1. The only differences in argument lists is that ncoor has five node coordinates: { { x1.k.B)]. Flatten[Table[{dNy[[i]]. Stiffness module for the 5-node “bilinear+bubble” iso-P quadrilateral.Jdet.1. Jdet=Simplify[J11*J22-J12*J21].{10}]}.dNy.5}]]. ].k]. x=Table[ncoor[[i.th_.2.J11. Figure E23. J21=dNη. Return[Null]].1–2 show the Mathematica implementation of the stiffness modules for the 5-node. {Nf.Jdet}] ]. If [Length[options]==2. with node 5 placed at the element center. Nf= { ((1-ξ )*(1-η)-Nb)/4.j.dNx[[i]]}. dNy=Simplify[dNy]. dNξ ={-(1-η+dNbξ )/4.dNy. If [p<1||p>4. dNbξ }.{i. Nb}.J21.p}=options.η}=qcoor. c=w*Jdet*h.5}]].Nf].1 [C:15] Figures E23.3. dNη={-(1-ξ +dNbη)/4.{ x4. J11=dNξ . Quad5IsoPMembraneStiffness[ncoor_.J22. k<=p*p. Return[Ke]. Take E = 96×30 = 2880 in lieu of E = 96 to 23–14 . Figure E23.dNη.numer}.h2. 2 × 2 and 3 × 3.-(1+η+dNbξ )/4.5}]. and that a variable plate thickness in fprop (one of the two possible formats) is specified as { h1. Test Quad5IsoPMembraneStiffness for the 2:1 rectangular element studied in §23. h=th.5}]]}. For [k=1. Flatten[Table[{0.options_]:= Module[{i.1]]. Ke+=Simplify[c*Transpose[B]. If [Length[th]>0.5}]. dNx.dNbξ .{ x5. (1+ξ -dNbη)/4.((1-ξ )*(1+η)-Nb)/4.y3 }.{ x3. Module Quad5IsoPMembraneStiffness returns the 10 × 10 stiffness matrix whereas module Quad5IsoPShapeFunDer returns shape function values and Cartesian derivatives. (The Gauss quadrature module is reused.dNx. (* Nb: node-5 "bubble" function *) dNbξ =2*ξ (η^2-1).p=2. ].J12.Nb. Quad5IsoPShapeFunDer[ncoor_.B. dNy= (-J21*dNξ +J11*dNη)/Jdet. k++.x.(Emat.ξ . “bilinear+bubble” iso-P quadrilateral of Figure E18. dNx=Simplify[dNx].qcoor].{ x2.Chapter 23: IMPLEMENTATION OF ISO-P QUADRILATERAL ELEMENTS 23–14 Homework Exercises for Chapter 23 Implementation of Iso-P Quadrilateral Elements EXERCISE 23.y. B={ Flatten[Table[{dNx[[i]]. dNx= ( J22*dNξ -J12*dNη)/Jdet.h5 }.{i.x.y1 }.y2 }.{i.y4 }.dNx.{10}.3. dNy[[i]]}.Emat_.dNx. dNbη=2*η*(ξ ^2-1). {numer. {qcoor.numer=False.dNbη.h=th. ((1+ξ )*(1+η)-Nb)/4. 0}.dNξ .((1+ξ )*(1-η)-Nb)/4. (1+η-dNbξ )/4. {ξ .Jdet.qcoor_]:= Module[ {Nf.) Both modules follow the style of the 4-node quadrilateral implementation listed in Figures 23.y5 } }.η.w}= QuadGaussRuleInfo[{p. 3. by the injection of the bubble shape functions associated with the interior node. Follow the style of Figures 23.k.n]]. EXERCISE 23. It is distortion sensitive otherwise. along with ν = 1/3 and h = 1. nodes and degrees of freedom. the 10 × 10 stiffness Ke computed by Quad5IsoPMembraneStiffness. EXERCISE 23.j<=8. 23–15 .Kc=Table[0.23–15 Exercises Quad5IsoPMembraneCondStiffness[Ke5_]:= Module[{i.i<=n-1.j]]=Ke[[i.{8}. c=Ke[[i. (The Gauss quadrature module may be reused without change. Stick this Ke into equations (E17.Ke=Ke5. Show that the energy ratio is   γ 2 (1 + ν) 2 + γ 2 (1 − ν) Uquad = .i<=8.6) and (E17. and node 9 at the element center. which returns a 8 × 8 stiffness Ke. respectively.8) for γ = 1/10 and ν = 0 to conclude that shear locking has not been eliminated.5 EXERCISE 23. so as to get exact integer entries in Ke . ]]].) Test it for the 2:1 rectangular element studied in §23. For [j=1.3 for the problem illustrated in Figure E17. Use the modules of Figures E23. set num=True and Rationalize entries as in Figure 23. Report on which rules give rank sufficiency. For the elastic modulus take E = 96×39×11×55×7 = 15855840 instead of E = 96. Kc[[i. Skip item (a).4 [C:25] Implement the 9-node biquadratic quadrilateral element for plane stress to get its 18 × 18 stiffness matrix.1–2.j. Bubbles have been recently revived by some FEM authors for other application contexts.i++. Use both 2 × 2 and 3 × 3 Gauss integration rules and show that the 2 × 2 rule produces a rank deficiency of 3 in the stiffness. as only argument. or even mitigated. Ke[[j.n>=9.2 [D:10] Module Quad5IsoPMembraneCondStiffness in Figure E23.3 is designed to re- ceive.3–4 or E23.5 [C:25] An element is said to be distortion insensitive when the discrete solution does not appreciably change when the mesh is geometrically distorted while keeping the same number of elements.i++. but with the 5-node “bilinear+bubble” iso-P quadrilateral as the 2D element that models the plane beam. 5 Even the addition of an infinite number of bubble functions to the 4-node iso-P quadrilateral will not cure shear locking. Insert this Ke5 into Quad5IsoPMembraneCondStiffness. A distortion sensitivity test often found in the FEM literature for plane stress quadrilateral elements is pictured in Figure E23.j]]]].n.1) Compare this to the energy ratio (E17. State what the function of the module is but do not describe programming details. and returns a smaller (8 × 8) stiffness matrix. This “bubble futility” has been known since the late 1960s. respectively.4.{8}]}. get exact integer entries in Ke for all Gauss rules while keeping ν = 1/3 and h = 1. such as multiscale modeling.j]]=Ke[[i.c. A mystery module for Exercise 23.1–3 to do the following. (If the computation with num=False takes too long on a slow PC. Partial result: K 22 = 3380 and 3588 for the 2 × 2 and 3 × 3 rules. EXERCISE 23.j++.n--.j]].n]]/Ke[[n.3.j]]-c*Ke[[n. r= Ubeam (1 + γ 2 )2 (E23. Form the 10 × 10 stiffness matrix Ke5 using Quad5IsoPMembraneStiffness with p = 2 and numer=False. But memories are short.2.1.j++. Return[Kc] ]. Figure E23. For [i=1. with nodes 5–8 placed at the side midpoints.8.j<=i. For [n=10. For [i=1.7) to get Uquad .) Partial result: K 11 = 5395390 and 6474468 for the 2×2 and 3×3 rules.4. For [j=1.i]]=Ke[[i.3 [C:20] Repeat Exercise 17. which defines the slope of interface 3-4.4(b).6 The problem is discretized with two 4-node isoP bilinear quadrilaterals as illustrated in Figure E23. This is also the exact solution given by elasticity theory if the surface tractions over the free end section match the beam stress distribution. y (a) b A . and the center node at the crossing of the medians (that is.23–16 Chapter 23: IMPLEMENTATION OF ISO-P QUADRILATERAL ELEMENTS . This function g(e) characterizes the distortion sensitivity. 2. . If e = 0 there is no distortion. height b and narrow rectangular cross section of thickness h depicted in Figure E23. Show that r = 1 for any e < 12 a. EXERCISE 23. 5 and record the end deflection vquad as the average of the vertical displacements u y5 and u y6 . b = 2. 1. .6 [C:25] Repeat the steps of Exercise 23. Define the ratio r (e) = vquad /vbeam and plot g(e) = r (e)/r (0) as function of e.4(c). . It is important to keep the side nodes at the midpoints of the sides. where Izz = hb3 /12. which show appropiate displacement and force boundary conditions. Obtain the finite element solution for a = 10.4. but it is also distortion insensitive. 6 This statement would not be true if ν .... The mesh distortion is parametrized by the distance e.4 is under an applied end moment M. h = E = M = 1 and e = 0. The cantilever beam of span a. for Exercise E23. Thus not only this element is exact for the regular mesh. 3. If the material is isotropic with elastic modulus E and Poisson ratio ν = 0 the end vertical deflection given by the Bernoulli-Euler beam theory is vbeam = Ma 2 /(2E Izz )... the 9-node elements are superparametric). The cantilever beam is modeled with two 9-node biquadratic quadrilaterals integrated by the 3×3 Gauss product rule. Conclude that the 4-node bilinear element is distortion sensitive.5. . M x B 3 (c) e 1 4 2 5 3 h e 2 7 6 b Cross section a 1 (b) z 4 e 10 8 11 e 9 5 −M/b 6 M/b 13 −M/b 14 12 15 M/b Figure E23. Two-element cantilever model for assessing distortion sensitivity.5 for the mesh depicted in Figure E23. Show that g(e) < 1 as e increases and thus the mesh stiffness further as a result of the distortion.. . 23–16 . the support condition shown in the models (b) and (c) allow such changes so the results are extendible to nonzero ν. However.= 0 since the fixed-displacement BC at the cantilever root would preclude the lateral expansion or contraction of the cross section. (The Gauss quadrature module may be reused without change. set num=True and Rationalize entries as in Figure 23.2) Use both 2 × 2 and 3 × 3 Gauss integration rules and show that the 2 × 2 rule produces a rank deficiency of 1 in the stiffness. with nodes 5.) Test it for the 2:1 rectangular element studied in §23. For elastic modulus take E = 96×39×11×55×7 = 15855840 along with ν = 1/3 and h = 1. 6. (E23. Follow the style of Figures 23. 2–3.3. respectively. and 4–1. whereas K 13 = 4954950 and 5021016 for the 2 × 2 and 3 × 3 rules. respectively.7 [C:25] Implement the 8-node Serendipity quadrilateral element for plane stress to get its 16 × 16 stiffness matrix.23–17 Exercises EXERCISE 23. Call the module Quad8IsoPMembraneStiffness. (If the computation with num=False takes too long on a slow PC. respectively.8. The elastic modulus matrix E that is passed as second argument should be  E= 17837820 5945940 0 5945940 17837820 0 0 0 5945940  .) Partial results: K 11 = 11561550 and 12024012 for the 2 × 2 and 3 × 3 rules. and 8 placed at midpoints of sides 1–2. 3–4. respectively.3–4 for argument sequence and coding schematics. the subordinate shape-function and Gauss-quadrature-info modules should be called Quad8IsoPShapeFunDer and QuadGaussRuleInfo. 23–17 .1. 7. Implementation of Iso-P Triangular Elements 24–1 .24 . 1. . . §24. . *Stiffness Module . . . Partial Derivative Computation §24. . Implementation . . . . . .2. . Introduction §24. . . .5. . . . .3. . . §24. The Quadratic Triangle §24. . . *Shape Function Module . . . . 24–2 . . . . . . . . . *The Cubic Triangle §24. . . . .4. . . . . . . . *Test Element .2. . .1. . . . . . . . . . . . .5. Stiffness Module . .2. .3. . . . Solutions to Exercises . Test on Highly Distorted Triangle §24. §24. . . . . . §24. . §24. .2. . . . . Requirements for Gauss Rules . . . . Triangle Coordinate Partials . .4. . . . . References . . . . . . §24. . .4. . . . Exercises . . . . . . .2. .4. . . . . Solving the Jacobian System . . §24. . .3.3. . Test on Straight-Sided Triangle §24. . . .3. . . . . . . . . . . . . . .24–2 Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS TABLE OF CONTENTS Page §24. . . §24. . 24–3 24–3 24–3 24–4 24–5 24–6 24–6 24–7 24–8 24–9 24–9 24–11 24–12 24–12 24–14 24–14 24–16 24–17 24–18 24–19 24–20 24–22 . . . . .5. . . . . .2. . Gauss Quadrature for Triangles §24. . . . . .1. . . . . . . . . Notes and Bibliography . .2. . . . . . . . . . §24. . . . . . . . . . . . . . . . . . . .2. . . . . . . . .5. . . . . . . . . . . . .2. . . . . . §24. . . §24. . . . §24. . . . Arbitrary Iso-P Triangles . . . . . . . .4. . . . . . . Shape Function Module .3. . . . . .4. . §24. . . . . . §24. . . . . . . .1. . . . . . . . . . . .4. Superparametric Triangles . . . . . .1. . . (24. On the other hand.1) must be of the form 6i +3 j +k. to have the FEM solution depend on how nodes are numbered. and must be constructed especially for the triangular geometry. §24. Consequently there are no rules with 2. and (24. as in the case of quadrilaterals. Gauss rules for triangles are not derivable from one-dimensional rules. if the three coordinates are equal (which can only happen for the centroid ζ1 = ζ2 = ζ3 = 1/3). We deal with these issues in the next two sections. 1 It would disconcerting to users. 5 or 8 points. They are instead specialized to the triangle geometry. It covers the programming of isoparametric triangular elements for the plane stress problem.3 and implemented in §23.1) forces three equal-weight sample points to be present.2. the six points coalesce to one.1 If ζ1 . (2) The computation of x-y partial derivatives and the element-of-area scaling by the Jacobian determinant must account for the fact that the triangular coordinates ζ1 .2) This is called a positivity condition. ζ2 . (24. 2 It follows that the number of sample points in triangle Gauss quadrature rules that satisfy (24. the six points coalesce to three. Finally. and have the same weight. Gauss Quadrature for Triangles The numerical integration schemes for quadrilaterals introduced in §17.2 GAUSS QUADRATURE FOR TRIANGLES §24. If two triangular coordinates are equal. because 3! = 6.1) This constraint guarantees that the result of the quadrature process will not depend on element node numbering.1. ζ2 .1) forces six equal-weight sample points to be present in the rule. where i and j are nonnegative integers and k is 0 or 1. and ζ3 are different. Requirements for Gauss Rules Gauss quadrature rules for triangles must possess triangular symmetry in the following sense: If the sample point (ζ1 .24–3 §24. 24–3 . to say the least. §24. Introduction This Chapter continues with the computer implementation of two-dimensional finite elements. Triangular elements bring two sui generis implementation quirks with respect to quadrilateral elements: (1) The numerical integration rules for triangles are not product of one-dimensional Gauss rules.1. ζ3 ) is present in a Gauss integration rule with weight w. ζ2 and ζ3 do not form an independent set. (24.2 Additional requirements for a Gauss rule to be numerically acceptable are: All sample points must be inside the triangle (or on the triangle boundary) and all weights must be positive.2. then all other points obtainable by permuting the three triangular coordinates arbitrarily must appear in that rule.2 are built as “tensor products” of two one-dimensional Gauss formulas. It insures that the element internal energy evaluated by numerical quadrature is nonnegative definite. 1(a).2. (24.2) have 1. ζ2 .3) A e where A is the triangle area   1 1 d = 2 det x1 A= e y1 1 x2 y2 1 x3 y3  = 1 2   (x2 y3 − x3 y2 ) + (x3 y1 − x1 y3 ) + (x1 y2 − x2 y1 ) .22338 0.13239 0. 3. respectively. Weight written to 5 places near each sample point. Remark 24. 13 . The five rules are depicted in Figure 24.13239 0. 24–4 .0000 0. ζ2 . On the other hand. The two rules with 3 points differ in the location of the sample points. The simplest Gauss rule for a triangle has one sample point located at the centroid. Superparametric Triangles We first consider superparametric straight-sided triangles geometry defined by the three corner nodes. It has degree 1. for such triangles to be superparametric the side nodes must be located at the midpoint of the sides. The positivity requirement (24. meaning that it integrates exactly up to linear polynomials in {ζ1 . A rule is said to be of degree n if it integrates exactly all polynomials in the triangular coordinates of order n or less when the Jacobian determinant is constant. since the points are always inside while weights are positive.12594 0. ζ3 ) d ≈ F( 13 .2. Consequently it was not necessary to call attention to it.33333 0.3).10995 0.  1 F(ζ1 . For example. 13 ). (24.10995 0. 6 and 7 points.1 over 6-node straight-sided triangles. 3.33333 0. for triangles there are Gauss rules with as few as 4 points that violate positivity.33333 0. and there is at least one polynomial of order n + 1 that is not exactly integrated by the rule. F = 4 − ζ1 + 2ζ2 − ζ3 is exactly integrated by (24. The five simplest Gauss rules that satisfy the requirements (24.22338 0. One point rule.24–4 Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS (a) rule=1 degree=1 (b) rule=3 degree=2 (c) rule=−3 degree=2 0. sample-point circle areas are proportional to weight.1) and (24.12594 0.22500 0. ζ3 }.33333 1. §24.33333 (d) rule=6 degree=4 (e) rule=7 degree=5 0.1.13239 0. Over such triangles the Jacobian determinant defined below is constant.33333 0.12594 Figure 24.1. For a straight sided triangle.2) is automatically satisfied in quadrilaterals by using Gauss product rules.10995 0.22338 0.4) This rule is illustrated in Figure 24. Location of sample points (dark circles) of five Gauss quadrature rules for straight sided (superparametric) 6-node triangles. 2. 16 ) + 13 F( 16 . 12 ). that is. 12 . Three Point Rules. 0. which integrate exactly up to quartic and quintic polynomials in {ζ1 . (24. ζ3 ) d ≈ 13 F( 12 .33333 0.2. the foregoing formulas need adjustment because the element of area d becomes a function of position. Both rules are of degree 2.5) A e  1 F(ζ1 .12594 0. ζ2 . J = 12 det  i=1 ∂ζ1 i=1 ∂ζ2 i=1 ∂ζ3   n  n n  ∂ Ni ∂ Ni ∂ Ni  yi yi yi ∂ζ1 i=1 ∂ζ2 i=1 ∂ζ3 i=1 24–5 .7) d = J dζ1 dζ2 dζ3 .13239 0.1(b.2 GAUSS QUADRATURE FOR TRIANGLES (a) rule=1 (b) rule=3 (c) rule=−3 0. 0) + 13 F(0.6) is called the midpoint rule.6) A e These are depicted in Figures 24. The next two rules in order of simplicity contain three sample points:  1 F(ζ1 . The abcissas and weights are expressable as rational combinations of square roots of integers and fractions. In §24.33333 0. sample-point circle areas are proportional to weight. they integrate exactly up to quadratic polynomials in the triangular coordinates. 16 . Consider the more general case of an isoparametric element with n nodes and shape functions Ni .33333 1. Arbitrary Iso-P Triangles If the triangle has variable metric. There is a 6-point rule of degree 4 and a 7-point rule of degree 5.1(d.33333 0.3. The next useful rules have six and seven points.0000 0.13239 0.22338 0. There are no symmetric rules with 5 points.10995 0.33333 (d) rule=6 0.e). ζ2 . Six and Seven Point Rules. Formula (24. as in the curved sided 6-node triangle geometries shown in Figure 24. The sample point configurations are depicted in Figure 24. The 7-point rule includes the centroid as sample point. ζ3 }.22338 0.4. 23 . §24. 16 ) + 13 F( 16 .c).12594 0.2). Weight written to 5 places near each sample point. ζ2 . but it has a negative weight and so violates (24. the function F = 6 + ζ1 + 3ζ3 + ζ22 − ζ32 + 3ζ1 ζ3 is integrated exactly by either rule. There is a 4-point rule of degree 3. For example.12594 0.3 it is shown that the differential area element is given by   1 1 1 n n n  ∂ Ni ∂ Ni ∂ Ni    x x xi i i   (24. respectively.13239 0. ζ3 ) d ≈ 13 F( 23 . The expressions are listed in the Mathematica implementation discussed in §24.22500 0. Location of sample points (dark circles) of five Gauss quadrature rules for curved sided 6-node triangles.33333 0. 23 ).2. 12 ) + 13 F( 12 .2. (24.22338 0.24–5 §24.10995 Figure 24.10995 (e) rule=7 0. 12 . 16 . i]]= 1-2*g1]. info[[1.i-3]]=1-2*g2].1}/2.i]]=1-2*g1].1/6. the module returns { { Null. 12 . 6 or 7.1/3}. If [p== 6. ]. Then the foregoing determinant reduces to that of (24. Implementation The five rules pictured in Figures 24.9) These can be expressed more compactly by saying that the Gauss integration rule is applied to J F.zeta3 }.1] returns { { 2/3. info={{Null.1.4. g2=(6+Sqrt[15])/21.numer }. which may range from 1 through Abs[rule].Null}. Argument rule.8) e whereas the midpoint rule becomes  F(ζ1 .point] (24. (24. g2=(8-Sqrt[10]-Sqrt[38-44*Sqrt[2/5]])/18. ζ2 .False }. For example.Null. info={{g1. ζ3 are the triangular coordinates of the sample point.Null. 12 ) + 13 J ( 12 . 0) + 13 J (0. info[[1.(155-Sqrt[15])/1200}. which plays the same role as J in the isoparametric quadrilaterals.p=rule.3. Here J is the Jacobian determinant.g1.1}]. The module is invoked as { { zeta1. If [i<4. But for general (curved) geometries J = J (ζ1 . info={{g2. 3.g2. ζ2 .(620-Sqrt[21312553320*Sqrt[10]])/3720}. Return[Simplify[info]]]. Of the two 3-point choices. −3. info={{1/3.i-3]]=1-2*g2]]. 12 . 13 . ζ2 . info[[1.w } = TrigGaussRuleInfo[{ rule.3. ζ3 }.zeta2.point_]:= Module[ {zeta. N2 = ζ2 and N3 = ζ3 . defines the integration formula as follows.4). If [p== 1. as in Figure 24.0 }. 13 ) F( 13 .i]]=2/3]. ζ3 ) d ≈ J ( 13 . info={{g1.g2}. 12 .1/3. info={{1/3. the geometry shape functions are N1 = ζ1 . e (24.2. If [p== 7. info[[1. Return[N[info]]. info={{1. The module returns the list {{ζ1 . If [i>3&&i<7. If rule is not implemented.2 are implemented in the module TrigGaussRuleInfo listed in Figure 24.g2}.10) The module has three arguments: rule. If [i>3.1. where ζ1 .Null }.i]]=0 ]. ζ3 ) d ≈ 13 J ( 12 . and the triangle area A cannot be factored out of the integration rules. if rule is −3 the midpoint rule is picked.1/3}.numer_}. g1=(8-Sqrt[10]+Sqrt[38-44*Sqrt[2/5]])/18.1/3}. ζ2 .9/40} ]]. w}.(620+Sqrt[21312553320*Sqrt[10]])/3720}. 12 . ζ3 ). 0. 0. and w is the integration weight.0} }. If [numer. For example the one point rule becomes  F(ζ1 .i=point. 0) F( 12 .1/6 }.1}/6. 12 ). Figure 24. else if +3 the 3-interior point rule is chosen. Module to get triangle Gauss quadrature rule information. info={{1. The first two are grouped in a two-item list.g1}. §24.24–6 Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS TrigGaussRuleInfo[{rule_. which can be 1.g1. 13 .(155+Sqrt[15])/1200}.1/3.1/3 }. numer and i. If [i<4. info[[1. If [p== 3. info[[1. 13 ). info={{g2.g1. 12 ) F( 12 .1/3}.1. and J = A everywhere.g1}. If the metric is simply defined by the 3 corners. ζ2 . TrigGaussRuleInfo[{ 3. Abs[rule] is the number of sample points.g2. respectively Argument point is the index of the sample point. 12 ) F(0. If [p==-3.g2. g1=(6-Sqrt[15])/21. If [i==7.1 and 24. Logical flag numer is set to True or False to request floating-point or exact information. 24–6 . temperature.10–11).4. Side nodes are numbered 4. 6. u x or u y .5.24–7 §24. Side nodes may be arbitrarily located within positive Jacobian constraints as discussed in §19.  1 x6   y6   u x6 u y6  N1e  N2e   e  N3   e  N4   e N5 N6e  (24. (24.14)  ∂ Ni ∂ζ1 ∂w ∂ Ni ∂ Ni ∂ζ2 ∂ Ni ∂ζ3 = wi = wi + + .3. 2. . The bulk of the shape function logic is concerned with the computation of the partial derivatives of the shape functions (24. .12) §24. That formula is repeated here for convenience:    1 1 x x    1     y  =  y1    ux u x1 uy u y1 1 x2 y2 u x2 u y2 1 x3 y3 u x3 u y3 1 x4 y4 u x4 u y4 1 x5 y5 u x5 u y5 3 5 6 2 4 1 Figure 24. ζ2 . 2. i = 1.13) Symbol w may stand for 1. to iso-P triangles with any number of nodes. The triangular coordinates are as usual denoted by ζ1 . Corners are numbered 1. The quadratic displacement field {u x (ζ1 . however.1. Taking partials of (24. ζ2 . The 6-node iso-P triangle.4. ζ2 . respectively.13) with respect to x and y and applying the chain rule twice yields   ∂ Ni ∂ζ1 ∂ Ni ∂ζ2 ∂ Ni ∂ζ3 ∂w ∂ Ni = wi = wi + + . NT =  3e  =  3 3 .2.2. as per the iso-P quadratic interpolation formula (16. . u yi }. ζ3 )} is defined by the 12 node displacements {u xi .12) with respect to x and y at any point in the element. .4. ∂x ∂x ∂ζ1 ∂ x ∂ζ2 ∂ x ∂ζ3 ∂ x  (24. Triangle Coordinate Partials In this and following sections the superscript e of shape functions will be omitted for brevity.1.11).11) in which the shape functions and their natural derivatives are     e      ζ1 (2ζ1 −1) N1 4ζ1 −1 0 0  N2e   ζ2 (2ζ2 −1)   0   4ζ2 −1   0   ∂NT  ∂NT   e      ∂NT  N   ζ (2ζ −1)   0   0   4ζ −1  = = =  3 . . etc. . which satisfy ζ1 + ζ2 + ζ3 = 1. ∂y ∂y ∂ζ1 ∂ y ∂ζ2 ∂ y ∂ζ3 ∂ y 24–7 . ζ2 and ζ3 . yi }. or other element-varying quantities such as thickness. x.3. u y (ζ1 .3 in counterclockwise sense. ζ3 ) that is quadratically interpolated over the triangle by w = w1 N1 + w2 N2 + w3 N3 + w4 N4 + w5 N5 + w6 N6 = [ w1 w2 w3 w4 w5 w6 ] NT . . which are interpolated in the iso-P representation (24. . . with i = 1.  N4   4ζ1 ζ2  ∂ζ1  4ζ2  ∂ζ2  4ζ1  ∂ζ3  0      e      4ζ2 N5 4ζ2 ζ3 0 4ζ3 4ζ3 N6e 4ζ3 ζ1 0 4ζ1 (24.6 opposite to corners 3. The element geometry is defined by the corner coordinates {xi . y.2. For this purpose consider a generic scalar function w(ζ1 . ζ3 ). The results are applicable.3 PARTIAL DERIVATIVE COMPUTATION §24. 6. Partial Derivative Computation The calculation of Cartesian partial derivatives is illustrated in this section for the 6-node triangle shown in Figure 24. 20) = Jy31 Jx13 = P. In matrix form:   ∂ Ni  wi ∂ζ    ∂w  ∂ζ1 ∂ζ2 ∂ζ3  1  ∂ Ni    ∂x ∂ x ∂ x ∂ x   wi ∂ζ  . the coefficient matrix of (24. These entries can be scaled to unity because the first row of the right-hand side is null. ∂y (24. .3. For compactness (24.2. . Its determinant scaled by one half is equal to the Jacobian J = 12 det J used in the expression of the area element introduced in §24. (24.19)   0 1 Jy1 Jy2 Jy3 ∂ζ3 ∂ζ3 ∂x ∂y If J = 0.24–8 Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS where all sums are understood to run over i = 1. ∂w = ∂ζ1 ∂ζ2 ∂ζ3  2    ∂ Ni ∂y ∂y ∂y ∂y wi ∂ζ 3 Transposing both sides of (24. Solving the Jacobian System By analogy with quadrilateral elements.15) ∂w  . if Ni = 1. solving this system gives  ∂ζ ∂ζ1  1   ∂y   ∂x 1 Jy23 Jx32  ∂ζ2 ∂ζ2  (24. . 6.3.17) But ∂ x/∂ x = ∂ y/∂ y = 1 and ∂1/∂ x = ∂1/∂ y = ∂ x/∂ y = ∂ y/∂  x = 0 because x and y are independent coordinates.18)  2 3   ∂x ∂y    ∂ Ni  ∂ Ni  ∂ Ni  0 1 ∂ζ3 ∂ζ3 yi ∂ζ yi ∂ζ yi ∂ζ 1 2 3 ∂x ∂y §24. (24.15) while exchanging sides yields  ∂ζ1 ∂ζ1  ∂x ∂y       ∂ζ ∂ζ   wi ∂∂ζNi wi ∂∂ζNi wi ∂∂ζNi  ∂ x2 ∂ y2  = ∂w ∂x 1 2 3   ∂ζ3 ∂ζ3 ∂x ∂y Now make w ≡ 1. y and stack the results row-wise:   ∂ Ni  ∂ Ni  ∂ Ni   ∂ζ ∂ζ1   ∂1 ∂1 1 ∂ζ1 ∂ζ2 ∂ζ3 ∂x ∂y ∂y    ∂x         ∂x ∂x ∂ζ ∂ζ ∂ N ∂ N ∂ N xi ∂ζ i xi ∂ζ i   ∂ x2 ∂ y2  =   xi ∂ζ i ∂ x ∂y  1 2 3    ∂y ∂y  ∂ Ni  ∂ Ni  ∂ Ni ∂ζ3 ∂ζ3 yi ∂ζ yi ∂ζ yi ∂ζ ∂x ∂y ∂x ∂y 1 2 3 (24. It is shown in Remark 24.16)   .2 below that.2. Consequently we arrive at a system of linear equations of order 3 with two right-hand sides:     ∂ζ1 ∂ζ1 1 1 1 ∂y   0 0    ∂ Ni  ∂ Ni  ∂ x  x i ∂ Ni   ∂ζ2 ∂ζ2  xi ∂ζ xi ∂ζ ∂ζ1 = 1 0 . x. the entries of the first row of the coefficient matrix are equal to a constant C.  (24.18) is rewritten     ∂ζ1 ∂ζ1 ∂y   0 0  1 1 1  ∂x  ∂ζ ∂ζ  J P =  Jx1 Jx2 Jx3   ∂ x2 ∂ y2  = 1 0 .18) will be called the Jacobian matrix and denoted by J.  ∂x ∂y    2J J J y12 x21 ∂ζ3 ∂ζ3 ∂x ∂y 24–8 . 26) 24–9 . ∂x ∂x 2J ∂ζ1 ∂ζ2 ∂ζ3  (24. . For the 10-node cubic triangle. . .3 to obtain the stiffness matrix of the 6-node quadratic triangle in plane stress.25) which proves the assertion. Substituting into (24. Jx2 = x2 (4ζ2 −1) + 4(x5 ζ3 + x4 ζ1 ).23) = ∂x ∂y ∂ζ1 ∂ζ2 ∂ζ3 Remark 24. Because the first equation in (24. Here is the proof that each first row entry of the 3 × 3 matrix in (24. Suppose the shape functions are polynomials of order n in the triangular coordinates. §24.24) where the ci are element dependent scalar coefficients. Shape Function Module We specialize now the results of §24. Jy ji = Jy j − Jyi and J = 12 det J = 12 (Jx21 Jy31 − Jy12 Jx13 ). .24–9 §24. Jy3 = y3 (4ζ3 −1) + 4(y6 ζ1 + y5 ζ2 ). = wi = ∂y ∂y 2J ∂ζ1 ∂ζ2 ∂ζ3 In particular. c1 + c2 + . = ∂x 2J ∂ζ1 ∂ζ2 ∂ζ3   ∂ Ni ∂ Ni ∂ Ni 1 ∂ Ni Jx32 + Jx13 + Jx21 . the shape function derivatives are   ∂ Ni ∂ Ni ∂ Ni 1 ∂ Ni Jy23 + Jy31 + Jy12 .12) with the node coordinates we obtain the entries of the Jacobian matrix of (24.22) in which the natural derivatives ∂ Ni /∂ζ j can be read off (24.19): Jx1 = x1 (4ζ1 −1) + 4(x4 ζ2 + x6 ζ3 ). The completeness identity is S= Ni = 1 = c1 Z + c2 Z 2 + . S = 2Z 2 − Z and C = 3. (24. and let Z = ζ1 + ζ2 + ζ3 .4. say C.1.21) wi  ∂ Ni ∂w ∂ Ni ∂ Ni ∂ Ni Jx32 + Jx13 + Jx21 . . For the 6-node quadratic triangle. + cn = 1. (24. + (n − 2)cn . cn Z n . (n − 1)Z n−1 = c1 + 2c2 + 3c3 + . Jy2 = y2 (4ζ2 −1) + 4(y5 ζ3 + y4 ζ1 ). The Quadratic Triangle §24. Jy1 = y1 (4ζ1 −1) + 4(y4 ζ2 + y6 ζ3 ). .20) yields finally the compact form     ∂ Ni ∂ Ni ∂ Ni ∂ Ni ∂ Ni P.4 THE QUADRATIC TRIANGLE in which Jx ji = Jx j − Jxi . S = 9Z 3 /2 − 9Z 2 /2 + Z and C = 11/2. Differentiating S with respect to the ζi ’s and setting Z = 1 yields C= ∂ Ni ∂ζ1 = ∂ Ni ∂ζ2 = ∂ Ni ∂ζ3 = c1 + 2c2 Z + c3 Z 3 + . . (24.12). Jx3 = x3 (4ζ3 −1) + 4(x6 ζ1 + x5 ζ2 ). . Using the 3 × 2 P matrix defined in (24.2. Taking the dot products of the natural-coordinate partials (24. the C’s can be scaled to unity. For the 3-node linear triangle. (24.17) is a numerical constant. + cn−1 = 1 + c2 + 2c3 + .18) is homogeneous. . = ∂y 2J ∂ζ1 ∂ζ2 ∂ζ3 (24.4. S = Z and C = 1.14) we arrive at  wi  ∂ Ni ∂w ∂ Ni ∂ Ni ∂ Ni = wi = Jy23 + Jy31 + Jy12 . . however.Jy31. Jx13= x1-x3+4*(dx6*(ζ 3-ζ 1)+(dx4-dx5)*ζ 2).(4*ζ 3-1)*Jx21. 4*(ζ 3*Jy31+ζ 2*Jy12). Figure 24. Somewhat simpler expressions.4*ζ 1*ζ 2. and shape function partials ∂ Ni /∂ x and ∂ Ni /∂ y explicitly obtained from (24.Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS 24–10 Trig6IsoPShapeFunDer[ncoor_.x3.(4*ζ 2-1)*Jx13. The Jacobian coefficients become Jx21 = x21 + 4( x4 (ζ1 −ζ2 ) + ( x5 − x6 )ζ3 ). {ζ 1.dy5.4*(ζ 1*Jx21+ζ 3*Jx32)}/Jdet. y4 = y4 − 12 (y1 + y2 ).y4.{x2. From these J can be constructed. x21 + 4( x4 (ζ1 −ζ2 ) + ( x5 − x6 )ζ3 ) (24.4*(ζ 2*Jx32+ζ 1*Jx13).dNx.dy6.Jy12.y2.Jx32. dy5=y5-(y2+y3)/2. Jx ji 1 det J = 12 (Jx21 Jy31 − Jy12 Jx13 ) and 2 1 P= 2J  Jx32 = x32 + 4( x5 (ζ2 −ζ3 ) + ( x6 − x4 )ζ1 ).ζ 2. Shape function module for 6-node quadratic triangle.y2}. dNy= {(4*ζ 1-1)*Jx32. Jx32= x3-x2+4*(dx5*(ζ 2-ζ 3)+(dx6-dx4)*ζ 1).ζ 2*(2*ζ 2-1). dy6=y6-(y3+y1)/2.4*(ζ 2*Jy23+ζ 1*Jy31).Jx21. Jy12= y1-y2+4*(dy4*(ζ 2-ζ 1)+(dy6-dy5)*ζ 3).) From this one gets J = y23 + 4( y5 (ζ3 −ζ2 ) + ( y4 − y6 )ζ1 ) y31 + 4( y6 (ζ1 −ζ3 ) + ( y5 − y4 )ζ2 ) y12 + 4( y4 (ζ2 −ζ1 ) + ( y6 − y5 )ζ3 )  x32 + 4( x5 (ζ2 −ζ3 ) + ( x6 − x4 )ζ1 ) x13 + 4( x6 (ζ3 −ζ1 ) + ( x4 − x5 )ζ2 ) .ζ 2.ζ 3*(2*ζ 3-1). ∂x 2J  4(ζ2 Jy23 + ζ1 Jy31 )    4(ζ3 Jy31 + ζ2 Jy12 ) 4(ζ1 Jy12 + ζ3 Jy23 )   (4ζ1 − 1)Jx32  (4ζ2 − 1)Jx13   1  ∂NT  (4ζ3 − 1)Jx21  =  . y6 = y6 − 12 (y3 + y1 ). Nf={ζ 1*(2*ζ 1-1). Jx13 = x13 + 4( x6 (ζ3 −ζ1 ) + ( x4 − x5 )ζ2 ). x5 = x5 − 12 (x2 + x3 ).x2.Jdet}]] ].{x4. 4*(ζ 3*Jx13+ζ 2*Jx21).dNy.y4}. (24.dNx.4*ζ 2*ζ 3. Jy23 = y23 + 4( y5 (ζ3 −ζ2 ) + ( y4 − y6 )ζ1 ).dy4.tcoor_]:= Module[ {ζ 1. Jy31= y3-y1+4*(dy6*(ζ 1-ζ 3)+(dy5-dy4)*ζ 2).y1}.x6.28) = x ji and Jy ji = y ji .{x3.ζ 3}=tcoor. dNx= {(4*ζ 1-1)*Jy23.22). y5 = y5 − 12 (y2 + y3 ). thus for a superparametric element x4 = x5 = x6 = y4 = y5 = y6 = 0.30) .27) Geometrically these represent the deviations from midpoint positions.Jdet}.dNy.x5.Jx13. x6 = x6 − 12 (x3 + x1 ).(4*ζ 2-1)*Jy31.dx6. Jdet = Jx21*Jy31-Jy12*Jx13. Jy31 = y31 + 4( y6 (ζ1 −ζ3 ) + ( y5 − y4 )ζ2 ).x4. Jy23= y2-y3+4*(dy5*(ζ 3-ζ 2)+(dy4-dy6)*ζ 1). Return[Simplify[{Nf. (Note that if all midpoint deviations vanish. Jy12 = y12 + 4( y4 (ζ2 −ζ1 ) + ( y6 − y5 )ζ3 ). Nf.4*ζ 3*ζ 1}.29) and the Cartesian derivatives of the shape functions are   (4ζ1 − 1)Jy23  (4ζ2 − 1)Jy31   1  ∂NT  (4ζ3 − 1)Jy12  =  . dx6=x6-(x3+x1)/2. dx5=x5-(x2+x3)/2. result by using the following “hierarchical” side node coordinates: x4 = x4 − 12 (x1 + x2 ). dy4=y4-(y1+y2)/2.x1.y3. (24. dx4=x4-(x1+x2)/2. Jx21= x2-x1+4*(dx4*(ζ 1-ζ 2)+(dx5-dx6)*ζ 3).ζ 3. dx4.y6}}=ncoor.(4*ζ 3-1)*Jy12.y3}.{x6.dx5.y5. ∂y 2J  4(ζ2 Jx32 + ζ1 Jx13 )    4(ζ3 Jx13 + ζ2 Jx21 ) 4(ζ1 Jx21 + ζ3 Jx32 ) 24–10 (24.5. {{x1.y6.y5}.y1.Jy23.4*(ζ 1*Jy12+ζ 3*Jy23)}/Jdet.{x5. dNx.31) i=1 Here p denotes the number of sample points of the Gauss rule being used.6}]]}.E23. A Mathematica shape function module Trig6IsoPShapeFunDer is shown in Figure 24.4 THE QUADRATIC TRIANGLE Trig6IsoPMembraneStiffness[ncoor_.Jdet}]].Ke=Table[0.p=3. k<=Abs[p]. ζ3i are the sample point triangular coordinates and J = 12 det J. ζ2 . k++. §24.(Emat.dNx. If [Length[options]>=2. Nf.h=th.Jdet}=N[{Nf.32) The arguments are: ncoor The list of node coordinates arranged as { { x1. dNx and dNy the x and y shape function derivatives.31) is implemented in module Trig6IsoPMembraneStiffness. Ke+=c*Transpose[Be].Be.0 }.{i. .33) arranged as { { E11. p= options[[2]]]. ζ3 ) = hBT EB J. The first one is the list of {xi .y1 }. ζ2i . ζ1i . 24–11 .options] (24. {Nf.dNy.E33 } }.Ke=Simplify[Ke]].{ E13. This data is provided by TrigGaussRuleInfo.24–11 §24. listed in Figure 24. Stiffness Module The numerically integrated stiffness matrix is  K = e e hBT EB d ≈ p wi F(ζ1i .-3.5.{12}]}. If [numer.Emat_.Emat.6. ζ3 } of the location at which the shape functions and their Cartesian derivatives are to be computed.h6 }.y6 } }. Figure 24.Nf].dNy.  (24. Stiffness matrix module for 6-node plane stress triangle.3. It receives two arguments: ncoor and tcoor.4. equal to 2J in the notation used here. h=th. Flatten[Table[{0.dNy.y2 }. wi is the integration weight for the i th sample point.{i.dNx.h5.h3. Return[Null]]..6. (24.6}]]. If [Length[options]>=1.Jdet}= Trig6IsoPShapeFunDer[ncoor.Be).numer}. where F(ζ1 . and Jdet is the determinant of matrix J.h4.{12}.6}]].w}= TrigGaussRuleInfo[{p. ζ2i . numer=options[[1]]].c.7}. ]. Be= {Flatten[Table[{dNx[[i]]. If[!numer.E22. For the 6-node triangle (24.{ x2. The module is invoked as Ke = Trig6IsoPMembraneStiffness[ncoor. Flatten[Table[{dNy[[i]].E23 }. dNy[[i]]}.dNx.k.dNy. yi } coordinates of the six nodes. If [Length[th]==6. If [!MemberQ[{1.Jdet } as module value. The module returns { Nf. For [k=1.E12.w. ζ2 .dNx[[i]]}. ζ3i ).{i.dNy.th.options_]:= Module[{i. respectively.h2.p].numer=False.E33 }. The second is the list of three triangular coordinates { ζ1 .Jdet. Return[Ke] ].2. Here Nf collects the shape function values.. Emat The plane stress elasticity matrix  E= E 11 E 12 E 13 E 12 E 22 E 23 E 13 E 23 E 33 { x6. Print["Illegal p"].6. {Nf. c=w*Jdet*h/2.tcoor.th_. th Plate thickness specified as either a scalar h or a six-entry list: { h1.dNx. {tcoor.tcoor].k].{ E12. the computations are forced to proceed in floating-point arithmetic.66 1416. (6. numer is a logical flag. The module returns Ke as an 12 × 12 symmetric matrix pertaining to the following arrangement of nodal displacements: ue = [ u x1 u y1 u x2 u y2 u x3 u y3 u x4 u y4 u x5 u y5 u x6 u y6 ]T .4. options Processing options list. The straight sided triangle geometry. which is the case here.rule } or one: { numer }.5. one with straight sides and constant metric and one with curved sides and highly variable metric. Consequently the computed Ke has the correct rank of 9.899 0 0 0 ] (24. That stiffness is  54  27  18   0   0   9  −72   0   0   0  0 −36 27 18 0 0 9 −72 0 54 0 −18 9 36 0 72 0 216 −108 54 −36 −72 0 −18 −108 216 −36 90 0 72 9 54 −36 162 −81 0 0 36 −36 90 −81 378 0 0 0 −72 0 0 0 576 −216 72 0 72 0 0 −216 864 0 −216 144 −216 144 0 −72 0 144 −360 144 −360 −72 −288 −36 0 0 0 −36 −432 288 −144 0 0 −36 −144 288 −720 0 0 −216 144 −216 144 0 −72 576 −216 −144 0 0 0 0 −36 144 0 −360 0 144 0 −360 −36 −72 −432 −288 288 −216 −144 864 0 0 576 144 −216  −36 −144  0  0  −36   −144   288  −720   0  144   −216 864 (24.75 694. 0). The element is tested with the script shown in Figure 24.6 at the midpoints of the sides.6 is tested on two triangle geometries. For the 6-node element the three point rules are sufficient to get the correct rank.7.2) 4 1 (0. −3.2. The element has unit plate thickness. The computed Ke for integration rules with 3 or more points are identical since those rules are exact for this element if the metric is constant. The 9 other ones are positive.54 12. May contain two items: { numer.82 545. 24–12 .68 57. If True. 2) and (4. in which case the entries are the six node thicknesses and h is interpolated quadratically. 6 or 7. For symbolic or exact arithmetic work set numer to False. Test on Straight-Sided Triangle 3 (4. 5 6 2 (6.23 157.7. shown in Figure 24. (24.4) The stiffness module of Figure 24.35) The eigenvalues are: [ 1971.7 175.36) The 3 zero eigenvalues pertain to the three independent rigid-body modes.34) §24. The six-entry form is used to specify an element of variable thickness.8. rule may be 1. The material is isotropic with E = 288 and ν = 1/3.0) Figure 24. rule specifies the triangle Gauss rule as described in §24. Straight sided 6-node triangle test element. If omitted rule = 3 is assumed. 4) with side nodes 4.72 367.3. The stiffness matrix Ke is computed by the threeinterior-point Gauss rule. 3. has the corner nodes placed at (0. specified as p=3.4.24–12 Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS The one-entry form specifies uniform thickness h. 0 −20.78   −36. {0.60 −18.y6}={-1/2.00 214.00   −86.00 21. {x1.0 −41.14 −124.10.y1}.2}.h.00 −20.Chop[Eigenvalues[N[Ke]]]].7  75.{True.00 20.78 36.14 24. Em=288. The element has unit thickness.8.00 75.1 −72. 1/ 3} and {−1/2.57 144.y6}}.h. √ 5 (1/2.(1-ν)/2}}.y3}.00 −103. 0}.{x3.{2.00 −207. Emat=Em/(1-ν^2)*{{1.00   20. as depicted in Figure 24.78   −144.14 72. ν=1/3.{0.ν.60 24.ν.i<=5.78 −132.8 0 41.0000001]] ]..9.00 258.0 −103.0}.00 −124.00  −166.Chop[Eigenvalues[N[Ke]].57 −24.7 96.0}/2.0) √ 4 ( 0. Script to form Ke for the triangle of Figure 24.1/Sqrt[3]}.57 0 −41.57 −144.0}.y5}.0 0 −41.00 −90. Test on Highly Distorted Triangle √ 3/2γ) √ 6 (−1/2.60 18.00 0 0 −41.1.Emat.00 24–13 −72.00  −91. Em=7*72. 3 ( 0.{False.0.78 36.57 0 374. Print["Ke=".1 0 −83.Emat//MatrixForm] Ke=Trig6IsoPMembraneStiffness[ncoor.00 0 72.{ν.07 96.y3}={0. Print["eigs of Ke=".00 −83.00 0 132. using the script of Figure 24.00 −90.1 (24.00 −84.h].3 −20.0) 1 (−1/2. The material is isotropic with E = 504 and ν = 0.7 −96. §24. 0}.4]//MatrixForm].00 −90.00 20.00  −20.00 −86.1 0  36.9 36.7.Emat.y2}={1.78 −36. Ke=Chop[Simplify[Ke]].1.Sqrt[3]}/2.0. {1/2.00 20.SetPrecision[Ke.ν. with the 6 nodes lying on a circle.{x4.h].10. Print["Eigenvalues of Ke=".i++.-1/Sqrt[3]}/2.00 0 −36.0}.7 −75.78 36.00 −166.00 −84.00 −103. h=1. ncoor={{0. {x2.0}/2.87 18. Figure 24.00 −83.0 −103.1}.y5}={1/2.78 132.{6.9 −91.7 72.p}].00 344.-3.00 −90. √ The result is that the six nodes lie on a circle of radius 1/ 3.14 −72.00 −41.24–13 §24.07 24.9. 1/ 3 ) 2 (1/2.4. The stiffness Ke is evaluated for four rank-sufficient rules: 3.8 0 374.87 −75.3   0  −41. h=1.00 −83.e.00 258.14 −72.9.0   −83.2}}.57 24.57 0 374.78 −36.00 −166. Print[Chop[Ke]//MatrixForm]. ν=0.78 −36.-3.0 −83. 1/ 3}.78 −132. Emat=Em/(1-ν^2)*{{1.y4}={0.1/Sqrt[3]}.78 −86. Ke=Trig6IsoPMembraneStiffness[ncoor.3 0 374.14 72.(1-ν)/2}}.8 0 −36.3 72.00 41.3}. Script to form Ke of test triangle of Figure 24.14 −72. −1/(2 3)}.0 −24.4 THE QUADRATIC TRIANGLE ClearAll[Em.{5.07 0 388.a. For rule=3 the result (printed to 4 places because of the SetPrecision statement in script) is  344.1 −21.{ν.y2}.0 −41.{x6. Test curved sided quadratic triangle. 1/ 3 ) A highly distorted test geometry places the 3 corners at the vertices √ of an equilateral triangle: {−1/2.7.7}[[i]].6.ν.00 −83.00  −124. using four integration rules. ncoor= {{x1.3}]. For [i=2.80   21.y1}={-1.3.{x2.07 −96. {x3.00 −83.00 374.57   0 374.00   −20.b.{4.9 144.1 0 −41.{0.00 −166.1 −18.4}.0}. p={1.y4}.00 −124.60   −24.57 −20.6.7   −72. {x4. √ 3/2} whereas√the 3 side nodes are √ located at {0. {x5. −1/(2 3) ) Figure 24.14   72.00 −86.57 −24.00 −20. ClearAll[Em.{3.0}.00 −20.37) .9  36. Print["Emat=". {1/2.1 0 −207. h=1. Figure 24.4.80 −21.{x5. Ke=Simplify[Ke]. {x6. 3 −36.2 −117.0 521.6 92.6 −341.407 125.1 −104.10 −216.0 8.10   −156.9 −21.0 141.7 36.80 1775.750 532.1 104.4 7.3 −175.948 533.9 −176.866 481.123 118.8) to avoid confusion with notation such as x12 = x1 − x2 for coordinate differences.00 −164.0 −288.7 129.9 −158.123 0 0 0 0 0 0 0 0 0 0 0 0 (24.9 64.3 0 207.41 92.5 92.53 49.000 113. Such transformations are studied in advanced FEM courses.79 −182.53 −7.41 125.472 702. Nevertheless the derivation of the element modules is instructive as this triangle has other and more productive uses as a generator of more practical elements with “drilling” rotational degrees of freedom at corners for modeling shells.000  −364.958 553.719 532.1 104.2 −64.53 −49. 24–14 .407 −398.6 40.71 −62.00 76.6 0 140.3 104.0 405.0 −170.0 −205.61 −190.6 −208.1 −50.2 −117.0 −104.78 0 602.2 602.39)  The eigenvalues of these matrices are: Rule 3 −3 6 7 Eigenvalues of Ke 702.570 760.2 −273.833 896.00 −288.2 −29.000 −323.5   117.0 120.5 36.2 0 646.8 −21.5.3 (24.00 595.11 1489.0 −104.5 −117.04 0 521.0 405.721 665.2 −117.890 768.10 −156.00 566.0 −196.89 429.8 0 180.0  0  0  180.6 0 −143.0 −205. The geometry of the triangle is defined by the coordinates of the ten nodes.93 50.9   69.0 −129.3 0 753.78 0 −29.00 113.8 0 −216.4 −139.407 125.2 140.7 117.4   −398.53 1727.000 −323.472 481.0 −170. the stiffness matrix entries and eigenvalues change significantly as the integration formulas are advanced from 3 to 6 and 7 points.3 −8.6 −190.6 −216.000 120.67 −8.884   0  207.2 117.61 −341.79 −139.5 −28.5  141. is rarely used as such in applications because of the difficulty of combining it with other elements.93 −139.2 29.3 196.2 −182.884 −69.9 104.2 −182.00 −143.00 79.00   79.407 140.3 7.5   −36.41 125.1 117.71 683.00   92.00 −205.8 69.970 533.9 −64.41 387.407  −432.2 117.8 208.0 79.750 494.000 120.11 665.00 −164.7 208.0   −205.429 321.4 0 −207.13 −158.71 683.0 0 104.67 50.0 −323.1   64.391 196.5 36.866 523.00 21.8 (24.00 139. *The Cubic Triangle The 10-node cubic triangle.1 −205.3 −7.3 −104.2 4.9 64.108 523.3 −364.2 0 −170.7 −21.7 −29.5 −432.0 79.7 176.61 −341.6 0 −226.3 50.00 −205.5 −7.5 −196.00 −364.00 −164.7 0 −207.2 29.5 196.6   −175.00 325.11 553.38) −190.1 −104.0   −176.53 1727.9 −8.61 158.79 −432.8 −40.3 −7.2  4.970 495.00 661.9 176.0 0 −64.0 −288.00 −60.000 113.11.67   8.71 −40.6 −341.8 0 120.8 −49.721 429.4  139.24–14 Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS For rule=-3:  566.2 4.0 28.3 175.9 −50.67 −50.987 118.9 −21.000 −364.9 −64.0 7.0  129.3 0 −226.2 64.884 117.2   −190.53   7.00  −205.5 478.10 −156. depicted in Figure 24.00 −28.00 76.80 1775.40) Since the metric of this element is highly distorted near its boundary.00 62.5 −36.00 −129.00   −164.79 −182. §24.4 −398.3   104.5 478.00 62. A notational warning: the interior node is labeled as 0 instead of 10 (cf.10 −273.8 40.8 −208.3 −50.0 0 The stiffness for rule=6 is omitted to save space.10  −273.0 175.00 −288.83 1489.4 −216.833 880.429 321. For rule=7:  661.00 113.2 −62.9  158.9   −104.6 −117.1   −117.00 −129.8 −69.884  −205.5 28.7   21.407 140.0   −323.3 8.181 312.391 196.407 −398.2   −29.00 −170.0 −129.407 −432.04 0 −36.2 0 632.9   21.00 595.1 50.10 21.0 −60.10 −156.9 −273.7  36.3 0 −139.0  29.9 8.13 49.2 −8.3 0 485. However as can be seen the matrix remains rank-sufficient.181 312.2 4.0 29.8 0 723.0 0 562. Figure 24. N2 = 12 ζ2 (3ζ2 − 1)(3ζ2 − 2). N9 = 92 ζ3 ζ1 (3ζ1 − 1) and N0 = 27ζ1 ζ2 ζ3 . Using (24. 3 x7 = x7 − 13 (x2 +2x3 ). x0 = x0 − 13 (x1 +x2 +x3 ). y6 = y6 − 13 (2y2 +y3 ). y4 = y4 − 13 (2y1 +y2 ).22) and (24. N7 = 92 ζ2 ζ3 (3ζ3 −1). 0 ∂ζ1     0    ζ3 (3ζ3 −1)    ζ3 (6ζ1 −1) 6ζ2 ζ3       ∂NT 9  = 2 ∂ζ2       0 2 −2ζ2 +3ζ22 9 0 ζ1 (3ζ1 −1) ζ1 (6ζ2 −1) ζ3 (6ζ2 −1) ζ3 (3ζ3 −1) 0 0 6ζ1 ζ3       .41) 3 As in the case of the 6-node triangle it is convenient to introduce the deviations from thirdpoints and centroid: x4 = x4 − 1 (2x1 +x2 ). 3 y5 = y5 − 13 (y1 +2y2 ).1 are N1 = 12 ζ1 (3ζ1 − 1)(3ζ1 − 2). the shape function partial derivatives can be worked out to be   Jy23 ( 29 − 2ζ1 + 3ζ12 /2)   Jy31 ( 29 − 2ζ2 + 3ζ22 /2)   2 2   Jy12 ( 9 − 2ζ3 + 3ζ3 /2)   Jy31 ζ1 (3ζ1 − 1) + Jy23 ζ2 (6ζ1 − 1)   T  ∂N 9  Jy23 ζ2 (3ζ2 − 1) + Jy31 ζ1 (6ζ2 − 1)  . y8 = y8 − 13 (2y3 +y1 ).            ∂NT 9  = 2 ∂ζ3       0 0  2 2 −2ζ 3 +3ζ3  9  0  0  . y7 = y7 − 1 (y2 +2y3 ).41). x5 = x5 − 13 (x1 +2x2 ). Jx32 = x32 + 9 2   x4 ζ1 (1−3ζ1 ) + x5 ζ1 (1−6ζ2 ) + x6 ζ2 (3ζ2 −6ζ3 −1)+ζ3     + x7 ζ3 (1−3ζ3 +6ζ2 )−ζ2 + x8 ζ1 (6ζ3 −1) + x9 ζ1 (3ζ1 −1) + 6 x0 ζ1 (ζ2 −ζ3 ) . =  ∂y 4J   Jx21 ζ2 (3ζ2 − 1) + Jx13 ζ3 (6ζ2 − 1)   Jx13 ζ3 (3ζ3 − 1) + Jx21 ζ2 (6ζ3 − 1)     Jx32 ζ3 (3ζ3 − 1) + Jx21 ζ1 (6ζ3 − 1)   J ζ (3ζ − 1) + J ζ (6ζ − 1)  x21 1 1 x32 3 1 6(Jx21 ζ1 ζ2 + Jx13 ζ1 ζ3 + Jx32 ζ2 ζ3 ) (24. N4 = 92 ζ1 ζ2 (3ζ1 −1). x6 = x6 − 13 (2x2 +x3 ). N3 = 12 ζ3 (3ζ3 −1)(3ζ3 −2).43) . N5 = 92 ζ1 ζ2 (3ζ2 −1). Their natural derivatives are  2 −2ζ +3ζ 2  1 1 9 0     0    ζ2 (6ζ1 −1)    ∂NT 9  ζ2 (3ζ2 −1)  = 2 . ζ2 (3ζ2 −1)  ζ2 (6ζ3 −1)   ζ1 (6ζ3 −1)   ζ1 (3ζ1 −1) 6ζ1 ζ2 (24. 3 and y0 = y0 − 13 (y1 + y2 + y3 ). y9 = y9 − 13 (y3 +2y1 ).5 *THE CUBIC TRIANGLE §24.1. 24–15 (24.42) where the expressions of the Jacobian coefficients are Jx21 = x21 + 9 2      x4 ζ1 (3ζ1 −6ζ2 −1)+ζ2 + x5 ζ2 (1−3ζ2 +6ζ1 )−ζ1 + x6 ζ3 (6ζ2 −1)  + x7 ζ3 (3ζ3 −1) + x8 ζ3 (1−3ζ3 ) + x9 ζ3 (1−6ζ1 ) + 6 x0 ζ3 (ζ1 −ζ2 ) . Jx13 = x13 + 9 2  x4 (6ζ1 −1)ζ2 + x5 ζ2 (3ζ2 −1) + x6 ζ2 (1−3ζ2 ) + x7 ζ2 (1−6ζ3 )      + x8 ζ3 (3ζ3 −6ζ1 −1)+ζ1 + x9 ζ1 (1−3ζ1 +6ζ3 )−ζ3 + 6 x0 ζ2 (ζ3 −ζ1 ) . x8 = x8 − 13 (2x3 +x1 ).24–15 §24. N6 = 92 ζ2 ζ3 (3ζ2 −1). The 10-node cubic triangle.11. =  ∂x 4J   Jy12 ζ2 (3ζ2 − 1) + Jy31 ζ3 (6ζ2 − 1)   Jy31 ζ3 (3ζ3 − 1) + Jy12 ζ2 (6ζ3 − 1)     Jy23 ζ3 (3ζ3 − 1) + Jy12 ζ1 (6ζ3 − 1)   J ζ (3ζ − 1) + J ζ (6ζ − 1)  y12 1 1 y23 3 1 6(Jy12 ζ1 ζ2 + Jy31 ζ1 ζ3 + Jy23 ζ2 ζ3 )   Jx32 ( 29 − 2ζ1 + 3ζ12 /2)   Jx13 ( 29 − 2ζ2 + 3ζ22 /2)   2 2   Jx21 ( 9 − 2ζ3 + 3ζ3 /2)   Jx13 ζ1 (3ζ1 − 1) + Jx32 ζ2 (6ζ1 − 1)   T  ∂N 9  Jx32 ζ2 (3ζ2 − 1) + Jx13 ζ1 (6ζ2 − 1)  . N8 = 92 ζ3 ζ1 (3ζ3 − 1). *Shape Function Module The shape functions obtained in Exercise 18.5. x9 = x9 − 1 (x3 +2x1 ). 7 8 9 6 0 2 5 4 1 Figure 24. dy0=y0-(y1+y2+y3)/3.dx8. The shape function module Trig10IsoPShapeFunDer that implements these expressions is listed in Figure 24.Nf. and Jy12 = y12 − 9 2    y4 ζ1 (3ζ1 −6ζ2 −1)+ζ2 + y5 (ζ2 (1−3ζ2 +6ζ1 )−ζ1 ) + y6 ζ3 (6ζ2 −1)  + y7 ζ3 (3ζ3 −1) + y8 ζ3 (1−3ζ3 ) + y9 ζ3 (1−6ζ1 ) + 6 y0 ζ3 (ζ1 −ζ2 ) . Return[Simplify[{Nf.12.Jdet}. dNy={Jx32*(2/9-2*ζ 1+3*ζ 1^2). dy9=y9-(y3+2*y1)/3.24–16 Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS Trig10IsoPShapeFunDer[ncoor_.ζ 2. dy8=y8-(2*y3+y1)/3. The Jacobian determinant is J = 12 (Jx21 Jy31 − Jy12 Jx13 ).Jx32.{x7.Jx32*ζ 2*(3*ζ 2-1)+Jx13*ζ 1*(6*ζ 2-1). Jy23=y2-y3-(9/2)*(dy4*ζ 1*(1-3*ζ 1)+dy5*ζ 1*(1-6*ζ 2)+ dy6*(ζ 2*(3*ζ 2-6*ζ 3-1)+ζ 3)+dy7*(ζ 3*(1-3*ζ 3+6*ζ 2)-ζ 2)+ dy8*ζ 1*(6*ζ 3-1)+dy9*ζ 1*(3*ζ 1-1)+6*dy0*ζ 1*(ζ 2-ζ 3)) . Shape function module for 10-node cubic triangle.y5}.x0.54*ζ 1*ζ 2*ζ 3}/2. dx6=x6-(2*x2+x3)/3. {x8.Jy31*ζ 3*(3*ζ 3-1)+Jy12*ζ 2*(6*ζ 3-1).y2. dx5=x5-(x1+2*x2)/3.dNx.x6.x1.{x2.Jy12.dx0.y1. dy6=y6-(2*y2+y3)/3.dx7.dy0.{x5.y9}.y1}. {{x1.Jy31. dx7=x7-(x2+2*x3)/3.tcoor_]:= Module[ {ζ 1.9*ζ 3*ζ 1*(3*ζ 3-1).dNy.ζ 3*(3*ζ 3-1)*(3*ζ 3-2).y9.Jx21*ζ 1*(3*ζ 1-1)+Jx32*ζ 3*(6*ζ 1-1).{x9.y7}.Jy23*ζ 2*(3*ζ 2-1)+Jy31*ζ 1*(6*ζ 2-1).x8. Figure 24.Jy23. 6*(Jy12*ζ 1*ζ 2+Jy31*ζ 1*ζ 3+Jy23*ζ 2*ζ 3)}/(2*Jdet/9).y6. dNx={Jy23*(2/9-2*ζ 1+3*ζ 1^2).x9. 9*ζ 1*ζ 2*(3*ζ 1-1).y4. Nf={ζ 1*(3*ζ 1-1)*(3*ζ 1-2).{x3.dy9.Jx13. Jx13=x1-x3+(9/2)*(dx4*(6*ζ 1-1)*ζ 2+dx5*ζ 2*(3*ζ 2-1)+ dx6*ζ 2*(1-3*ζ 2)+dx7*ζ 2*(1-6*ζ 3)+dx8*(ζ 3*(3*ζ 3-6*ζ 1-1)+ζ 1)+ dx9*(ζ 1*(1-3*ζ 1+6*ζ 3)-ζ 3)+6*dx0*ζ 2*(ζ 3-ζ 1)).ζ 2*(3*ζ 2-1)*(3*ζ 2-2). Jy31 = y31 − 9 2 (24. dx0=x0-(x1+x2+x3)/3. dx4.dy7.y8. Jx21=x2-x1+(9/2)*(dx4*(ζ 1*(3*ζ 1-6*ζ 2-1)+ζ 2)+ dx5*(ζ 2*(1-3*ζ 2+6*ζ 1)-ζ 1)+dx6*ζ 3*(6*ζ 2-1)+dx7*ζ 3*(3*ζ 3-1)+ dx8*ζ 3*(1-3*ζ 3)+dx9*ζ 3*(1-6*ζ 1)+6*dx0*ζ 3*(ζ 1-ζ 2)).ζ 2.{x4. dy4=y4-(2*y1+y2)/3.x3.ζ 3.dx6. dy7=y7-(y2+2*y3)/3.{x6.Jx13*ζ 3*(3*ζ 3-1)+Jx21*ζ 2*(6*ζ 3-1). Jy31=y3-y1-(9/2)*(dy4*(6*ζ 1-1)*ζ 2+dy5*ζ 2*(3*ζ 2-1)+ dy6*ζ 2*(1-3*ζ 2)+dy7*ζ 2*(1-6*ζ 3)+dy8*(ζ 3*(3*ζ 3-6*ζ 1-1)+ζ 1)+ dy9*(ζ 1*(1-3*ζ 1+6*ζ 3)-ζ 3)+6*dy0*ζ 2*(ζ 3-ζ 1)).x4. Jx32*ζ 3*(3*ζ 3-1)+Jx21*ζ 1*(6*ζ 3-1).dy5.Jx21*(2/9-2*ζ 3+3*ζ 3^2).dy8.{x0.y3.9*ζ 2*ζ 3*(3*ζ 2-1). Jx21*ζ 2*(3*ζ 2-1)+Jx13*ζ 3*(6*ζ 2-1).12.Jy12*ζ 1*(3*ζ 1-1)+Jy23*ζ 3*(6*ζ 1-1).9*ζ 3*ζ 1*(3*ζ 1-1).x5. As there Jdet denotes 2J . Jy12=y1-y2-(9/2)*(dy4*(ζ 1*(3*ζ 1-6*ζ 2-1)+ζ 2)+ dy5*(ζ 2*(1-3*ζ 2+6*ζ 1)-ζ 1)+dy6*ζ 3*(6*ζ 2-1)+dy7*ζ 3*(3*ζ 3-1)+ dy8*ζ 3*(1-3*ζ 3)+dy9*ζ 3*(1-6*ζ 1)+6*dy0*ζ 3*(ζ 1-ζ 2)). Jdet = Jx21*Jy31-Jy12*Jx13.y3}.y0. dx8=x8-(2*x3+x1)/3. Jx32=x3-x2+(9/2)*(dx4*ζ 1*(1-3*ζ 1)+dx5*ζ 1*(1-6*ζ 2)+ dx6*(ζ 2*(3*ζ 2-6*ζ 3-1)+ζ 3)+dx7*(ζ 3*(1-3*ζ 3+6*ζ 2)-ζ 2)+ dx8*ζ 1*(6*ζ 3-1)+dx9*ζ 1*(3*ζ 1-1)+6*dx0*ζ 1*(ζ 2-ζ 3)) .ζ 3}=tcoor. This has the same arguments as Trig6IsoPShapeFunDer.y0}}=ncoor.dy6. 24–16 . 6*(Jx21*ζ 1*ζ 2+Jx13*ζ 1*ζ 3+Jx32*ζ 2*ζ 3)}/(2*Jdet/9).Jy31*(2/9-2*ζ 2+3*ζ 2^2).dNx.Jx13*(2/9-2*ζ 2+3*ζ 2^2).y2}.y6}.y8}. 9*ζ 2*ζ 3*(3*ζ 3-1).dy4. dx4=x4-(2*x1+x2)/3.dx9.dNy.y5. Jy31*ζ 1*(3*ζ 1-1)+Jy23*ζ 2*(6*ζ 1-1). Jy23*ζ 3*(3*ζ 3-1)+Jy12*ζ 1*(6*ζ 3-1).x2. {ζ 1. dy5=y5-(y1+2*y2)/3.dx5. dx9=x9-(x3+2*x1)/3. Jx21.Jy12*(2/9-2*ζ 3+3*ζ 3^2).Jdet}]] ].x7.y7.44)  y4 (6ζ1 −1)ζ2 + y5 ζ2 (3ζ2 −1) + y6 ζ2 (1−3ζ2 ) + y7 ζ2 (1−6ζ3 )      + y8 ζ3 (3ζ3 −6ζ1 −1)+ζ1 + y9 ζ1 (1−3ζ1 +6ζ3 )−ζ3 + 6 y0 ζ2 (ζ3 −ζ1 ) .9*ζ 1*ζ 2*(3*ζ 2-1). Jy23 = y23 − 9 2   y4 ζ1 (1−3ζ1 ) + y5 ζ1 (1−6ζ2 ) + y6 ζ2 (3ζ2 −6ζ3 −1)+ζ3     + y7 ζ3 (1−3ζ3 +6ζ2 )−ζ2 + y8 ζ1 (6ζ3 −1) + y9 ζ1 (3ζ1 −1) + 6 y0 ζ1 (ζ2 −ζ3 ) . Jx13*ζ 1*(3*ζ 1-1)+Jx32*ζ 2*(6*ζ 1-1). Jy12*ζ 2*(3*ζ 2-1)+Jy31*ζ 3*(6*ζ 2-1).y4}. Jdet}= Trig10IsoPShapeFunDer[ncoor. Figure 24.w}= TrigGaussRuleInfo[{p.dNy. 4).{20}]}.0) Figure 24.options_]:= Module[{i. If [Length[options]>=2.Be).15 computes Ke using the 7-point Gauss rule and exact arithmetic. The returned stiffness matrix using either 6. If omitted rule = 6 is assumed.options] this has the same arguments of the quadratic triangle module invoked in (24.5. with the following changes. For [k=1.4) 7 The stiffness module is tested on the superparametric triangle geometry shown in Figure 24.h4.Be. If [Length[th]==10. dNy[[i]]}.h3.dNy.Jdet}=N[{Nf.7}. listed in Figure 24. . The node coordinate list ncoor contains 10 entries: { { x1. The 6 side nodes are located at the thirdpoints of the sides and the interior node at the centroid.th.-3.dNy. implements the computation of the element stiffness matrix of the 10-node cubic plane stress triangle..p=6.h=th. k<=Abs[p].{ x0. .32). (6.tcoor].Emat_..w. *Test Element 3 (4.10}]]}.Ke=Simplify[Ke]].y3 }.dNx. Ke+=c*Transpose[Be]. Return[Null]].k.2) 9 5 4 1 (0. 6 8 2 (6.14. The plate has unit thickness. Remark 24. The triangle Gauss rule specified in options as { numer. Return[Ke] ]. p= options[[2]]].h2. .10}]]. 2) and (4. The module returns Ke as an 20 × 20 symmetric matrix pertaining to the following arrangement of nodal displacements: (24.dNx.Emat.dNy.{i. For symbolic work with this element the 7-point rule should be preferred because the exact expressions of the abcissas and weigths at sample points are simpler than for the 6-point rule.Jdet}]]. The material is isotropic with E = 1920 and ν = 0.h9. Flatten[Table[{0.13.{20}. since for a superparametric element the integrand is quartic in the triangular coordinates. {tcoor.tcoor.3.3.th_. *Stiffness Module Module Trig10IsoPMembraneStiffness.y2 }.y9 }. Test 10-node triangle.dNx[[i]]}.45) Ke = Trig10IsoPMembraneStiffness[ncoor.l.k].dNx. .y1 }. The module is invoked as (24. c=w*Jdet*h/2. as can be observed in Figure 24. §24. For the given combination of inputs the entries are exact integers: 24–17 . The script of Figure 24. If [!MemberQ[{1. If[!numer. §24. th is a list of 10 entries: { h1. Flatten[Table[{dNy[[i]].{i.0 }. Print["Illegal p"].y0 } }. numer=options[[1]]].13. 0 The corner nodes are placed at (0..{ x3. k++. u x9 u y9 u x0 u y0 ]T .{i.Jdet.Ke=Table[0.{ x2. h=th.{ x9.c.6. If the plate thickness varies. .numer=False. Nf.p]. which has been already used for the quadratic triangle.3. {Nf.5 *THE CUBIC TRIANGLE Trig10IsoPMembraneStiffness[ncoor_.(Emat.rule } should be 6 or 7 to produce a rank sufficient stiffness.10}]]. If [numer.numer}. .5. For numerical work the 6-point rule is slightly faster.dNx. 0).14.2.24–17 §24. ]. {Nf. This speeds up algebraic simplification.h0 }. If [Length[options]>=1.Nf]. Stiffness module for 10-node cubic triangle.46) ue = [ u x1 u y1 u x2 u y2 u x3 u y3 u x4 u y4 .or 7-point integration is the same. Be= {Flatten[Table[{dNx[[i]]. .3. 22 254.4 1751.47) The eigenvalues are [ 26397. 14937. 8900.48) The 3 zero eigenvalues pertain to the three independent rigid-body modes in two dimensions. 12285. The 17 other eigenvalues are positive.8 4088.8 3466.70 551.4 797. 24–18 .Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS 24–18  306  102  −42   −42   −21  21   −315   −333   171   153 e K =  −27  −9   −27   −9   99  −63   −144   180  102 −42 −42 −21 21 −315 −333 171 153 306 42 42 −63 −105 351 369 −135 −117 42 1224 −408 −210 42 252 −180 −234 306 42 −408 1224 126 −294 108 −36 −378 450 −63 −210 126 1122 −306 −99 27 −99 27 −105 42 −294 −306 1938 27 −171 27 −171 351 252 108 −99 27 5265 −1215 −1539 −243 369 −180 −36 27 −171 −1215 6885 729 −891 −135 −234 −378 −99 27 −1539 729 5265 −1215 −117 306 450 27 −171 −243 −891 −1215 6885 −9 −1602 990 819 −171 81 81 −405 −405 −27 306 −2286 −459 1179 81 405 −405 −2025 −9 828 −468 −1611 315 81 81 81 81 −27 −180 1116 999 −2223 81 405 81 405 225 −108 36 −72 144 810 −324 810 −324 387 36 −108 −540 −684 −324 1134 −324 1134 −504 −108 36 171 −99 −4050 1620 810 −324 −828 36 −108 189 531 1620 −5670 −324 1134 0 0 0 0 0 0 −486 −486 −4860 1944 0 0 0 0 0 0 −486 −2430 1944 −6804 −27 −9 −1602 990 819 −171 81 81 −405 −405 5265 −1215 −3483 729 162 0 162 0 −972 0 −9 −27 −9 99 −63 −144 180 0 0 −27 −9 −27 225 387 −504 −828 0 0 306 828 −180 −108 36 −108 36 0 0  −2286 −468 1116 36 −108 36 −108 0 0  −459 −1611 999 −72 −540 171 189 0 0  1179 315 −2223 144 −684 −99 531 0 0 81 81 81 810 −324 −4050 1620 −486 −486   405 81 405 −324 1134 1620 −5670 −486 −2430   −405 81 81 810 −324 810 −324 −4860 1944   −2025 81 405 −324 1134 −324 1134 1944 −6804   −1215 −3483 729 162 0 162 0 −972 0 6885 1701 −4779 0 −162 0 −162 0 972   1701 5265 −1215 −810 0 162 0 −486 −486   −4779 −1215 6885 0 810 0 −162 −486 −2430   0 −810 0 5265 −1215 −1296 −486 −4860 1944   −162 0 810 −1215 6885 486 −2592 1944 −6804  0 162 0 −1296 486 5265 −1215 −972 0  −162 0 −162 −486 −2592 −1215 6885 0 972   0 −486 −486 −4860 1944 −972 0 12636 −2916 972 −486 −2430 1944 −6804 0 972 −2916 16524 (24.3 1721.2 5417.7 7626.019 0 0 0 ] (24.8 3046.00 28.82 313. 16597. Consequently the computed Ke has the correct rank of 17. x9=(x3+2*x1)/3. published 1966 [100]. y4=(2*y1+y2)/3.{x2. Ke=Trig10IsoPMembraneStiffness[ncoor.{0. Five triangle integration rules were tabulated in the writer’s thesis [100. The three-node linear triangle.{x3.179] and the 1964 Handbook of Mathematical Functions [1. y9=(y3+2*y1)/3.14. {x8. The table has been reproduced in Zienkiewicz’ book since the second edition [431. x7=(x2+2*x3)/3.be/~nines/research/ecf/ecf.(1-Ν)/2}}.h]. Numerical integration came into FEM by the mid 1960s.cs. (Only a small fraction of Stroud’s tabulated rules.{x5. ncoor={{0.ac.e. which yields the same stiffness matrix. developed by Bo Almroth at Lockheed. The six-node quadratic triangle. also known as Quadratic Strain Triangle (QST).y2}.and 32-digit accuracy for many geometries and dimensionalities as well as a linked “index card” of references to source publications. in the theses of Abu-Ghazaleh [2] and Willam [413]. Shape functions for the cubic triangle were presented there but used for plate bending instead of plane stress. x6=(2*x2+x3)/3.{x4.y4}.y0}}.y9}. was developed by B. The displacement derivation is mentioned in passing by Clough in [61] and worked out in the theses of Melosh [261] and Wilson [414].) The collection has been periodically kept up to date by Cools [73–75]. Ν=0. ev=Chop[Eigenvalues[N[Ke]]].{x7. who also maintains a dedicated web site: http://www. Ke=Simplify[Ke].{x0. y6=(2*y2+y3)/3. as well as references until that year.y8}. Fraeijs de Veubeke in 1962–63 [433]. x8=(2*x3+x1)/3. That book gathers most of the formulas known by 1970.7}].{False. In order of historical appearance: 1. The monograph by Stroud [363] contains a comprehensive collection of quadrature formulas for multiple integrals.y1}. are suitable for FEM work.Ν. and published in 1956 [392]. They were adapted to FEM by converting Cartesian abscissas to triangle coordinates. 2.2}.html This site provides rule information in 16.4]. published 1965 [149]. y5=(y1+2*y2)/3. respectively. both under Alex Scordelis. §25. The drillingfreedom idea was independently exploited for rectangular and quadrilateral elements. h=1. 6-node and 10-node plane stress triangular elements are generated by complete polynomials in twodimensions. Em=1920.{Ν. 38–39]. however. M.0}. References Referenced items moved to Appendix R. pp. ncoor= {{x1.15.0.b. with corrections and additions.24–19 §24. Clough and Martin in 1951–53 [68. also known as Constant Strain Triangle (CST) and Turner triangle.h.Ν.ev].1.69] using interelement flux assumptions. y0=(y1+y2+y3)/3. 3. Emat=Em/(1-Ν^2)*{{1.a.kuleuven.2] and. It is not clear when the assumed-displacement derivation. Notes and Bibliography The 3-node. A version of the cubic triangle with freedoms migrated to corners and recombined to produce a “drilling rotation” at corners.{6. Table 8.0}. x0=(x1+x2+x3)/3. 24–19 . was developed by the writer in 1965. Print["eigs of Ke=". was developed as “triangular skin panel” by Turner. has survived in the nonlinear shell analysis code STAGS as element 410 [326]. The ten-node cubic triangle. p. y7=(y2+2*y3)/3. These were gathered from three sources: two papers by Hammer and Stroud [178. x4=(2*x1+x2)/3. A variant of the Willam quadrilateral. x5=(x1+2*x2)/3. Script for testing cubic triangle of Figure 24.{4. Figure 24. was done first. y8=(2*y3+y1)/3.0}. in the monograph of Strang and Fix [360.65]. References ClearAll[Em. Print[Ke//MatrixForm].Emat.y5}. was used in static and dynamic shell analysis in Carr’s thesis under Ray Clough [57.4}}.y6}. 184]. also known as Linear Strain Triangle (LST) and Veubeke triangle.y3}.{x6.y7}.{x9. which is located between 1 and 2. The 4-node transition triangle for Exercise 24. The shape functions are N1 = ζ1 − 2ζ1 ζ2 . See Figure E24. EXERCISE 24. y3 = 12 (y3 + y1 ) in (24.5)  . Partial results: K 11 = 1980. EXERCISE 24. P= (E24.1. and with E = 2880. but now write the module for a five-node triangular “transition” element that lacks midnode 6 opposite corner 2.2 [A/C:5+20] As in the foregoing Exercise. by mistakingly assuming that the results for the linear triangle (Chapter 15) can be extended by analogy.3) y31 x13 2J y x21 12 are the same for both (E24.1) This contradicts publications that. may be used as “template” in support of this Exercise.4)   (E24.nb for the 6-node triangle.1 [C:20] Write an element stiffness module and a shape function module for the 4-node “transition” iso-P triangular element with only one side node: 4. 1 Figure E24. EXERCISE 24. K 18 = 1440.1) and (E24. y4 = 12 (y1 + y2 ). Report results for the stiffness matrix Ke and its 8 eigenvalues. take   1 1 1 J = x1 x2 x3 (E24. deduce that  J= 1 1 1 3x1 2x1 + x2 2x1 + x3 3y1 2y1 + y2 2y1 + y3   ζ1 + 1 1 1 x1 + 2x2 3x2 2x2 + x3 y1 + 2y2 3y2 2y2 + y3   ζ2 + 1 1 1 x1 + 2x3 x2 + 2x3 3x3 y1 + 2y3 y2 + 2y3 3y3  ζ3 .2). Thus the mistake has no effect on the computation of derivatives. x5 = 12 (x2 + x3 ). Use the three interior point integration rule=3. Using the 3-midpoint quadrature rule show that the element stiffness can be expressed in a closed form obtained in 1966 [100]:  Ke = 13 Ah B1T EB1 + B2T EB2 + B3T EB3  in which A is the triangle area and  1 B1 = 2A  1 B2 = 2A  1 B3 = 2A y32 0 y31 0 y12 0 2y23 0 2y32 0 2y23 0 0 x23 0 x13 0 x21 0 2x32 0 2x23 0 2x32 x23 y32 x13 y31 x21 y12 2x32 2y23 2x23 2y32 2x32 2y23 y23 0 y13 0 y12 0 2y31 0 2y31 0 2y13 0 0 x32 0 x31 0 x21 0 2x13 0 2x13 0 2x31 x32 y23 x31 y13 x21 y12 2x13 2y31 2x13 2y31 2x31 2y13 y23 0 y31 0 y21 0 2y21 0 2y12 0 2y12 0 0 x32 0 x13 0 x12 0 2x12 0 2x21 0 2x21 x32 y23 x13 y31 x12 y21 2x12 2y21 2x21 2y12 2x21 2y12 24–20 (E24. removing nodes 5 and 6. however.1. Begin by deriving the five shape functions. By setting x4 = 12 (x1 + x2 ). N3 = ζ3 and N4 = 4ζ1 ζ2 . (E24. that   y23 y32 1 2J = 2A = det J = x3 y12 + x1 y23 + x2 y31 .26). x3 = 12 (x3 + x1 ).1.24–20 Chapter 24: IMPLEMENTATION OF ISO-P TRIANGULAR ELEMENTS Homework Exercises for Chapter 24 Implementation of Iso-P Triangular Elements 3 EXERCISE 24.2) y1 y2 y3 Show.3 [A+C:25] Consider the superparametric straight-sided 6-node triangle where side nodes are located at the midpoints. y5 = 12 (y2 + y3 ).7. ν = 1/3 and h = 1. N2 = ζ2 − 2ζ1 ζ2 . posted on the index of Chapter 24. 2 4 Test the element for the geometry of the triangle depicted in Figure 24. Note: Notebook Trig6Stiffness.4 [A/C:15+15] Consider the superparametric straight-sided 6-node triangle where side nodes are at the midpoints of the sides and the thickness h is constant. 6 [A/C:25].) EXERCISE 24. show that the element stiffness can be expressed again as (E24. Derive the 4-node transition triangle by forming the 6-node stiffness and applying MFCs to eliminate 5 and 6.4). 1 B3 = 6A Yet another set that produces the correct stiffness is  1 B1 = 6A  1 B2 = 6A  1 B3 = 6A y23 0 y31 0 y21 0 2y21 0 2y12 0 2y12 0 0 x32 0 x13 0 x12 0 2x12 0 2x21 0 2x21 x32 y23 x13 y31 x12 y21 2x12 2y21 2x21 2y12 2x21 2y12 y32 0 y31 0 y12 0 2y23 0 2y32 0 2y23 0 0 x23 0 x13 0 x21 0 2x32 0 2x23 0 2x32 x23 y32 x13 y31 x21 y12 2x32 2y23 2x23 2y32 2x32 2y23 y23 0 y13 0 y12 0 2y31 0 2y31 0 2y13 0 0 x32 0 x31 0 x21 0 2x13 0 2x13 0 2x31 x32 y23 x31 y13 x21 y12 2x13 2y31 2x13 2y31 2x31 2y13   (E24. Using next the 3-interior-point quadrature rule.24–21 §24. (Entails solving an algebraic Riccati equation.5 [A/C:40] (Research paper level) Characterize the most general form of the Bi (i = 1. References With this form Ke can be computed in approximately 1000 floating-point operations.7)  EXERCISE 24. 3) matrices that produce the same stiffness matrix Ke in (E24. 2. 24–21 . Prove that this technique only works if sides 1–3 and 2–3 are straight with nodes 5 and 6 initially at the midpoint of those sides.4) but with  1 B1 = 6A  1 B2 = 6A  5y23 0 y13 0 y21 0 2y21 + 6y31 0 2y32 0 6y12 + 2y13 0 0 5x32 0 x31 0 x12 0 2x12 + 6x13 0 2x23 0 6x21 + 2x31 5x32 5y23 x31 y13 x12 y21 2x12 + 6x13 2y21 + 6y31 2x23 2y32 6x21 + 2x31 6y12 + 2y13 y32 0 5y31 0 y21 0 2y21 + 6y23 0 6y12 + 2y32 0 2y13 0 0 x23 0 5x13 0 x12 0 2x12 + 6x32 0 6x21 + 2x23 0 2x31 x23 y32 5x13 5y31 x12 y21 2x12 + 6x32 2y21 + 6y23 6x21 + 2x23 6y12 + 2y32 2x31 2y13    y32 0 y13 0 5y12 0 2y21 0 6y31 + 2y32 0 2y13 + 6y23 0 0 x23 0 x31 0 5x21 0 2x12 0 6x13 + 2x23 0 2x31 + 6x32 x23 y32 x31 y13 5x21 5y12 2x12 2y21 6x13 + 2x23 6y31 + 2y32 2x31 + 6x32 2y13 + 6y23 (E24.6) The fact that two very different expressions yield the same Ke explains why sometimes authors rediscover the same element derived with different methods. 25 The Assembly Process 25–1 . . . §25. . .6 The Element Freedom Table . . . . . . . . . . . . . . . . . . . . . . . . . . §25. . . . . . . 25–2 25–3 25–3 25–4 25–4 25–6 25–7 25–7 25–9 25–10 25–10 25–11 25–12 25–12 25–13 25–13 25–14 25–17 25–19 25–20 25–21 . . . .Chapter 25: THE ASSEMBLY PROCESS TABLE OF CONTENTS Page §25. .1 §25.3. . . . . . . . . . . .4. . . . . §25. . . . §25. . . . . . Simplified Assemblers . . .7 A Plane Trussed Frame Structure . . . . . MET-VFC Assemblers . . . . .2 Node Freedom Signature . . . . . . . . . . . . . . . . . .5. . . . . . . . .3 The Node Freedom Allocation Table . . . . . .6 §25. . . . . . . . . .5. . . . . . . . .2 Simplified Assembler Implementation .3. . Exercises . . . . . . . . §25. . . MET Assemblers . . *Handling MultiFreedom Constraints . . . . . .4. . . . . . . . . . §25. . . . . . §25. . . . . . . . . . . . . . . . . . .5. . . . §25. Simplifications .5 §25.5. . .5. Introduction . . . . . .1 Node Freedom Arrangement . §25. . . . §25. . .2 MET Assembler Implementation . . . . . . .5 The Element Freedom Signature .4 The Node Freedom Map Table . . . . . .8 MET-VFC Assembler Implementation . . . . . . . . . . . . . . . .5. . . . . . . . . . . . . . . . . .5. §25. . . §25. . . .5. . . . . . . . . . . .3 §25. . .4 §25. . . . .2 §25. . Notes and Bibliography .1 A Plane Truss Example Structure . .1 A Plane Stress Assembler . . . . . §25. . In the present chapter assembly will be studied with more generality.) Merge requires access to freedom activity data.1.§25. §25.1. Model definition data: geometry element connectivity material fabrication freedom activity Assembler K ^ Modify Eqs for BCs K Equation Solver Some equation solvers apply BCs merge and solve simultaneously loop K e Element Stiffness Matrices ELEMENT LIBRARY Nodal displacements To postprocessor Figure 25. and fabrication data. the assembler sits at the crossroads of this data exchange. but interfacing with a large element library. • There are no “gaps” in the node numbering sequence.2 SIMPLIFICATIONS §25. Role of assembler in FEM program. This is the merge loop. The complexity is not due to mathematical operations. Assembler examples for special models were given as recipes in the complete programs of Chapters 21 and 22. to the state as well. and immediately merges it into the master equations. Introduction Chapters 20. Instead this Chapter takes advantage of assumptions that lead to coding simplifications. the assembler constructs one element at a time in a loop. Sandwiched between element processing and solution there is the assembly process that constructs the master stiffness equations. • The number and configuration of degrees of freedom at each node is the same. For example: all elements are 2-node plane bars. which merely involve matrix addition. In most codes the assembler is implemented as a element library loop driver. • The master stiffness matrix is stored as a full symmetric matrix. Simplifications The assembly process is considerably simplified if the FEM implementation has these properties: • All elements are of the same type. This allows the basic aspects to be covered without excessive delay. The position of the assembler in a DSM-based code for static analysis is sketched in Figure 25. material. Assembly is the most complicated stage of a production finite element program in terms of data flow. Forming an element requires access to geometry.1. This means that instead of forming all elements first and then assembling. The coverage of the assembly process for a general FEM implementation is beyond the scope of an introductory course. as well as knowledge of the sparse matrix format in which K is stored. (In nonlinear analysis. connectivity. 25–3 .2. As illustrated in Figure 25. 23 and 24 dealt with element level operations. • There are no multifreedom constraints treated by master-slave or Lagrange multiplier methods.1. §25. Simplified Assemblers In this section all simplifying assumptions listed in §25. The last condition simplifies the indexing to access entries of K.1)  0 0 0 0 0 0 0 0 5   0 0 0 0 0 0 0 0 6   0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 8 The numbers written after each row of K are the global DOF numbers. The disconnection-to-assembly process is pictured in Figure 25. Those four numbers are collected into an array called the element freedom table. Numbers in parentheses written after node numbers are global DOF numbers.2(b). The element stiffness matrix K(1) is listed on 25–4 .6) y (1) 2 (2) (3) 3 (4) assembly x 4 4 (5) (4) 4 (7.Chapter 25: THE ASSEMBLY PROCESS (a) (b) 1 (1.4) (2) 3 (5. 2 × 2 − 1 = 3 and 2 × 2 = 4.2(b). Begin by clearing all entries of the 8 × 8 master stiffness matrix K to zero. (a): model definition.1. See Figure 25.4) 3 (5.3. The structure has 5 elements.2.6) 4 (7.3. The process is illustrated on a plane truss structure.2(a) will be used to illustrate the details of the assembly process. or EFT for short.2) E = 3000 and A = 2 for all bars 1 3 2 (3.8) Figure 25. (b) disconnection → assembly process. This allows us to focus on local-to-global DOF mapping.2) 2 (3. A Plane Truss Example Structure The plane truss shown in Figure 25. Left: Example plane truss structure. If the first four conditions are met the implementation is simpler because the element freedom table described below can be constructed “on the fly” from the element node numbers. so that we effectively start with the null matrix:   0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 2   0 0 0 0 0 0 0 0 3   0 0 0 0 0 0 0 0 4 K= (25.8) (5) (3) 4 (1) 1 (1. Element (1) joins nodes 1 and 2. 2 × 1 = 1. §25.2 are assumed to hold. The global DOFs of those nodes are 2 × 1 − 1 = 1. 4 nodes and 8 degrees of freedom. 5) .4.3) Element (3) joins nodes 1 and 4. The global DOFs of those nodes are 2 × 2 − 1 = 3.3 SIMPLIFIED ASSEMBLERS the left below with the EFT entries annotated after the matrix rows. Its EFT is { 1.7.7.5.8 }. 2 × 2 = 4. Matrices K(3) and K upon merge are    768 −576 −768 576  −576 432 576 −432    −768 576 768 −576 576 −432 −576 432 1 2 7 8 2268  −576   −1500   0   0   0  −768 576 Element (4) joins nodes 2 and 4.2.§25. Matrices K(4)    0 0 0 0  0 2000 0 −2000    0 0 0 0 0 −2000 0 2000 3 4 7 8 2268  −576   −1500   0   0   0  −768 576  1 576 −432  2  0   0   0   0   −576 7 8 432 (25.2) Element (2) joins nodes 2 and 3. Its EFT is { 3. 2 × 3 − 1 = 5 and 2 × 3 = 6.4.4) and K upon merge are −576 −1500 0 0 0 −768 432 0 0 0 0 576 0 3000 0 −1500 0 0 0 0 0 0 0 0 0 −1500 0 1500 0 0 0 0 0 0 0 0 576 0 0 0 0 768 −432 0 0 0 0 −576 −576 −1500 0 0 0 −768 432 0 0 0 0 576 0 3000 0 −1500 0 0 0 0 2000 0 0 0 0 −1500 0 1500 0 0 0 0 0 0 0 0 576 0 0 0 0 768 −432 0 −2000 0 0 −576 25–5  576 −432   0 3  −2000  4  0   0   −576 7 8 2432 (25. Matrices K(2) and K upon merge are   1500  0  −1500 0  0 −1500 0 0 0 0  0 1500 0 0 0 0  0 −1500 0 0 0 0 0 0 0 0 0 0 0 0  0 3000 0 −1500 0 0 0   0 0 0 0 0 0 0  0 −1500 0 1500 0 0 0   0 0 0 0 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 1500  0   −1500   0   0   0  0 0 3 4 5 6 3 4 5 6 (25. On the right is K upon merging the element stiffness:   1500  0  −1500 0  0 −1500 0 0 0 0  0 1500 0 0 0 0 1500  0   −1500   0   0   0  0 0 1 2 3 4  0 −1500 0 0 0 0 0 0 0 0 0 0 0 0  0 1500 0 0 0 0 0   0 0 0 0 0 0 0  0 0 0 0 0 0 0  0 0 0 0 0 0 0  0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 (25.6 }.8 }. thus the EFT is { 3. A.{1.K}. eft={2*ni-1. Print["Eigs of K=". 0 0 0 0 576.{2.{0.2*nj-1.{2.2*nj}.3. 0 0 0 0 576.Ke. options=eleopt. Return[K] ]. −432.j]] ]. eleopt= {True}. 576. ].4. i<=4.2}. 0 3000. −432.{2*numnod}. ii=eft[[i]]. 432. 0} Figure 25. 0 2864. 0 0 0 2000. 0 0 −768.A.jj.22.ncoor.eft.Em. 0. 0 576.ni.Em. elefab= Table[2.j. 0 0 −576.jj]]+=Ke[[i. −576. A=elefab[[e]]. Eigs of K={5007. eleopt_]:=Module[{numele=Length[elenod]. 0.i. 0 2268. K[[jj. (25.8 }.nj}=elenod[[e]]. −1500.3}.2: 2268. 0 −2000. Master Stiffness of Plane Truss of Fig 25.nodxyz[[nj]]}.{4.4}.elenod_. j<=4.84. Matrices K(5) and K upon merge are   2268 −576 −1500 0 0 0 −768 576 0 0 0 0 576 −432   −576 432     3000 0 −1500 0 0 0  768 576 −768 −576 5  −1500 0   0 0 2000 0 0 0 −2000   576 432 −576 −432  6  0     0 −1500 0 2268 576 −768 −576  5 −768 −576 768 576 7  0   0 0 0 576 432 −576 −432  6 −576 −432 576 432 8  0   7 −768 576 0 0 −768 −576 1536 0 8 576 −432 0 −2000 −576 −432 0 2864 (25.nj.0}}.options. elenod= {{1.3}. 0 −2000.numnod=Length[nodxyz].3}. 25–6 . Figure 25. 4743. Print[K//MatrixForm].{2*numnod}].2:"].4}}. Print["Master Stiffness of Plane Truss of Fig 25. PlaneTrussMasterStiffness[nodxyz_.703.6. ncoor={nodxyz[[ni]].{5}]. 1536.46. For [e=1. Its EFT is { 5. 0 0 0 −1500.ii. −576. −432. K=PlaneTrussMasterStiffness[nodxyz.{0.elenod. 576. nodxyz={{-4. element (5) joins nodes 3 and 4. i++.{3. e<=numele. −768. K=Chop[K]. For [j=i. −576. K=Table[0.6) is the master stiffness before application of boundary conditions.elefab_. −432. 2356. For [i=1. Em=elemat[[e]].elemat. e. jj=eft[[j]]. j++. {ni.eleopt]. 0 −1500. ]. 0 0 0 −1500.78.elemat_.7.Chop[Eigenvalues[N[K]]]]. −576.3}. Plane truss assembler tester and output results. −576. Plane truss assembler module.{5}].2*ni.ii]]=K[[ii.options].4}. 0 0 −768.elefab. 463. 576. Ke=PlaneBar2Stiffness[ncoor.Chapter 25: THE ASSEMBLY PROCESS Finally. 2228. elemat= Table[3000. e++.6) Since all elements have been processed. 432. −768. 4. Simplified Assembler Implementation Figure 25.4.3 for the SpaceTrussMasterStiffness assembler.10) x 1(1.prcopt] The five arguments: nodxyz. A Plane Stress Assembler This kind of assembler will be illustrated using the module PlaneStressMasterStiffness.1. A plane stress structure used to test a MET assembler. ot 4-node bilinear quadrilaterals.3 in A (bars) = 2 sq in 5(9. elemat.8) 1 in 1 2 bar (4) 1in 4 in 3(5. The only incremental change with respect to the simplest assemblers is that an array of element types.3 shows a a Mathematica implementation of the assembly process just described.3 to that of Figure 21. This scenario is common in special-purpose programs for analysis of specific problems: plane stress.5.4 produces the output shown in the bottom of that figure. 3-node linear triangles.6) Figure 25.4) 3(5. respectively. y 4 (1) (3) 5 in 5 (2) 5 in trig (1) 1(1. this is suitable for use in plane stress analysis programs. We make the following assumptions: 1 All nodes in the FEM mesh have 2 DOFs.2.8) §25. and builds the local to global DOF mapping accordingly.2) bar (3) (4) 6 in 2(3.elemat. or MET assembler for short. u y } displacements.6) assembly quad (2) 3 E (plate. §25. The master stiffness (25. plate bending. "Trig3" and "Quad4".§25. The master stiffness is stored as a full matrix.4 MET ASSEMBLERS §25. and prcopt have the same function as those described in §21. the similarities are obvious. This assembler calls the element stiffness module PlaneBar2Stiffness of Figure 20. MET Assemblers The next complication occurs when elements of different types are to be assembled.2) 2(3. 5(9. bars) = 10000 ksi ν (plate)= 0. Element types are identified with character strings "Bar2". The assembler is invoked by (25. comparing the code in Figure 25.10) 4 (7.1.elefab.4) 4 (7.3. denoted here by eletyp. 2 Element types can be: 2-node bars.25 h (plate) = 0. There are no node gaps or MFCs. has to be provided. while the number and configuration of degrees of freedom at each node remains the same.6) is reproduced. namely the {u x . These elements can be freely intermixed. In fact.1. solids.elenod. As its name indicates. elenod. This will be called a multiple-element-type assembler. The assembler calls the appropriate element stiffness module according to type. elefab. The eigenvalue analysis verifies that the assembled stiffness has the correct rank of 8 − 3 = 5. 25–7 .7) K = SpaceTrussMasterStiffness[nodxyz. Running the script listed in the top of Figure 25.2. 1 −7071.3 220.27 −1718.92 178.1 215.1 −164. since node n maps to global freedoms 2n − 1 and 2n.78   −136. The assembly process goes as follows.0 0 1333.3 400.1 7071. printed with one digit after the 25–8 .1  2 (25.2 }.7.3 −400.34 610.0 −720. 3.0 −1333.61 215.0 −400.13 −665.3 1000.0 0    −500.4  395.27 3 −850.10) K(3) =   0 0 0 0 7 0 −4000.1 −7071.12 627. whence the EFT is { 3.0 −1333.8 }.0 1920. The element stiffness is   7071.76 3393.8.0 0 −4000.1 −7071.6.5.50 −668.8 }.0 0 −600.0 412.55   −735.71 −1191.7.3 420.5 427.34 358.05  5  −549.1 −7071.0 2053. But the construction of the EFT is immediate. Returned stiffness matrices are generally of different order. Element (1) is a 3-node triangle with nodes 3.61 −136.76 −136.95  4  −164. whence the EFT is { 1.54 Element (4) is a 2-node bar with nodes 1 and 2.0 2420.34 −1718.27 −850.36 627.1.71  −1009.71 −1191. The technique is illustrated with the 4-element.7.30 −164. It consists of one triangle.1 −164.8) Element (2) is a 4-node quad with nodes 2.3. 5 and 4.9) Element (3) is a 2-node bar with nodes 1 and 4.81 −331.0 8 2076.71 386.30 178.15 −1009.9 2 (25.55 2703.0 0 −500. The element stiffness computed with a 2 × 2 Gauss rule is   420. The element stiffness is   0 0 0 0 1  0 4000.0 0 4000. The element stiffness is  K(1)  500.36 427.34 358. one quadrilateral.0 −600.6.27 395.5.11) K(4) =   −7071.76  7  −600.Chapter 25: THE ASSEMBLY PROCESS As noted above. 5-node plane stress structure shown in Figure 25.0 −600. 6 × 6 and 8 × 8 for the bar.0 −720.3 −400.82 386.50 −468.1 7071.5 220.0 5 6 9 10 7 8 (25.0 −1920. and two bars.11 −660.1 −7071.0 1000.1 4 Upon assembly.1 −7071.05 −679.76 −600.4.95 −735. respectively.1 7071.54 1 2000.11 2067.0    0 400. whence the EFT is { 5.0 0 600.0 0 600.28 −479.05 −665. the master stiffness of the plane stress structure. 4 and 1.1 7071. whence the EFT is { 1. triangle and quadrilateral.82 852.1 1  −7071.2.10.15  8  412. the chief modification over the simplest assembler is that a different stiffness module is invoked as per type.28   −679.1 3 7071.0 −400.0 −1920.11 =  −331.78 −136.0  2 (25.4 −468.13 1433.9.1 7071.1 7071.05 −549.0   =   −600.1 −479.0 0 720.4 }.11 −660. in our case 4 × 4.81  6 K(2)  −668.2. neldof.5 −735. If [!MemberQ[{"Bar2".7  0 0 0 0 −500.3 −679.3 358.0 −6658.eletyp_.3 −1718.1 −164." Assembly interrupted"]. If [type=="Quad4".7 3228. The assembler is invoked by K = PlaneStressMasterStiffness[nodxyz.1 −164.8 −331.0 1000. numer=prcopt[[1]].elenod.0 −1920.0 −164.1 2567.12) [ 32883.4 7491.8 −136.5   −1718.{i. Return[K].1 6153.{numer. §25.ncoor.Em. elemat_. For [j=i.5 1027.3 −660.0 −720. ].{i. For [i=1.1 −660.j]] ]. ii=eftab[[i]].2 −136."Trig3".1 −331.5 1027.Emat.i++.type. 25–9 .2.6.2 −6675. neldof=Length[Ke]. " of element e=".n}].0 The eigenvalues of K are which displays the correct rank.5 −479.n.4 1027.type].2}] ].elefab_.5 −668.5   7291. n=Length[enl].Ke.4.numer.8 −4600. A=elefab[[e]].3 −7922.jj]]+=Ke[[i.eftab.33 3914.elenod_.0   −720.9 178. Implementation of MET assembler for plane stress.99 2253.8 386.13) 0 0 0 0 7291.1   −665.4 1027. which is a list of element types.3 −136.0 −6675.3 358. If [type=="Trig3". i.j++. jj=eftab[[j]].0 −1333. decimal point.ii.0 −600. ncoor=Table[nodxyz[[enl[[i]]]]. ]. Ke=Quad4IsoPMembraneStiffness[ncoor.Emat.0 −400.th.0 7491.1 −735. Emat=elemat[[e]].1 −479. If [type=="Bar2".e<=numele. Ke=Trig3IsoPMembraneStiffness[ncoor.prcopt_]:=Module[{numele=Length[elenod].1 −665. Emat=elemat[[e]]. th=elefab[[e]].§25.e.0 −1920.0 0 0 −600.8 −4600. Print["Illegal type".8 −668.jj.j<=neldof.8 −679.7 5439. K=Table[0.6.1 215.th. eftab=Flatten[Table[{2*enl[[i]]-1.e++.Emat.2*enl[[i]]}. For [e=1.e.3  −400. ].{2*numnod}. Figure 25.0 2420.0 2053. enl=elenod[[e]].7 9774.0 −600.7 −1191.3 −400.{numer}] ].5 −8080. Ke=PlaneBar2Stiffness[ncoor."Quad4"}. th=elefab[[e]].0 0 0 0  0  −600.3 2530.3 9147.5 13072.K}.1 −1191.4  −6658.enl.eletyp.3 (25.06 2131.{numer}] ].A.03 0 0 0 ] (25.3 178.elemat. numnod=Length[nodxyz]. MET Assembler Implementation An implementation of the MET plane stress assembler as a Mathematica module called PlaneStressMasterStiffness is shown in Figure 25.8   −468. K[[jj.i<=neldof.th.4 0 0 −500.{2*numnod}].1.0   1000.14) The only additional argument is eletyp.4 MET ASSEMBLERS PlaneStressMasterStiffness[nodxyz_.elefab.8 −7922.0 −400.6 215.prcopt] (25.7 386.3  −8080. type=eletyp[[e]]. 10517.1 −549. Em=elemat[[e]].n}]].ii]]=K[[ii.1 −549.8 2185. Return[K]].3  −164.6 −136.5 −468. is  10464.0   −1333. 30 178.h. K=PlaneStressMasterStiffness[nodxyz.A}.{0. and how are they arranged? While many answers are possible.71 − 1191.3.00 − 468.00 − 1333.4 7291.50 − 668.12) and the eigenvalues (25. These are explained in the following subsections before giving a concrete application example.{5. 5439.(1-ν)/2}}."Bar2".0 1000.3 358.05 − 665. 0.33.A.{5.82 386. 0.71 − 1191.0 2053.0 − 400.5. where VFC is an acronym for Variable Freedom Configuration. 3228. MET-VFC Assemblers The next complication beyond multiple element types is a major one: allowing nodes to have different freedom configurations. elenod= {{3. 10517.00 − 600.28 − 479.1 215.13 − 1920.5 − 8080.4 − 600.78 − 136.5. Emat=Em/(1-ν^2)*{{1. The script listed in the top of Figure 25.{0.9 178.00 − 400. Only two advanced attributes remain: allowing treatment of MFCs by Lagrange multipliers. we focus 25–10 . prcopt={True}.11 2567.36 1027.6}.76 − 4600.0 − 164.3 − 400.5 13072. − 6658.Em.2 − 136.50 − 468.1 − 164.05 − 549. 0} Figure 25.. elefab= {h.11 − 660.13 6153.1.7.0 − 600.0 0 0 0 0 − 600. The latter requires major programming modifications.3 − 665.2}}.28 − 679.{ν.6}}.05 − 735.2 0 0 − 8080.3 2530. nodxyz= {{0.prcopt].Em}.5.Emat. 2131.Chapter 25: THE ASSEMBLY PROCESS Em=10000.4}. 2253.76 − 331. Master Stiffness Matrix of Plane Stress Structure: 10464.71 386.1 − 164.3 − 7922.0}.0}.13).{1.00 − 1333.81 − 679.30 − 400.{1. ν=1/4.5 1027. Print["Master Stiffness Matrix of Plane Stress Structure:"].eletyp.03.81 − 668.4}.06. at both node and element levels.7 runs module PlaneStressMasterStiffness with the inputs appropriate to the problem defined in Figure 25.elemat.4 7491. The output shown in the bottom of the figure reproduces the master stiffness matrix (25.76 0 0 − 6658. §25.5 9774.7.05 − 549.11 − 331. . Node Freedom Arrangement A key decision made by the implementor of a FEM program for structural analysis is: what freedoms will be allocated to nodes.00 − 720. Print[SetPrecision[Chop[K].61 − 136. Script for assembling the plane stress model of Figure 25.3 Eigs of K: {32883.0 − 6675.5 and output results.{2. §25.elenod.5 − 735. A assembler of this kind can handle orientation nodes as well as node “gaps” automatically.1}.00 2420.3 − 500.61 215.1}. however.3 358.99.00 − 164. 3914.ν.Chop[Eigenvalues[N[K]]]].0}.5 0 0 − 1718.3 − 7922."Bar2"}.00 0 0 0 0 − 500. h=3/10.5 1027.82 2185. and handling a sparse matrix storage scheme.1.1 − 479.76 − 4600.5]//MatrixForm].36 1027.00 − 720."Quad4".0.3 − 1718.71 0 0 7291.{1. elemat= {Emat. The former can be done by an extension of the concept of element. The implementation of a MET-VFC assembler requires the definition of additional data structures pertaining to freedoms.5 − 6675. A=2.3 9147.0}. Print["Eigs of K:".5.00 1000.4. 7491.11 − 660. An assembler that handles this feature will be called a MET-VFC assembler. A MET-VFC assembler gets closer to what is actually implemented in production FEM programs.00 − 1920.7. eletyp= {"Trig3".elefab.78 − 136. and is not considered in this Chapter. u zn } and three infinitesimal rotations {θxn .1 At each node n three displacements {u xn .0.10]. the position of a freedom never changes.m] Unpacks the NFS p into a list s of length m. θ yn . The length of the Node Freedom Arrangement is called the NFA length and often denoted (as a variable) by nfalen. Figure 25.2.8.0. that only has translational degrees of freedom. nfalen is 6. For the common choice (25. u yn . u y5 . etc.10. it means that the jth freedom in the NFA is allocated. u zn . u yn . fluxes.0. suppose that the underlying NFA is (25. Once the decision is made on a NFA. temperatures. p = PackNodeFreedomSignature[s] Packs the NFS list s into integer p. It is also possible to reserve more NFA positions for structural freedoms. Node Freedom Signature Having picked a NFA such as (25. UnpackNodeFreedomSignature[p_. and it becomes unnecessary to carry rotations in the master equations. The packed NFS (25.1. Then its NFS is { 1. For example. θz } must be replaced by something else. To handle such scenarios in general terms a Node Freedom Signature or NFS. however. finite rotation measures must be used. an orientation node). Node freedom manipulation utility functions. such as a space truss. Then only {u xn .16) If a node has no allocated freedoms (e. All of them use built-in functions. pressures.15) This is a Node Freedom Arrangement or NFA.16) would be 110001. There are also cases where allocations may vary from node to node. θ yn . its NFS contains only zeros. or has never been defined.g. NFA positions #7 and beyond are available for additional freedom types. This technique requires utilities for packing and unpacking.m_]:=IntegerDigits[p. This is the scheme used by most commercial codes. If the jth entry is one.10. A brief description follows. §25. θz5 }.5.15) does not mean that all such freedoms need to be present at a node. In a geometrically nonlinear FEM code. NodeFreedomCount[p_]:=DigitCount[p.15) and that node 5 uses the three freedoms {u x5 .5 MET-VFC ASSEMBLERS PackNodeFreedomSignature[s_]:=FromDigits[s. s = UnpackNodeFreedomSignature[p. such as Lagrange multipliers. Consequently the infinitesimal node rotations {θx .1 } (25.15) of 3D structural codes. whereas if zero that freedom is not in use. θzn } are chosen as freedoms and ordered as follows: u xn . (The second argument is necessary in case the NFS has leading zeros.1].) k = NodeFreedomCount[p] 1 2 Returns count of ones in p. 25–11 . θ y . is introduced. θzn (25. position #2 is forever associated to u yn .2 Thus if (25. u yn . The NFS is a sequence of zero-one integers. u zn } will be used. It is convenient to decimally pack signatures into integers to save storage because allocating a full integer to hold just 0 or 1 is wasteful.8.§25.15) is adopted.m]. Mathematica functions that provide those services are listed in Figure 25. θxn . Take for example a model. where m is the NFA length. here on the most common arrangement for a linear three-dimensional FEM program. . nodfmt[[i+1]]=nodfmt[[i]]+ DigitCount[nodfat[[i]]. The Node Freedom Allocation Table The Node Freedom Allocation Table. §25.nodfmt}. (25.1. is a node by node list of packed node freedom signatures. The inverse is UnpackNodeFreedomSignature[110001. It is invoked as nodfmt = NodeFreedomMapTable[nodfat] (25.1.Length[nodfat]}]. The configuration of the NFAT for the plane stress example structure of Figure 25. k.5.110000. Suppose that node n has k ≥ 0 allocated freedoms. TotalFreedomCount[nodfat_]:=Sum[DigitCount[nodfat[[i]]. . which returns { 1.{numnod}].110000.1]. j = 1. i. and returns it as function value. The module builds the NFMT by simple incrementation. Return[nodfmt]].0.18) The only argument is the NFAT.110000. For [i=1. 3 The “map” qualifier comes from the use of this array in computing element-to-global equation mapping. In the case of a MET-VFC assembler such gaps are not considered errors.10. NodeFreedomCount[110001] returns 3. are used at each of the five nodes. §25. {i.Chapter 25: THE ASSEMBLY PROCESS NodeFreedomMapTable[nodfat_]:=Module[{numnod=Length[nodfat]. or an undefined one. Figure 25.{ 5 }]. This i is called the base equation index: it represent the global equation number before the first equation to which node n contributes.i++.0. u y }.10. The Node Freedom Map Table The Node Freedom Map Table. Example 25.0.1] ].110000 } = Table[110000. and to compute the total number of freedoms.0. A zero entry in the NFAT flags a node with no allocated freedoms.0.5 is nodfat = { 110000. Base equation indices for all nodes are recorded in the NFMT.5. Modules to construct the NFMT from the NFAT.0.1 }.17) This says that only two freedoms: {u x . Obviously i = 0 if n = 1. This is either an orientation node.1 }] returns 110001.3 In Mathematica code the table is internally identified as nodfmt. . or NFAT.i<=numnod-1.4. which is a common occurence when certain mesh generators are used. Figure 25. or NFMT. PackNodeFreedomSignature[{ 1.3. nodfmt=Table[0. In Mathematica the list containing this table is internally identified as nodfat.6]. These have global equation numbers i + j.9. 25–12 . is an array with one entry per node. . The latter case happens when there is a node numbering gap.1.9 lists a module that constructs the NFMT given the NFAT. but provides freedom data at the element rather than global level.15). §25.11 is nodfat = { 110001.111000 } (25. For [j=1.s. More specifically. Figure 25. along with the NFAT and NFMT.0.nodfat_. etc.000000.m].5.{j.m}]. s=IntegerDigits[nodfat[[n]]. which contribute only to translational degrees of freedom {u x . The Element Freedom Signature The Element Freedom Signature or EFS is a data structure that shares similarities with the NFAT.nelnod}]}].22) This information.1]. u y .i++.m_]:=Module[ {nelnod=Length[enl]. u z }.1. The NFAT for the plane truss-frame structure of Figure 25. The call nodfmt = NodeFreedomMapTable[nodfat] (25. eft[[k]]=nodfmt[[n]]+sx[[j]] ]]]. ]. 0+3+2=5.19) returns { 0. which contributes to all six nodal freedoms. For [i=1.110001 }. This can be easily verified visually: 0+3=3. given the NFAT as argument.3.j.sx}. If [s[[j]]>0.3 }. ix=0.111111 } (25. The EFS of any such element will be efs = { 111000.5.20) For a 2-node space beam element. the EFS will be efs = { 111111. Module to construct the Element Freedom Table for a MET-VFC assembler. Figure 25.{i.10.{Sum[DigitCount[efs[[i]].sx[[j]]=++ix].§25. If [es[[j]]>0.3. sx=Table[0. 110001. given an element. eft=Table[0.9 also lists a function TotalFreedomCount that returns the total number of freedoms in the master equations. The EFS is best described through an example.8. The node freedom counts are { 3.000000 } (25. n=enl[[i]].2.n.10.5 MET-VFC ASSEMBLERS ElementFreedomTable[enl_. es=IntegerDigits[efs[[i]].1.j++.111111.21) For a 3-node space beam element in which the third node is an orientation node: efs = { 111111.10.i<=nelnod.eft. Suppose that in a general FEM program all defined structural nodes have the signature 111111. it tells to which degrees of freedom it constributes.efs_.2. The program includes 2-node space bar elements. Example 25.nodfmt_. k++. 25–13 .110000.m].k=0.5. meaning the arrangement (25.8 } in nodfmt.10. Do [If[s[[j]]>0.i.es.j<=m.ix.{m}]. is used to build Element Freedom Tables. Return[eft]]. and we simply describe here the interface. Examples of use of this module are provided in the plane trussed frame example below. For a MET-VFC assembler that is no longer the case. The structure is a trussed frame. This allows to write the merge loop compactly.6. is relegated to an Exercise. It is a one dimensional list of length equal to the number of element DOF.11(b). But it is possible for the returned EFT to contain zero entries. Discussion of the logic.nodfmt. If the ith element DOF maps to the kth global DOF. The module returns the Element Freedom Table as function value. The module is invoked as eft = ElementFreedomTable[enl.c.11(b. element disconnection and assembly process are illustrated in Figure 25.23) The arguments are enl The element node list. This can only happen if an element freedom does not match a globally allocated one.10 does not make that decision because it lacks certain information. There are 11 DOFs.3 nodfmt The Node Freedom Map Table (NFMT) described in 25.5. Then six of the EFT entries.5. efs The Element Freedom Signature (EFS) list. §25.nodfat. For example suppose that a 2-node space beam element with the EFS (25. the construction of the EFT is best done by a separate module. A Plane Trussed Frame Structure To illustrate the workings of a MET-VFC assembler we will follow the assembly process of the structure pictured in Figure 25. Remark 25. The occurrence of a zero entry in a EFT normally flags a logic or input data error.7.d).5. then the ith entry of EFT contains k.m] (25. The EFT constructed by ElementFreedomTable is guaranteed to contain only positive entries if every freedom declared in the EFS matches a globally allocated freedom in the NFAT. nodfat The Node Freedom Allocation Table (NFAT) described in 25. it will be considered within the context of a general purpose 3D program with the freedom arrangement (25.4 m The NFA length. that should be placed into the message. The module of Figure 25.Chapter 25: THE ASSEMBLY PROCESS §25. Although the structure is chosen to be plane to facilitate visualization.21) is placed into a program that does not accept rotational freedoms and thus has a NFS of 111000 at all structural nodes. namely those pertaining to the rotational freedoms. such as the element number. The FEM idealization has 4 nodes and 5 elements.10. To take care of the VFC feature. material and fabrication data are given in Figure 25.15) at each node. 3 and 5 as shown in Figure 25.5.1. The Element Freedom Table The Element Freedom Table or EFT has been encountered in all previous assembler examples. Geometric. which is not trivial. the EFT can be built “on the fly” simply from element node numbers. 2. three 25–14 . Node 4 is purposedly left out to illustrate handling of numbering gaps. Nodes numbers are 1. often 6. It uses two element types: plane (Bernoulli-Euler) beam-columns and plane bars. the assembler should print an appropriate error message and abort. would be zero. The finite element discretization.11(a). If detected.efs.11(a). A Mathematica implementation is shown in Figure 25. In the simpler assemblers discussed in previous sections. 110000 } { 1.9.11) 3(6.001 m 2 5(9.11.3) assembly (3) (5) (4) 2(4.7.2.5 } { 4.003 m 2 MET-VFC ASSEMBLERS y (b) 1 Beam-column 3 Beam-column 5 (a) FEM idealization Bar 3m x E=200000 MPa A=0.110001 } { 110000.2.10.26) Next we list the element stiffness matrices.10. and two at node 2.110001.5) 2(4.5.8 } (25. Trussed frame structure to illustrate a MET-VFC assembler: (a) original structure showing dimensions.8. 3 and 5.9.0004 m4 y E=200000 MPa A=0.7.5 E=30000 MPa.4.110001 } { 110001.11) 5(9.3 } { 2.3.5.§25.8 } { 6.5) Figure 25.24) The NFAT and NFMT can be constructed by inspection of (25. A=0. Izz =0.3.11 } { 1.2.5 } { 1. The EFT entries are annotated as usual.6. (d) assembly.110000 } { 110000.24) to be nodfat = { 110001.110001 } nodfmt = { 0. 25–15 .10 } (25.8) Bar 2 (node 4: undefined) disassembly 4m (1) 1(1.8) 1(1.2 } { 2.25) The element freedom data structures can be also constructed by inspection: Elem Type Nodes EFS EFT (1) (2) (3) (4) (5) Beam-column Beam-column Bar Bar Bar { 1. (c) conceptual disassembly. Numbers written in parentheses after a node number in (c.3 } { 3.8.7.2. (b) finite element idealization with bars and beam column elements. at nodes 1.02 m 2 .7.d) are the global freedom (equation) numbers allocated to that node. material and fabrication properties.6. They are ordered as Global DOF #: DOF: Node #: 1 u x1 1 2 u y1 1 3 θz1 1 4 u x2 2 5 u y2 2 6 u x3 3 7 u y3 3 8 θz3 3 9 u x5 5 10 u y5 5 11 θz5 5 (25.7 } { 4.000000.110000.3) Bar E=200000 MPa A=0.10.001 m2 4m (c) x (d) (2) 3(6.5 } { 110001.5.110000 } { 110000. computed with the modules discussed in Chapter 20. 6 19.2  −19.29) (25. 6 0. 0.6 19. −45. 60.5 −45.4 K(3) =  −25.2 −150. 0. −45. 45. 120. −45. 25–16 1 2 4 5 4 5 9 (25.31) 10 0 0 0 −25.2 −14.2  0 0 228. −45.2 0 4  −14. −22.5 45. 22.2 −14.6 −19. 22.4 0 5  0 0 6  −22. 0 0 0 −45. 0 0   0 0 0 −19. 19.     0.6 −19. Element (5): This is a plane bar element with stiffness  25.2 36.5 45.2 −14. 0 200. 0.27) 8 Element (2): This is a plane beam-column with element stiffness identical to the previous one   150.2 0  0 0 1 0 0 2  0 0 3  −19. 60.2 −14. −22.  9  −150. 0 −200.2 −14.6 19.   (1) K =  0.5 −45. 45.  8  (2) K = (25. 150. 0.5 −45.  7    0.4 −19. 10 −45. 0  19.4 Element (4): This is a plane bar element with stiffness   0 0 0 0  0 200.9 45.2 4 5 6 7 (25.6 19. 0. 0.2 −14.30)  −19.4  0 45.5 45.2 −25.   0. 0 0 175.8 0 −200.2 −150.6 19.2 14. 0. 0.2  19.2 K(5) =  −25. 11 (25.  8  19.6 −19. −150. 0.2 14.5 −45. 120.2 −14.28)  0.5 −45.4 −19. 0.5 −45.4  K =  −150. 0. 0.  7  −45. 150.5 45.   −150. 60. 45. 120. 0 0  0 −22. 0   0 45. 45. 60. 0 0 0 0 0 0 45. 60. 60. 10 0.   0 51. 0.6 19. 0 0 0 0 240.2  19. 0. 0.2 −25. 22.   0 0 0 −25. 120. 0.4 Upon merging the 5 elements the master stiffness matrix becomes  175.6 19.32) .4 0 −22.5 45.Chapter 25: THE ASSEMBLY PROCESS Element (1): This is a plane beam-column element with stiffness   150. −22.2 0 9  36. 0. 0 0 0 0 300.  K(4) =   0 0 0 0 0 −200.6 14. 0. 0. 22. 120.2 25. 60. −22. 0 −200. 0.5 45. −150. 0.4   19. 1 2 3 6 7 (25.2 0 −25.2 −150. 0.6 −19. 0.9 −45.4 19.   0. 60.  −19. 11 Element (3): This is a plane bar element with stiffness  25.2 25. 0 0 0 −22.2 0 0 0 0  −25. 0 245.6 −19.4   −19.6 −19. 120.2 14. 0. 001.nodfat.661 146. 120.32) would look like  175. For storage as a skyline matrix (Chapter 26) the template for (25. which are the cross section area and the moment of inertia about the local z axis.9.27.47. symm 45. It eigenvalues are (25.34) reveals that some additional zero entries could be removed from the template. 0 51.0.2 is nodfat The Node Freedom Arrangement Table (NFAT). 0 0 0 0 240.9 0 −25.0.2. however.Izz }. Since all elements have been processed. It comes from the fact that some elements such as the beams are aligned along x.6.004 }.6 45.elefab. 19. which decouples axial and bending stiffnesses. Remark 25.3. 175.{ 0.5 −45.35) Examination of the template (25. PlaneTrussedFrameMasterStiffness uses five other modules: the element stiffness modules PlaneBar2Stiffness and PlaneBeamColumn2Stiffness of Chapter 20.2 36.8.34) The diagonal location pointers of (25.9 −45.9. fortuitous.761 82.11.eletyp.prcopt] (25. For the example trussed frame structure elefab is { { 0.0. for example K 13 . A bar element requires only the cross section area: A.6        K=       −19.431 306.2 −14.02.6 19.33) [ 460.1. The module returns the master stiffness matrix as function value.32) is the master stiffness matrix.2 19. 0 245. The element fabrication list elefab has minor modifications. 0 −200.0.001 } in accordance with 25–17 .         45. (25. MET-VFC Assembler Implementation Figure 25. 0 0 0 0 300.10. A plane beam-column element requires two properties: { A.004 }.0.6 −19.4.5 MET-VFC ASSEMBLERS in which global freedom numbers are annotated for convenience.456 445.§25.4 −150.181 25.34. 60.003.15.2 36. the total-DOF-counter TotalFreedomCount of Figure 25. The assembler module is invoked as K = PlaneTrussedFrameMasterStiffness[nodxyz.elenod.   0   −25. (25.4476 0 0 0 ] This has the correct rank of 11 − 3 = 8.4 0 0 228.02.34) are defined by the list DLT = { 0. and the EFT constructor ElementFreedomTable of Figure 25.7415 74. the NFMT constructor NodeFreedomMapTable of Figure 25.36) The only new argument with respect to the MET assembler of §25. The fact that those entries are zero is.  −22.8 −150.2 −14.12 lists the Mathematica implementation of a MET-VFC assembler capable of doing the trussed frame structure of Figure 25.5 0 −45.321 188. §25.5. elemat.2 120.2 −19.52 } (25. 0 0 −22.40.10.   60.21. i++.options. 0 0 0 0 0 0 −25.Ke.K}.{4. Print["Eigs of K=".181.456.2}.nodfat.options] ]. elenod_.numdof. 25–18 .6 19.110001}. 0 0 0 0 0 0 −25.nodxyz[[nj]]}. Figure 25. 60. ncoor={nodxyz[[ni]].nj}=enl. Print["Master Stiffness of Example Trussed Frame:"].0}.761. j++.5 45. K=Table[0.6 −19.Em. K[[jj.001.4 0 0 228.numnod=Length[nodxyz].2 −150. prcopt= {True}. nodxyz={{-4.nodfmt.2 36.prcopt].5}}. i<=neldof. 0.110000.2 0 0 19. 175.eletyp.ii]]=K[[ii.6 19. Print["Assembly process aborted"].000000. {ni.7415. options=prcopt. Print["Zero entry in eftab for element ". 0 0 0 −25.ni.elemat.enl. e++.5 0 −45.6 −19.nodxyz[[nj]]}.3}.2 −14.0. elenod. For [i=1.nodfat. A MET-VFC assembler written for the plane trussed frame structure. 60."Bar2".Em.110001."Bar2". If [MemberQ[eftab. Print[K//MatrixForm]. 82. 0 −200. Em=elemat[[e]].6]. elemat= Join[Table[30000.Izz. 0 0 0 19. Script to test the assembler of Figure 25.321.2 −14.{numdof}]. ].j]] ].661. If [eletyp[[e]]=="BeamCol2". j<=neldof. numdof=TotalFreedomCount[nodfat]. 0 −200.11. {A.6 −19. 188.Chop[Eigenvalues[N[K]]]].5}.02. 120. eletyp= {"BeamCol2".e].n.Chapter 25: THE ASSEMBLY PROCESS PlaneTrussedFrameMasterStiffness[nodxyz_. 0} Figure 25. −19.ncoor.4 −150. 0 245.4 0 0 0 0 0 0 0 0 −22.001}. If [eletyp[[e]]=="Bar2".e.2 −19. For [j=i.nodfmt.eletyp_. eftab=ElementFreedomTable[enl. Return[K]].{110001.Izz}=elefab[[e]].elefab.0.3}. 0 0 0 0 0 0 45. K=Chop[K].{2}].A.0].5 −45.jj]]+=Ke[[i.9 45.prcopt_]:=Module[ {numele=Length[elenod].12.6 19.nj.Table[200000.9 0 −45. K=PlaneTrussedFrameMasterStiffness[nodxyz. 146. ]. jj=eftab[[j]]. elenod= {{1. 0 45. 74. Return[K]].A. Ke=PlaneBeamColumn2Stiffness[ncoor.2 36.k.{0.0.110001}. e<=numele.{numdof}.elemat_.2 19.6 0 −25. 0 0 0 0 240. enl=elenod[[e]].{3}]].{110000.0. neldof=Length[eftab].2 −14.4 0 0 45. 0 −45.13. options=prcopt. For [e=1.0.m."BeamCol2".Izz}. 0 0 −22."Bar2"}.3}}. nodfmt=NodeFreedomMapTable[nodfat]. 0 −45. nodfat={110001. 120.nodfat. Em=elemat[[e]]. 60. ncoor={nodxyz[[ni]].{A. eftab.2 −150.4476.j.i.elefab_. Eigs of K= {460. 0 0 −22.5 −45.nodfmt.6].{1.{3.8 0 −150. 0 0 0 0 300. 0 0 45.{2. 0 −22. eftab=ElementFreedomTable[enl. 25.nj}=enl.Em.options] ].12 with the structure of Figure 25.004}.0. 19.{2.431.004}. {ni. Master Stiffness of Example Trussed Frame: 175.2 0 51.{0. A=elefab[[e]].2 −14. ii=eftab[[i]].3}. 445.02.110000}. 60. Ke=PlaneBar2Stiffness[ncoor.{0. elefab= {{0.nodfat_.3}.003. 0. 306. and produces the same master stiffness as (25. The degrees of freedom of the assembled structure increase by one to 12.37) For assembly purposes (25. The effect of adding a “Lagrange multiplier element” is to append rows and columns to the master stiffness.8) 1(1. They are ordered as Global DOF #: DOF: Node #: 1 u x1 1 2 u y1 1 3 θz1 1 4 u x2 2 5 u y2 2 6 u x3 3 7 u y3 3 8 θz3 3 9 u x5 5 10 u y5 5 11 θz5 5 12 λ(6) none (25.13 produces the output shown in the bottom of that figure. u y1 = u y5 u y1 − u y5 = 0.8) 5(9.14. Running the script listed in the top of Figure 25.10. Processing the MFC element (6) yields the 12 × 12 4 This device should not be confused with penalty elements.34).2.6 *HANDLING MULTIFREEDOM CONSTRAINTS (a) (b) FEM idealization Same data as in Figure 25. Finite element discretization.3) 5(9. As can be observed this agrees with (25.33). or (25. That is. the data in Figure 25. 25–19 . except for an extra zero row and column. suppose that the trussed frame example structure of the previous section is subjected to the constraint that nodes 1 and 5 must move vertically by the same amount.7.38) The assembly of the first five elements proceeds as explained before.11) assembly (3) (5) (4) 2(4.5) 2(4. *Handling MultiFreedom Constraints To see the effect of imposing an MFC through the Lagrange multiplier method on the configuration of the master stiffness matrix.2.14).6.10. disassembly and assembly of trussed frame example structure with MFC u y1 = u y5 .7. §25.37) may be viewed as a fictitious element4 labeled as (6).11. See Figure (25.11) 3(6.§25. which have stiffness matrices. The element material property list elemat is modified on the account that the elastic moduli for the beam columns (made of reinforced concrete) and bars made of (steel) are different.11 plus MFC u y1 = u y5 Beam-column Beam-column Bar Bar Bar 2 (node 4:undefined) disassembly MFC (6) (c) 3(6.32) and (25.3) (d) MFC (2) (1) 5 3 1 1(1.5) Figure 25. 60. 0 0 0 −45. saving matrices on disk. are no longer needed. 0 −19. Those limitations forced the use of “out-of-core” blocked equation solvers. has had a happy consequence: interweaved assembly and solver implementations. 120. However. bringing processing to a crawl. 0 −1. The availability of large amounts of RAM (even on PCs and laptops) since the mid 90s. 0 0 −150. Changing their assemblers and solvers incrementally is virtually impossible.9 45.39) in which the coefficients 1 and −1 associated with the MFC (25. 0 0 0 0 −22. modified and saved.   −45. As a result even the most complex assembler presented here fits in one page of text. There are several ways to incorporate multiplier adjunction into an automatic assembly procedure. K= 0 −22. 0 0 175.  0 0 0  −19. system dependent logic quickly becomes a maintenance nightmare. BC application and solution concurrently.6 19. 0 245. One solution favored in programs of the 1965–85 period was to process all elements without assembling.4 0 0  0 0 0  −22.3 is explained in any finite element text.2 0 0  −14.2 −150. In a commercial environment such investment-busting decisions are unlikely.5 45.” Application of displacement BCs and factorization can “trail the wave” once no more elements are detected as contributing to a given equation.4 0 0 228. The assembler can be modularly separated from the solver.2 −14.37) end up in the last row and column of K. as well as convoluted matrix blocking. A second way out emerged by 1970: the frontal solvers referenced in Chapter 11. One tiny alteration in the element library over which the solver sits.6   19. Only a limited number of blocks could reside on RAM.4 0 −22. The only practical way out is rewrite the whole shebang from scratch. Of course it is too late for the large scale FEM codes that got caught in the limited-RAM survival game decades ago.2 0 51. however. frontal solvers can be extremely sensitive to changes.4  0 45. 0 −45.6 −19. the complications that arise in more general scenarios. 0 0 (25. Notes and Bibliography The DSM assembly process for the simplest case of §25. 60.2 0 0  36. 25–20 .  −150. 0  19. 0 0 1.2 −14.5 −45.2 0 0 0 0 −25.5 45. and the whole thing may crumble like a house of cards. 60. 0   −25. 120.5 −45. forcing blocks to be read in.6 −19.2  0 0 0 0 300. As can be expected of trying to do too much at once. The gurus that wrote those thousands of lines of spaghetti Fortran are long gone.2 −150.9 −45. 0 0 0 0 0 0 0  0 0 0 0 0 1. Variants have been strongly influenced by limits on random access memory (RAM). Thus a straightforward element-by-element assembly loop (as in the assemblers presented here) was likely to “miss the target” on the receiving end of the merge. On large problems this swapping was likely to “trash” the system with heavy I/O. Especially when VFCs are allowed. Element contributions are processed in a special order that traverses the FEM mesh as a “wavefront. Being of advanced nature such schemes are beyond the scope of this Chapter.6 19. The most elegant ones associate the fictitious element with a special freedom signature and a reserved position in the NFA.2 36. 19.2 0 −25. 19. 60. Assembler implementation flavors have fluctuated since the DSM became widely accepted as standard. 0  −19.2 −14. −1.2  0 0 0 0 0 0 45.6   0 0 0 −19. With smart asynchronous buffering and tuned-up direct access I/O such schemes were able to achieved reasonable efficiency. meaning that heavy use was made of disk auxiliary storage to store and retrieve the master stiffness matrix in blocks. 0   0 0 0 −25.8 0 −200. 0 0 0 0 240. 0 −200. 0 0   0 45. The assembler then cycled over stiffness blocks and read in the contributing elements.Chapter 25: THE ASSEMBLY PROCESS bordered stiffness  175. Few texts cover. A frontal solver carries out assembly. EXERCISE 25. The stiffness modules for the three element types used in this structure are available in Cells 2 and 3 and may be reused for this Exercise. For this download Notebook ExampleAssemblers.6 The plate element identifier is "Trig3".4 and §25.8) 1(1.11) assembly (7) (4) x Bar Plate Bar (5) 2(4. Plate-reinforced trussed frame structure for Exercise 25.6 mm = 0.6 for this to happen.Exercises Homework Exercises for Chapter 25 The Assembly Process EXERCISE 25.4. Each reinforcing plate is modeled with a single plane stress 3-node linear triangle.1. and complete Cell 4 by writing the assembler.4.11 (c) y (b) y Bar Plate disassembly 3(6.0016 m.1(a). respectively.5) Figure E25. Can it return zero entries in the EFT? If yes.5.3) 5(9. which may be used as guides. as illustrated in Figure E25.2.7.8) 5(9. This is the fabrication actually sketched in Figure E25. The driver script to run the assembler is also provided in Cell 4 (blue text).11) 3(6. The triangles are numbered (6) and (7). 5 This structure would violate the compatibility requirements stated in Chapter 19 unless the beams are allowed to deflect laterally independently of the plates.6 mm= 0. Compute the master stiffness matrix K of the structure.10. 25–21 . the material is isotropic with E = 240000 MPa and ν = 1/3. ν=1/3 h =1.3 [D:15] Describe the logic of module ElementFreedomTable listed in Figure 25. Sketch how you would modify the module of Figure 25. EXERCISE 25. This exercise may be done through Mathematica.0016 m.7.10.2. §25.5) 2(4. x Other dimensions & properties same as in the trussed frame of Fig.10.4 is reinforced with two triangular steel plates attached as shown in Figure ?(a). 25.3) (6) (3) 2 (node 4:undefined) (d) (2) (1) 1(1.5 1 Beam-column 3 Beam-column 5 (a) FEM idealization Plate properties: E =240000 MPa. Hint: read the Chapter carefully.4 [A/C:30] The trussed frame structure of Figure 25.10 on the trussed frame structure.3.2 [C:10] Exercise the module ElementFreedomTable listed in Figure 25. Verify that it produces the last column of (25. The plate thickness is 1. give a specific example of how this can happen.1 [D:10] Suppose you want to add a six-node plane stress quadratic triangle to the MET assembler of §25.nb from this Chapter index. 6 Cells 1–3 contain the assemblers presented in §25. EXERCISE 25.1(c).26). Those come in handy for debugging. 0 0 0 0 240.6 19.9 −45.   60.  0 0  0   0   0   0  45. called hplate in the driver script.2 0 243.9  0 45.4  K =  −312. 0 72. (E25.6 −19.   0 0  0 0 0 0 0 45. 0 816. −76. −72. 0 45. 60. 72.2 0 91. Target:  337.2   91. please do not remove the internal Print commands that show element information (red text).2  −19.2 −14.Chapter 25: THE ASSEMBLY PROCESS When reusing the assembler of Cell 3 as a guide.2 −14. (In the trussed frame example script.6 91. 60. is temporarily set to zero.5 −45. −76.1) EXERCISE 25. 0 0 −312.6 91. Another debugging hint: check that the master stiffness (25.5   0 45. which is OK only for small problems.8 0 −776. −76.5 does not explain how to construct the NFAT from the input data.2 90.   −25. 0 929.32) is obtained if the plate thickness. 0 337. −72. 0 0 0 −45. 0 −776.   0   −45. 120. 19.) Explain how this table could be constructed automatically if the EFS of each element in the model is known.5 45. 0 −91. nodfat was set up by inspection.  −72. 0 −45. −76.4 0 −312.2 −14. 25–22 . 120.6 −91.4 0 0 804.2 90. 0 0 −25. 72. 0 −192.6 −91.2 −312.2 0 0 0 0 −91. 0 0 0 −25. Note: the logic is far from trivial.5 [A:30] §25. 60. 0 0 0 −25.5 −45.2 0 −192. Please keep that printout in the returned homework to help the grader.4 72. 0 −72.2 −14. Solving FEM Equations 26–1 .26 . §26. . . . .2. .3. .6.3. . .4. . §26. .4. §26. . . . . . . . . .26–2 Chapter 26: SOLVING FEM EQUATIONS TABLE OF CONTENTS Page §26. . *Solving for One or Multiple RHS . . . . A SkySolver Implementation §26. . . . . Treating MFCs with Lagrange Multipliers §26. . Solution .2. .2. . . .1. . . .2. . . . . . *Miscellaneous Utilities . . §26. . Skyline Storage Format . . . . . . . . . . . . . . . .3. The Curse of Fullness .2. . .3. . .7. . .5. . . .1. .3. The Advantages of Sparsity . .2. . §26. *Matrix-Vector Multiply . . . . Exercises . . §26. §26. . §26. Motivation for Sparse Solvers §26. . .1.2. . . . .1. §26. . .1. . *Skymatrix Factorization . *Reconstruction of SkyMatrix from Factors §26. . . . . . Skymatrix Representation . . . . Sparse Solution of Stiffness Equations §26. . . . . . . . . §26. . . . . . . .3. . . .3. . . . . . . . . . 26–2 . . . . . . . . . . . . . . 26–3 26–3 26–4 26–5 26–5 26–6 26–6 26–6 26–7 26–7 26–8 26–11 26–13 26–14 26–15 26–16 26–20 .1. . . . . . . §26. . . . . .2. . . . .3. . . . . . . . . . . . . . . . . *Printing and Mapping .3. . Factorization . . . . . .3. . . . . . . . . 1. Systems of order 1000 to 10000 are routinely solved in commercial software. however. §26.1 MOTIVATION FOR SPARSE SOLVERS §26. In practical applications the order of the stiffness system (26. [A floating-point operation unit is conventionally defined as a (multiply. 3 The factor times given in that table reflect 1998 computer technology. by the process called merge.add) pair plus associated indexing and data movement operations.1) is dominated by the factorization of K.1 In linear FEM analysis the cost of solving this system of equations rapidly overwhelms other computational phases. the required storage is 8N 2 bytes. Motivation for Sparse Solvers In the Direct Stiffness Method (DSM) of finite element analysis. a matrix of order N = 104 would require 8 × 108 bytes or 800 MegaBytes (MB) for storage. that is a modest amount. The master force vector is stored as a conventional one-dimensional array of length equal to the number N of degrees of freedom.1. f the vector of node forces and u the vector or node displacements. For large N the solution of (26. The assembly process is described in Chapter 25. Presently the record is about 50 million equations on parallel computers.] Now a fast workstation can typically do 107 of these operations per second. The end result of the assembly process are the master stiffness equations Ku = f (26.1) can be quite large. 26–3 . say.1.1) where K is the master stiffness matrix. an operation discussed in §26. Larger ones (say up to 100000 equations) are not uncommon and even millions of equations are being solved on suoercomputers. requires storage for N 2 entries. This is illustrated in Table 26. For simplicity the description that follows assumes that no MultiFreedom Constraints (MFCs) are present. Much attention has therefore given to matrix processing techniques that economize storage and solution time by taking advantage of the special structure of the stiffness matrix. the element stiffness matrices and consistent nodal force vectors are immediately assembled to form the master stiffness matrix and master force vector. The Curse of Fullness If K is stored and processed as if it were a full matrix. The solution concludes the main phase of DSM computations.2.26–3 §26. To update to 2003. double precision floating-point number. which summarizes the storage and factor-time requirements for orders N = 104 .3 As regards memory needs. 105 and 106 . the system (26. the storage and processing time resources rapidly becomes prohibitive as N increases. 1M equations uses 8MB for double precision storage. 2 A force of displacement vector of.2 Handling the master stiffness matrix. divide times by 10 to 20. If each entry is an 8-byte. 1 For fluid equations solved by fluid-voulume methods the number is over 100 million. Upon imposing the displacement boundary conditions.1. This operation requires approximately N 3 /6 floating point operation units. Thus. presents computational difficulties.1) is solved for the unknown node displacements. respectively. a full square matrix stored without taking advantage of symmetry. This storage arrangement presents no particular difficulties even for very large problem sizes. In these days of GB RAMs. If the entries are. Only symmetric skymatrices will bve considered here. 8-byte double-precision floating-point numbers. This scheme is simple to understand. the storage requirement is 8N B bytes. These times assume that the entire matrix is kept in RAM.1. orders above 104 would pose significant computational difficulties. If a skymatrix of order N can be stored in S memory locations.2 Storage & Solution Time for a Skyline Stored Stiffness Matrix √ Assuming B = N Matrix order N Storage (double prec) Factor op. Such matrices are call sparse.1 illustrate that for present computer resources. Under this assumption. we shall concentrate on a particular form of sparse scheme that is widely use in FEM codes: skyline storage. The Advantages of Sparsity Fortunately a very high percentage of the entries of the master stiffness matrix K are zero.26–4 Chapter 26: SOLVING FEM EQUATIONS Table 26. The elaspsed timed estimated given in Table 26. There are clever programming techniques that take advantage of sparsity that fit certain patterns. for otherwise the elapsed time may increase by factors of 10 or more due to I/O transfer operations.units (FLOPS) Factor time workstation (or fast PC) Factor time supercomputer 104 105 106 800 MB 80 GB 8 TB 1012 /6 1015 /6 1018 /6 3 hrs 4 mos 300 yrs 2 min 30 hrs 3 yrs Table 26. A matrix stored in accordance with the skyline format will be called a skymatrix for short. manage and implement.2.1 Storage & Solution Time for a Fully-Stored Stiffness Matrix Matrix order N Storage (double prec) Factor op. §26. The skyline storage format is a generalization of its widely used predecessor called the band storage scheme. The factorization of a skymatrix requires approximately 12 N B 2 √ floating-point operation units. the ratio B = S/N is called the mean bandwidth.units (FLOPS) Factor time workstation (or fast PC) Factor time supercomputer 104 105 106 8 MB 240 MB 8 GB 108 /2 1010 /2 1012 /2 5 sec 8 min 15 hrs 0. Although a comprehensive coverage of such techniques is beyond the scope of this course.05 sec 5 sec 8 min whereas a supercomputer may be able to sustain 109 or more. as usual. storage requirements and estimated factorization times for N = 104 . In two-dimensional problems B is of the order of N . since the stiffness matrices in linear FEM are symmetric. while cutting storage and processing times by orders of magnitude as the problems get larger. N = 105 and 26–4 . Even a million equations do not look far-fetched on a supercomputer as long as enough memory is available. During the factorization step discussed below these zero entries will in general become nonzero. The new limits are primarily dictated by power comsumption. It is seen that by going from full to skyline storage significant reductions in computer resources have been achieved. the upper triangle in the above display. the barrier disappears. Skyline Storage Format The skyline storage arrangement for K is best illustrated through a simple example.26–5 §26.2.2.2)  0 K 46  K 44    K 55 K 56 symm K 66 Since the matrix is symmetric only one half. 26–5 . need to be shown. 4 On a PC or laptop with a 32-bit processor. now N = 104 is easy on a workstation and trivial on a supercomputer. §26. The remaining zero entries are conventionally removed:     K=   K 11 K 22 K 13 0 K 33 K 24 K 34 K 44 K 55 symm  K 16 0   0   K 46   K 56 K 66 (26. As PCs migrate to 64-bit processors over the next 10 years.2 SPARSE SOLUTION OF STIFFNESS EQUATIONS N = 106 are reworked in Table 26. These auxiliary arrays are described in the previous Chapter. Notice that the skyline profile may include zero entries. a phenomenon that receives the name fill-in. Sparse Solution of Stiffness Equations §26. For example the high-end Mac workstation can presently be expanded up to 16GB RAM. That is typically 2GB. circuitry and cooling considerations. The envelope separates that entry from the rest of the upper triangle. From each diagonal entry move up the corresponding column until the last nonzero entry is found.1. A distributed (Beowulf) network is a practical solution to go beyond the individual machine limits. For example. Knowledge of that material is useful for understanding the following description.4 In preparation for assembling K as a skymatrix one has to set up several auxiliary arrays related to nodes and elements. Next we define the envelope of K as follows. A sparse matrix that can be profitably stored in this form is called a skymatrix for brevity.3) What is left constitute the skyline profile of skyline template of the matrix.2. Consider the 6 × 6 stiffness matrix   K 11 0 K 13 0 0 K 16 K 22 0 K 24 0 0     K 33 K 34 0 0   K= (26. there is a RAM “hard barrier” because of hardware addressing limitations. 9) Back substitution : Uu = y. (26. K 13 . Equations for which the displacement component is prescribed are identified by a negative diagonal location value. For example if u 3 and u 5 are prescribed displacement components in the test example. or GSDLT. 15 ] (26. 8.4) This array is complemented by a (N + 1) integer array p that contains addresses of diagonal locations. K 34 . which is described later in this Chapter.10) where y and z are intermediate vectors. this array was called the Global Skyline Diagonal Location Table. The array has N + 1 entries. (26. 8. In Fortran it is convenient to dimension the diagonal location array as p(0:n) so that indexing begins at zero. 0. §26. (26. In C this is the standard indexing. then p : [ 0. because fill-in in the factorization process will not occur outside the envelope. D is a nonsingular diagonal matrix. 26–6 . §26. −5. K 44 . K 55 . Solution Once K has been factored. 1.1. 1. 15 ] (26. 2. (26. K 46 . K 22 . 5.2. For the example matrix: p: [ 0. −9. In the first stage. the skyline-stored symmetric stiffness matrix is factored as K = LDU = LDLT = UT DU.2. This factorization is carried out by Mathematica module SymmSkyMatrixFactor. The original matrix is overwritten by the entries of D−1 and U. K 66 ] (26.5) In the previous Chapter.7) where L is a unit lower triangular matrix. 0. which is described later. the solution u for a given right hand side f is obtained by carrying out three stages: Forward reduction : Lz = f. 2. K 24 . 0. No pivoting is used in the factorization process. Factorization The stiffness equations (26.8) Diagonal scaling : Dy = z. and U and L are the transpose of each other. K 33 . details may be followed in the program implementation.1) are solved by a direct method that involves two basic phases: factorization and solution. These stages are carried out by Mathematica modules SymmSkyMatrixVectorSolve.6) Remark 26. K 16 . The (i + 1)th entry of p has the location of the i th diagonal entry of K in s.2.26–6 Chapter 26: SOLVING FEM EQUATIONS The key observation is that only the entries in the skyline template need to be stored. 9.3. K 56 . To store these entries it is convenient to use a one-dimensional skyline array: s: [ K 11 . §26. and s is the array of skymatrix entries. §26. In principle pivoting should be used during the factorization of A to forestall possible numerical instabilities. MultiFreedom Constraints (MFCs) are treated with Lagrange multipliers. For example. Treating MFCs with Lagrange Multipliers In Mathematica implementations of FEM. is of order numdof+nummul.3.26–7 §26.6. The multiplier-augmented master stiffness equations are    u f K CT = (26. A SkySolver Implementation The remaining sections of this revised Chapter describe a recent implementation of the skyline solver and related routines in Mathematica. but it may also contain exact integers or factions.3. where C and g are given. by placing the λ at the end such difficulties will not be encountered if K is positive definite. There is one multiplier for each constraint.11).1. A can no longer be positive definite. let the nummul>0 MFCs be represented in matrix form as Cu = g. The multipliers are placed at the end of the solution vector. and let the nummul multipliers be collected in a vector λ.2. Such a representation consists of a list of two numeric objects: S = { p. However.13) Here p=GSDLT is the Global Skyline Diagonal Location Table introduced in §11. s } (26. suppose that the numerical entries of the 6 × 6 skymatrix (26.11) C 0 λ g or Ax = b. Specifically.14)  44 46     55 56 symm 66 26–7 . called a stiffness-bordered matrix. The stiffness bordered matrix is also stored in skyline form. The main difference with respect to the no-MFC case is that. This array usually consists of floating-point numbers.12) where the symmetric matrix A. Pivoting can have a detrimental effect on solution efficiency because entries can move outside of the skyline template. Skymatrix Representation In what follows the computer representation in Mathematica of a symmetric skymatrix will be generally denoted by the symbol S.10) are actually   11 13 16 22 0 24 0     33 34 0   K= (26. and the constraints are linearly independent (that is. (26.4. because of the configuration (26. as long as the skyline array is properly constructed as described in the previous Chapter. arranged as described in the previous section. Thus pivoting is not necessary. This has been based on similar Fortran codes used since 1967. or even symbolic entries. C has full rank). and the previous solution procedure applies.3 A SKYSOLVER IMPLEMENTATION §26. row. d=a[[jj]].55. s= { 11.55. v[[k]]=0.Take[v. row[[i]]+=d.34. Continue[]].0.Min[n. n=Length[p]-1.jj.n}].a}=S.k]-1.a.row}. v=Table[0.l.8. row[[i]]=a[[ii]]^2. row=Table[0.Take[v.26–8 Chapter 26: SOLVING FEM EQUATIONS Cell 26.n. row[[j]]+=d].0.{jmj+1.0.jk.24.8. ij=jmj+k. s }. {j.34.d.{1. Continue[]]. d-=Take[a. marked with a *. Return[{{p. {j. using the symbols (26. (26.2. Continue[]].0. s=Max[row].66 }. fail=j. They are intended for a more advanced course.jj. (26. Do [ii=p[[i+1]].ij. fail=0.] 26–8 . ii=p[[i+1]]. jk=jj-jmj. SymmSkyMatrixRowLengths[S_]:= Module[ {p.13. row=SymmSkyMatrixRowLengths[S].1.j.46.24.jk-1}].{ii-m. Do [If [p[[j+1]]>0. Return[Sqrt[row]].15 }. a[[jj]]=1/d.2. v[[k]]-=Take[a.1.m. S= { p.33.33.9. If [ii<0.1. n=Length[p]-1.k.56. a[[jj]]=Infinity.a}=S.n.13) is p= { 0.66 } }.{n}].13. {i. {p.46.i]-1}].ii-1}].44.5. d=a[[m+j]]^2.56.16) [The remaining sections on details of skyline processing logic.16. m=Min[ii-Abs[p[[i]]]. If [Abs[d]<tol*row[[j]]. Do [i=j-jk+k.v}.5. Its Mathematica representation. will not be covered in class.j.ii.i. jmj=Abs[p[[j]]].0.d. {k.15 }. m=ii-i.44.Max[1.fail}] ].Abs[p[[i]]]-m+1]. If [jj<0|row[[j]]==0.tol_]:= Module[ {p.k-1}].16.{n}].a}.jmj+jk-1}].n}].a.s. Do [jj=p[[j+1]].ii.0.fail.22.jk-1}]. {p.9. If [ii<0.{ 11.1.15) or more directly S={ { 0.jmj. v[[k]]=a[[ij]].22. a[[ij]]=v[[k]]*a[[ii]].i. ]. Break[] ].1.1 Factorization of a Symmetric SkyMatrix SymmSkyMatrixFactor[S_.m.{k-m. 1. du 26–9 . Print["Assumed x=".b].2 Factorization Test Input ClearAll[n]. n=5. tol should be set to zero. Print["fail=". x=Table[{N[i].b].26–9 §26.Eigenvalues[SymmSkyMatrixConvertToFull[Sr]]].s }. where d j is the computed j th diagonal entry of D. The factorization aborts if. SeedRandom[314159]. If the skymatrix entries are exact (integers..Round[Random[]*i]]]. The module is invoked as { Sf.2. SymmSkyMatrixLowerTriangleMap[Sr].3 A SKYSOLVER IMPLEMENTATION Cell 26.fail } = SymmSkyMatrixFactor[S. §26. fractions or symbols).1.fail}=SymmSkyMatrixFactor[Sr.3. Sf is the computed factorization of S.n}]. factors a symmetric skymatrix into the product LDU where L is the transpose of U.tol] The input arguments are S The skymatrix to be factored. x=SymmSkyMatrixColBlockSolve[F.1. tol Tolerance for singularity test. In this case exact singularity is detectable.b].^(-12)]]]. The appropriate value of tol depends on the kind of skymatrix entries stored in s.10.(-1)^i*N[n-i]}. S={p. when processing the j-th row. Sr=SymmSkyMatrixLDUReconstruct[S]. *Skymatrix Factorization Module SymmSkyMatrixFactor. Print["fail=". Print["F=". It is a two-object list { p.F]. SymmSkyMatrixLowerTrianglePrint[Sr]. d j ≤ tol ∗ r j .{i.x]. Print["eigs=".fail].{i.1. If [fail!=0. a=Table[1.{i.*) Print["Computed x=".x//InputForm]. b=SymmSkyMatrixColBlockMultiply[Sr. b=SymmSkyMatrixRowBlockMultiply[Sr.n}]. No pivoting is used. Abort[]]. p=Table[0.x]. The outputs are: Sf If fail is zero on exit.3.{n+1}]. Print["Mean Band=".*) Print["b=Ax=". and the factorization aborts only on that condition. (*x=Transpose[x].Min[i. and r j is the Euclidean norm of the j th skymatrix row. Print["Reconstructed SkyMatrix:"].N[p[[n+1]]/n]]. see previous subsection.p[[n+1]]}]. If the skymatrix entries are floating-point numbers handled by default in double precision arithmetic.a}. stored as the two-object list { p. Print[Timing[{F. Do[p[[i+1]]=p[[i]]+ Max[1.. listed in Cell 26. tol should be set to 8× or 10× the machine precision in that kind of arithmetic. (*x=SymmSkyMatrixRowBlockSolve[F. Print["Factor:"]. SymmSkyMatrixLowerTrianglePrint[F].x].fail]. fail A singularity detection indicator. 3.0000 1.}.26–10 Chapter 26: SOLVING FEM EQUATIONS Cell 26.}} {0. 12. {3..0000 1.}. 1.. 5..3 Output from Program of Cells 26. {2..}.. 8}.}. {5..0000 1......0000 3. 3. 1.. {1. In this case Sf returns the aborted factorization with ∞ stored in d j .. 1. 0}} F={{0.9563. {3. 1. 2.0000 Row 5 1.0000 Col 3 Col 4 Col 5 2. 3.. -4. 1.}.. 1.6 Reconstructed SkyMatrix: Row Row Row Row Row 1 2 3 4 5 Col 1 1.}} }. {5. 2.}. -2.661739. {5. If fail returns j>0.. 3. 0.. and of U in its strict upper triangle.0000 1... {22. 2..0000 Computed x={{1. 8}. 1.}.. A zero value indicates that no singularity was detected. 0}} b=Ax={{1. 1. 6. 1. 1. 1..0000 Row 4 1. 1. 1. 1. 15. 1. 3.. {1. {2.}.0000 Col 2 1.172909} Assumed x={{1. 26–10 .0000 1.0000 Row 2 1. 3.0000 1 2 3 4 5 1 + 2 + 3 + + 4 + 5 + + + eigs={3. {4..}} fail=0 Factor: Col 1 Col 2 Col 3 Col 4 Col 5 Row 1 1.0000 1... 0.. where du stores the entries of D−1 in the diagonal locations. 4.}}.. -4.. 4. {{{0. 0. 5. -1. 3. -4.... 1. 3.}. -1. {9.0000 Row 3 1. the factorization was aborted at the j-th row... {4.. 6.}..0000 1.2 Mean Band=1. 1.. 3.. 3.. 1..}.1 and 26.20906. 3. 1... 1.. 3. {13.. -2.0666667 Second.}. 1.. 3. Continue[]]. bi=x[[i]].1. {i.26–11 §26. k=i-ii+Abs[p[[i]]]+1.If [ii>=0.n}]. x[[i]]-=Take[a. x[[j]]-=a[[ii+m]]*bi. following the factorization of the symmetric skymatrix A by SymmSkyMatrixFactor. x[[i]]=0.14) is shown in Cells 26. x=b. b The right-hand side vector to be solved for. The outputs are: x The computed solution vector. If [m<0. {p. Do [ii=p[[i+1]]. Do [jj=p[[j+1]]. {j. Continue[]].{imi+1.x}.i.n. One way to do that is to call SymmSkyMatrixVectorSolve repeatedly. ii=-ii. The modules that print and produce skyline maps used in the test program are described later in this Chapter. Do [ x[[i-j]]-=a[[ii-j]]*x[[i]]. Prescribed solution components return the value of the entry in b. m=ii-imi-1.i-1}]. If [bi==0. The module is invoked as x = SymmSkyMatrixVectorSolve[Sf. if m right hand sides are collected as columns of a rectangular matrix B. {j. Continue[]].bi. {i.4 Solving for a Single RHS SymmSkyMatrixVectorSolve[S_.n}]. *Solving for One or Multiple RHS Module SymmSkyMatrixVectorSolve. m=j-i. If [ii<0.a}=S. x[[i]]=b[[i]].b_]:= Module[ {p.1. If [ij>Abs[p[[j]]].4.imi+m}].1. If [n!=Length[x]. Continue[]].n}].2 and 26.3.m. listed in Cell 26.n. stored as a single-level (one dimensional) list. imi=Abs[p[[i]]]. m=ii-Abs[p[[i]]]-1.n}]. Break[]]. Alternatively.1. If [ii<0. A test of SymmSkyMatrixFactor on the matrix (26. If [jj<0. {i.jj. x[[j]]-=a[[ij]]*bi].3. Sometimes it is necessary to solve linear systems for multiple (m > 1) right hand sides. module SymmSkyMatrixColBlockSolve may be invoked as 26–11 .3 A SKYSOLVER IMPLEMENTATION Cell 26.a. n=Length[p]-1. Do [ii=p[[i+1]].1. stored as a single-level (one-dimensional) list. Do [ii=Abs[p[[i+1]]]. ij=jj-m.k. solves the linear system Ax = b for x.-1}]. " SymmSkyMatrixVectorSolve"]. Do [ii=p[[i+1]].3.Take[x. the known value must be supplied in this vector. Return[Null]]. If the i-th entry of x is prescribed. Continue[]].m}]. x[[i]]*=a[[ii]]. §26.{i-m. {i.k. Return[x] ].b] The input arguments are Sf The factored matrix returned by SymmSkyMatrixFactor. Print["Inconsistent matrix dimensions in".j.ii. r]]. {p.x[[j.If [ii>=0. m=j-i. m=ii-Abs[p[[i]]]-1.26–12 Chapter 26: SOLVING FEM EQUATIONS Cell 26. If [n!=Dimensions[x][[2]]. Do [jj=p[[j+1]]. If [ii<0.1.-1}]. Do [ii=Abs[p[[i+1]]]. Do[x[[r.{r.r]]*=a[[ii]].m. m=ii-imi-1.m}].1.nrhs}]. {j. {r.1. {i. {j. If [jj<0. m=ii-Abs[p[[i]]]-1. If [ij>Abs[p[[j]]].j]]-=a[[ij]]*bi].i.If [ii>=0. {r. If [m<0. Do [ii=p[[i+1]].nrhs}].1. Return[Null]]. Do [ii=p[[i+1]].k.a}=S. ij=jj-m.Continue[]].1.5 Solving for a Block of Righ Hand Sides SymmSkyMatrixColBlockSolve[S_. x=b. m=ii-imi-1. Do [ Do [ x[[i-j.x[[j.1.Continue[]]. Do[x[[i.i]]. If [ii<0. {i.m. imi=Abs[p[[i]]]. Return[Null]]. {i.r]]-=a[[ii+m]]*bi.i. Do[x[[r.n.n.x}. {i.b_]:= Module[ {p.n.k.m}].nrhs}]. Do[x[[i.i-m+j-1]]. Do [ii=p[[i+1]].a.n}].j. k=i-ii+Abs[p[[i]]]+1. n=Length[p]-1.i]]*=a[[ii]].r]]=0.nrhs}].n}]. Continue[]].x}.r.{r. If [ii<0. Continue[]].k. If [m<0.m}]. 26–12 .i]].{r. {j. n=Length[p]-1.r]]-=a[[ij]]*bi]. Return[x] ]. Continue[]]. Do [bi=x[[r.nrhs}].bi. {i. Do [bi=x[[i.nrhs}].a.jj. " SymmSkyMatrixBlockRowSolve"].ii.1.r]]=b[[i. SymmSkyMatrixRowBlockSolve[S_.ii.nrhs}]. Do [ii=Abs[p[[i+1]]]. Do [ Do [ x[[i.n}].i]]=0. If [ij>Abs[p[[j]]].Continue[]]. {p. Print["Inconsistent matrix dimensions in".1. Do [ii=p[[i+1]].j.1. nrhs = Dimensions[x][[2]].1. {r.1.1.n.r]]-=a[[ii-j]]*x[[i. Continue[]]. Do [ii=p[[i+1]].{r. {r. Continue[]].1.i]]-=a[[imi+j]]*x[[r. Print["Inconsistent matrix dimensions in". k=i-ii+Abs[p[[i]]]+1.nrhs}].-1}].m}].i-j]]-=a[[ii-j]]*x[[r. Break[]]. If [bi==0. Do [ Do [ x[[r. If [ii<0.n}]. If [n!=Dimensions[x][[1]].1.k.r]]. {i. Do [jj=p[[j+1]]. {j. imi=Abs[p[[i]]]. If [bi==0.n}]. " SymmSkyMatrixBlockColSolve"]. ii=-ii.r]]-=a[[imi+j]]*x[[i-m+j-1. x=b.n}]. {r. Do[x[[r.r]]. {i.nrhs}].Continue[]].1.b_]:= Module[ {p.n}]. Do [ii=p[[i+1]].i]].n}].r]].nrhs. {i. m=j-i.a}=S.1. {r.1. Do [ Do [ x[[r.1.i]]=b[[r. Do[x[[i. Continue[]].1. Break[]]. {j.1. ii=-ii.1. nrhs = Dimensions[x][[1]]. x[[j. x[[r.nrhs}]. Return[x] ].1.r.r]]-=a[[ii+m]]*bi.nrhs}]. {r.nrhs. ij=jj-m. If [jj<0.bi. {r.1. {j.jj.1.nrhs}]. SymmSkyMatrixLowerTriangleMap[Sr]. Its arguments are the skymatrix S and the vector x.n}]. S={p. If [m<=0. b=Table[a[[ Abs[p[[i+1]]] ]]*x[[i]]. {i.Take[x. Return[b] ].m.x]. This module is listed in Cell 26.i-1}]. " SymmSkyMatrixVectorMultiply"].{i-m. The function returns Sx in b. There is a similar module SymmSkyMatrixRowBlockSolve.18) 26–13 . m=ii-Abs[p[[i]]]-1.a}=S.x_]:= Module[ {p. Print["Mean Band=".ii-1}]. Return[Null]].a}.1.{n+1}]. If [n!=Length[x].a.3 A SKYSOLVER IMPLEMENTATION Cell 26.p[[n+1]]}].ii.n}].j. The main difference is that B and X are matrices (two-dimensional lists) with the righ-hand side and solution vectors as columns. The input arguments and function returns have the same function as those described for SymmSkyMatrixVectorSolve. b[[i]]+=Take[a.6.{i.1. Sr=SymmSkyMatrixLDUReconstruct[S].b]. (* ClearAll[n].Continue[]]. notlisted here. Do[p[[i+1]]=p[[i]]+ Max[1.1. x=Table[1. n=10. SeedRandom[314159].{k.n}]. which solves for multiple right hand sides stored as rows of a matrix.1. Do [ii=Abs[p[[i+1]]].N[p[[n+1]]/n]]. {p. p=Table[0.k. §26. n=Length[p]-1. *Matrix-Vector Multiply For various applications it is necessary to form the matrix-vector product b = Sx (26.17) where S is a symmetric skymatrix and x is given. Do [b[[i-k]]+=a[[ii-k]]*x[[i]].{i.{ii-m..4..*) X = SymmSkyMatrixVectorSolve[Sf.Min[i.n}].26–13 §26.6 Multiplying Skymatrix by Individual Vector SymmSkyMatrixVectorMultiply[S_. Print["b=Ax=". which is listed in Cell 26.b}.1. Print["Reconstructed SkyMatrix:"].m}].{i. Print["Inconsistent matrix dimensions in". This is done by module SymmSkyMatrixVectorMultiply.1.3. a=Table[1. b=SymmSkyMatrixVectorMultiply[Sr. Module SymmSkyMatrixColBlockMultiply implements the multiplication by a block of vectors stored as columns of a rectangular matrix X: B = SX (26.i. SymmSkyMatrixLowerTrianglePrint[Sr].B] to provide the solution X of SX = B.Round[Random[]*i]]]. {i.n.5. 3. {r. " SymmSkyMatrixRowBlockMultiply"]. Print["Inconsistent matrix dimensions in".m. Return[Null]].r]].26–14 Chapter 26: SOLVING FEM EQUATIONS Cell 26.r]]. Continue[]]. The print format resembles the configuration depicted in Section 26.j.r]]=a[[ii]]*x[[i. Do [b[[i. {r.1.5. Do [b[[r. Do [j=i-k.ii. {k.nrhs. {p.x_]:= Module[ {p.a. Return[b] ].1.{nrhs}].i]]. " SymmSkyMatrixColBlockMultiply"].i]]+=aij*x[[r. m=ii-Abs[p[[i]]]-1.n.1.m}].nrhs.j]]+=aij*x[[r. b=Table[0. SymmSkyMatrixRowBlockMultiply[S_.j.{n}. There is a similar module SymmSkyMatrixRowBlockMultiply. Is is invoked as SymmSkyMatrixUpperTrianglePrint[S] where S is the skymatrix to be printed.7 Multiplying Skymatrix by Vector Block SymmSkyMatrixColBlockMultiply[S_.b}. prints a symmetric skymatrix in upper triangle form.1. {i. Continue[]].1. aij=a[[ii-k]].1. Do [b[[i.8. Print["Inconsistent matrix dimensions in". Do [b[[r.ii.1.7.1.b}. aij=a[[ii-k]].r.j]]. listed in Cell 26. Do [ii=Abs[p[[i+1]]].k. b=Table[0. If [n!=Dimensions[x][[1]].r]]+=aij*x[[j.x_]:= Module[ {p. Return[Null]].i.aij. Do [j=i-k.k. m=ii-Abs[p[[i]]]-1. {i.{nrhs}.7. If [n!=Dimensions[x][[2]].aij. If [aij==0. Return[b] ].nrhs}].{n}]. which postmultiplies a vector block stored as rows.r.a}=S.a. b[[r. n=Length[p]-1. The function returns SX in B.i]].r]]. {k.m. For an example of use see Cells 262-3. nrhs = Dimensions[x][[2]]. n=Length[p]-1. This kind of print is useful for program 26–14 .i]]=a[[ii]]*x[[r.m}]. nrhs = Dimensions[x][[1]].nrhs}]. Do [ii=Abs[p[[i+1]]].nrhs}]. §26. also listed in Cell 26.1. b[[j.a}=S. *Printing and Mapping Module SymmSkyMatrixUpperTrianglePrint. If [aij==0. This module is listed in Cell 26. {p.r]]+=aij*x[[i. {r. {r.n.i.n}]. Its arguments are the skymatrix S and the rectangular matrix X.n}].nrhs}]. produces a map of its argument. there is module SymmSkyMatrixLowerTriangleMap which is also listed in Cell 26.26–15 §26. negative or zero.19) in which L = U .3. called maps. Sometimes one is not interested in the actual values of the skymatrix entries but only on how the skyline template looks like. The corresponding Fortran or C implementations would be simpler because those languages provide much better control over low-level display. As in the case of the print module. This is primarily due to the inadequacies of Mathematica in handling tabular format output. and U and D−1 in the second case. . or S = LD−1 U (26. respectively.9. Their argument is a factored form of S: U and D in the first case.10. This module is also listed in Cell 26. §26.5 There is a similar module called SymmSkyMatrixLowerTrianglePrint. listed in Cell 26. Entries outside the skyline template are blank. 26–15 . suppose that U. These modules are listed in Cell 26.3 A SKYSOLVER IMPLEMENTATION development and debugging although of course it should not be attempted with a very large matrix. D (or D−1 ) are given.8.6. Modules SymmSkyMatrixLDUReconstruction and SymmSkyMatrixLDinvUReconstruction perform those operations. More specifically. which displays the skymatrix entries in lower triangular form. *Reconstruction of SkyMatrix from Factors In testing factorization and solving modules it is convenient to have modules that perform the “inverse process” of the factorization.9. depending on whether the value is positive. Such displays.and 0. Module SymmSkyMatrixUpperTriangleMap. can be done with just one symbol per entry. It is invoked as SymmSkyMatrixUpperTriangleMap[S] The entries within the skyline template are displayed by symbols +. and the problem is to reconstruct the skymatrix that have them as factors: S = LDU. T 5 Computer oriented readers may notice that the code for the printing routine is substantially more complex than those of the computational modules. c="*"].j.c. 4.1.Goto[cycle]].TableSpacing->{0. Sr={{0. n=Dimensions[p][[1]]-1.jend}]. t=Table[" ". If[jref<n.1. kc=jend-jref.ii.26–16 Chapter 26: SOLVING FEM EQUATIONS Cell 26.i.jt. {i. {j.ToString[PaddedForm[i.c="*"]. {k.j1. Print[" "]. jbeg=jref+1."Col".j.k+1]]=PaddedForm[a[[ij]]//FortranForm.Row}. {p.1]]=StringJoin[c.a}=S.cycle. j=jref.c="*"]. 7. jref=0. it=1. {j.kr.m."Row".c=" ".n}].c="*"].it. Do [If [p[[j+1]]>0. j1=Max[i-m.kc.cycle.TableAlignments->{Right. it=1... kcmax=5.i.c. SymmSkyMatrixUpperTrianglePrint[S_]:= Module[ {p.8 Skymatrix Printing SymmSkyMatrixLowerTrianglePrint[S_]:= Module[ {p. kcmax=5.jbeg.4}]. jend=Min[jref+kcmax. If [ij<=Abs[p[[j]]].Right}.TableAlignments->{Right. ]. kr=j2-j1+1.jbeg.jend.j-jref+1]]=StringJoin[c. jref=0.TableSpacing->{0..{kc+1}]. t=Table[" ".a. Print[" "]. If [kr<=0.Right}.ToString[PaddedForm[j.4}].. If[jref<n.{n-jref+1}.}}.1.c=" ".kc}]. {p. Print[TableForm[Take[t. kc=jend-jref. If [p[[i+1]]>0. ].n.jt++]]=PaddedForm[a[[ij++]]//FortranForm. t[[it. Print[TableForm[Take[t. 2.{7. t[[1.n]. 1.{kc+1}]. If [j<i.jbeg.{7. TableDirections->{Column. Do [j++. jbeg=jref+1.SymmSkyMatrixUpperTrianglePrint[Sr].it]. 3.jref.a}=S.jend. t[[it."Row".jend}]. it++. Label[cycle]. jt=j1-jbeg+2. Do [it++.kcmax. Do[t[[it. jref=jend."Col". Do [ii=Abs[p[[i+1]]].j2. n=Dimensions[p][[1]]-1. ij=j1+ii-i. {1.ij. TableDirections->{Column.3]]].3]]].j-jref+1]]=StringJoin[c.3]]]. If [p[[i+1]]>0.3]]]. 6}. 23.jref.a.ToString[PaddedForm[i.c=" ".m. t[[it.{j. Continue[]].2}]].it. 97.jbeg]. Label[cycle].Goto[cycle]].n.kc. m=ii-Abs[p[[i]]]-1. SymmSkyMatrixLowerTrianglePrint[Sr].jend}].{jend+1}.t}.kr}].. 26–16 .j2.2}]]. jref=jend.jend].j2=Min[i.jj.ToString[PaddedForm[j. Continue[]].t}. jend=Min[jref+kcmax.n].kcmax.jbeg.1]]=StringJoin[c. t[[1.k.Row}.j1. Continue[]].ij.c=" ". {i.it].jbeg. ij=Abs[p[[j+1]]]+i-j. Do [If [p[[j+1]]>0. it++.jref.kc. If [p[[i+1]]>0. {j. c=" 0". Do[If[p[[j+1]]<0.jbeg. kr=j2-j1+1. {j. jbeg=jref+1. n=Dimensions[p][[1]]-1. If[jend>99.n]. If [ij<=Abs[p[[j]]].a}=S. m=ii-Abs[p[[i]]]-1. it++.jend}].k.j.2]]. {p. it++.c=" -"].t[[it.10]].jend}]]. ij=j1+ii-i.jend}]].Row}.a.{kc+1}]. it++.j-jref+1]]="*"]. Do [m=Floor[j/1000].kr}]. it++.10]]]. ij=Abs[p[[j+1]]]+i-j. {j.it]. it++.j-jref+1]]=ToString[Mod[m.10]]]. If[jref<n.m.c="*"].ij. If[jend>99.n.a}=S. t[[it.kcmax.jbeg].cycle.ij. t=Table[" ".jend}]]. If [itop>=3.c=" -"].1]]=StringJoin[ToString[PaddedForm[i.itop=5]. If[jref<n. SymmSkyMatrixUpperTriangleMap[S_]:=Module[ {p. ].j-jref+1]]=ToString[Mod[j. jref=0.TableSpacing->{0. Do [it++.Goto[cycle]].TableAlignments->{Right.jend}]].1.jt.10]]]. {j. it++.jbeg. Do [m=Floor[j/100].itop=3]. jend=Min[jref+kcmax. Do [ c=" 0".j-jref+1]]=ToString[Mod[m. If[m>0. If[jend>9. it=0.jend.jbeg.j2=Min[i. 26–17 .kcmax.jbeg. If [itop>=5. t[[it. If[a[[ij]]>0.c=" ". Do[t[[it.t}.jbeg. If[a[[ij]]>0.3 A SKYSOLVER IMPLEMENTATION Cell 26.t[[it.jend}]]. If[m>0.jend}]]. If [itop>=4.c. If [itop>=4.jbeg.i. If [itop>=3. If[a[[ij++]]<0.jbeg.{n-jref+itop}.TableSpacing->{0. Do [j++.{jend+itop}.c=" +"].26–17 §26. Continue[]].it]. it++.i. jt=j1-jbeg+2. t=Table[" ".t[[it. If[m>0.j1. it=0.itop. Do[If[p[[j+1]]<0.n}]. Continue[]].j-jref+1]]=ToString[Mod[m.{j.it. {i.t[[it.t}.n.j-jref+1]]=ToString[Mod[m. Label[cycle]. jend=Min[jref+kcmax.jbeg. If[jend>999.c. TableDirections->{Column.j-jref+1]]=ToString[Mod[m.kc. If[jend>9.t[[it. Label[cycle].jend}].it.0}]]. Do [m=Floor[j/1000].jbeg.Row}. Do [m=Floor[j/10]. Do [m=Floor[j/10]. TableDirections->{Column. If[m>0.0}]].jbeg. Print[" "].jend}].1. {p.10]]. j=jref. If[jend>999.Goto[cycle]]. If[a[[ij++]]<0.10]]]. Continue[]]. If[m>0.ii.j-jref+1]]=ToString[Mod[j.jt++]]=c.10]]].jend}].c=" ".Right}.1]]=StringJoin[ToString[PaddedForm[i.jbeg.jbeg. kc=jend-jref.itop=4]. {j.t[[it. {i.j2.a.{j. If[m>0. If [kr<=0.jend.jend].j-jref+1]]=ToString[Mod[m.2]].{j. {k. {j. it++. j1=Max[i-m. jref=jend. kcmax=40.TableAlignments->{Right.itop=5]. If [p[[i+1]]>0.1.j1.c="*"]. Print[" "].Right}.9 Skymatrix Mapping SymmSkyMatrixLowerTriangleMap[S_]:=Module[ {p. itop=2.{j. Print[TableForm[Take[t.jbeg.itop=4]. Do [m=Floor[j/100]. it++.c]. t[[it. ].{kc+1}]. jref=0.cycle. t[[it.kc}].kr.itop. kcmax=40. Do [ii=Abs[p[[i+1]]].c].j2. If [j<i. Print[TableForm[Take[t.j.t[[it. kc=jend-jref.m.j-jref+1]]="*"].jref. jref=jend.n].k+1]]=c.jj. jbeg=jref+1. n=Dimensions[p][[1]]-1. it++.10]]]. {j.t[[it. itop=2. Do[t[[it.jend}]. If [itop>=5.itop=3].c=" +"]. 56. because Mathematica built-in eigensolvers require that the matrix be supplied in full storage form.1.0.16. a=ldu.{ii-m+1.7. v[[k]]=0.n}].j. Continue[]]. a=ldu.11 lists three miscellaneous modules.{n}]. jj=p[[j+1]].ldu}=S.1.ii-1}].k]. v[[k]]=ldu[[ij]]/ldu[[ii]]]. If [i!=j. Print[Sr//InputForm]. Continue[]].0.26–18 Chapter 26: SOLVING FEM EQUATIONS Cell 26. Cell 26.n}].66}.ldu.j.{k-m+1. If [ii<0. m=Min[ii-Abs[p[[i]]].33. i=j+ij-jj. ii=p[[i+1]].ii-1}]. s={11.1. Continue[]]. which converts its skymatrix argument to a fully stored symmetric matrix. SymmSkyMatrixLDinvUReconstruct[S_]:= Module[ {p.8. If [ii<0. §26.ii.22. Return[{p.n. {p. ii=p[[i+1]].a.2. This is useful for things like a quick and dirty computation of eigenvalues: Print[Eigenvalues[SymmSkyMatrixConvertToFull[S]]].Take[v. {j.46.ldu. {j. ]. v[[jk]]=1/ldu[[jj]].k]. Print[SymmSkyMatrixFactor[Sr. a[[ij]]= v[[k]].v. S={p. jk=jj-jmj.9. Sr=SymmSkyMatrixLDinvUReconstruct[S]. The most useful one is probably SymmSkyMatrixConvertToFull. {k.jk.1.ij. ].a.jj. a[[ij]]= v[[k]].i. jk=jj-jmj.jk}]. Do [jmj=Abs[p[[j]]].i. Do [jmj=Abs[p[[j]]]. v=Table[0. n=Length[p]-1. {p.ldu}=S. i=j+ij-jj.ii.m}.13. If [i!=j.{ii-m+1. Return[{p.k.44.a}].15}.n.k-1}]. n=Length[p]-1.24.s}.Take[v.0.jmj. v=Table[0.jmj. Continue[]].55. Do [ij=jmj+k.k. p={0. *Miscellaneous Utilities Finally.m}. m=Min[ii-Abs[p[[i]]]. a[[ij]]+=Take[ldu. v[[k]]=ldu[[ij]]*ldu[[ii]]]. If [jj<0. jj=p[[j+1]]. 26–18 .ij. v[[k]]=0.3. v[[jk]]=ldu[[jj]].{n}]. If [jj<0.jj.0]].a}].k-1}].jk}].v. {k.1.5.{k-m+1.jk. a[[ij]]+=Take[ldu.10 Skymatrix Reconstruction from Factors SymmSkyMatrixLDUReconstruct[S_]:= Module[ {p.34. Do [ij=jmj+k. j]]=a[[jj-k]]. aa[[j.ldu}=S.j]]=1. aa=Table[0. jj=Abs[p[[j+1]]].j.jj-jmj-1}].a}=S. Do [aa[[j.n}].jj-jmj-1}].jj.n}].ldu}=S. {j. Do [jmj=Abs[p[[j]]].j]]=a[[jj]]. Do [jj=Abs[p[[j+1]]]. aa=Table[0.j]]=ldu[[jj-k]].i.{k.k}. jj=Abs[p[[j+1]]].jmj. {j.jj.1. Do [jmj=Abs[p[[j]]]. {p. ].26–19 §26. aa[[j.{n}].j. n=Length[p]-1.{n}. Return[aa].{n}]. SymmSkyMatrixConvertUnitUpperTriangleToFull[S_]:= Module[ {p.n.1. aa=Table[0. SymmSkyMatrixConvertDiagonalToFull[S_]:= Module[ {p. n=Length[p]-1.j.ldu.jmj. {p.k}. ].jmj. ]. Do [aa[[j-k.ldu. Return[aa].11 Miscellaneous Skymatrix Utilities SymmSkyMatrixConvertToFull[S_]:= Module[ {p. aa[[j.1.jj.aa. Return[aa].{k.n}].j]]=ldu[[jj]].{n}].aa.{n}. {j. n=Length[p]-1.n. {p.{n}.3 A SKYSOLVER IMPLEMENTATION Cell 26.1.1.k}. 26–19 .n.aa.j-k]]=aa[[j-k.a. 1 EXERCISE 26. 1. 2. 26–20 . f5 5 Figure 26.1. 7. 1.15). 9}. 2. The only degree of freedom at each node is a translation along x. f1 u 2. 1. which mean that K is singular.6 Show that the entries of D are 1. Hint p = { 0.1. where K is stored as a full matrix to simplify hand work. 1. but hand work is as quick. 5.7). (b) Show K stored as a skyline matrix using a representation like illustrated in (26. Structure for Exercise 26.26–20 Chapter 26: SOLVING FEM EQUATIONS Homework Exercises for Chapter 26 Solving FEM Equations 1 u 1. Why? 6 You can do this with Mathematica using the function LUDecomposition. (c) Perform the symmetric factorization K = LDLT of (26. 3. Hint: the diagonal entries are 1. The element stiffness matrix of each element is 1 −1 (E26. f3 u 4. f4 (1) (2) (3) (4) 2 3 4 u 5. 2. 1 and 0. f2 u 3.1 [A/C:10+10+15] Consider the 4-element assembly of bar elements shown in Figure 26.1) K(e) = −1 1 (a) Assemble the 5 × 5 master stiffness matrix K showing it as a full symmetric matrix. 27 . A Complete Plane Stress FEM Program 27–1 . . . .1. §27.1. . Element Type . . . . . . 27–3 27–3 27–3 27–4 27–4 27–6 27–6 27–8 27–8 27–8 27–9 27–9 27–9 27–10 27–10 27–12 27–12 27–14 27–14 27–15 27–15 27–16 27–16 27–18 . . . . . . §27. . . . . . . . . . .6. . . . . Fabrication Properties . .3. . . . .3. . . . §27. . . . . . .5. . . . Model Display Utility . A Complete Problem Script Cell §27. . . .3. .3. . . . . . . . . Stress Field Contour Plots . Postprocessing §27.5. .2.3.3.5. . . . . . . . . . . . . Introduction §27. . . .3. Node Coordinates . . .1. .3. §27. . . . §27. .3. Model Definition §27. . . . . . . . . .4. .8. . . . . Displacement Field Contour Plots §27. . §27. . . . . . . . . .5. . . . . .2. . §27.4. . .5.3.3. §27. . §27. . §27.4. . . . . . 27–2 . . Analysis Stages §27. .2. . . . . . . . . . . . . . Result Print Utilities . Processing Tasks . . . . . . . . Notes and Bibliography . . . . . . . . . . Animation . . . . . . . §27. .7.3. . .1. . . . . . . . . . . Node Freedom Values . . . .10. Benchmark Problems . . . . . Node Freedom Tags . .3. . . .12. . . . . . . . . . . §27. . . . .3. . . . . . . . .5. . . . .11. . . . . . Model Definition Print Utilities §27. . . . §27. . . . . . . Processing Options . . . . .6. . . . Element Connectivity . . . . . . Processing §27. .27–2 Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM TABLE OF CONTENTS Page §27. Model Definition Script Samples §27. . . Material Properties .4. . . §27. .3. . . . .9. . . . . Plot of the FEM mesh for verification.3. driver program.3 are used. connectivity.1) The element data is broken down into four subsets: type. connnectivity. Analysis Stages As in all DSM-based FEM programs.2 Recovery of plate stresses and bar forces (if bars are present). The script directly sets the problem data structures. §27.3 Assembly of the master stiffness equations Ku = f. (II) processing.27–3 §27.4. starts from the main driver down to more specific modules. Solution of the modified equations for node displacements u. Introduction This Chapter describes a complete finite element program for analysis of plane stress problems. material and fabrication.3. which are listed below by order of appearance:  Geometry data: node coordinates Model definition Element data: type.1 Recovery of node forces including reactions through built-in matrix multiplication f = Ku.3 Print and plotting of results.2. Upon executing the processing steps. Unlike the previous chapters the description is top down. The same Application of displacement BC by a modification method that produces Ku modules described in §21.1. Preprocessing tasks include: I. the nodal displacement solution is available. III. The processing stage involves three tasks: II. The program can support questions given in the take-home final exam. The built-in Mathematica function LinearSolve is used for this task.2 Model definition by direct setting of the data structures. The former are subject to interelement averaging (Chapter 28) to get nodal stresses.3 MODEL DEFINITION §27. Model Definition The model-definition data may be broken down into three sets. This kind of assembler was discussed in §27. The degree of freedom data is broken into two subsets: 27–3 . material and fabrication Degree of freedom (DOF) activity data: force and displacement BCs (27. since those are application problem independent.1 II. The postprocessing stage embodies three tasks: III.e. The plane stress assembler is of multiple element type (MET). III. ˆ = ˆf. Consequently this Chapter serves as an informal users manual. i. and (III) postprocessing.2 II. The preprocessing portion of the plane stress analysis is done by the first part of the problem script. At the minimum this involves producing a mesh picture that shows nodes and element labels. Element types include various plane stress Iso-P models as well as bars. already encountered in Chapters 21-22. each of which has its own data structure.1 I. if they pertain to the analysis of given plane stress problems. the analysis of plane stress problems involves three major stages: (I) preprocessing or model definition. §27. 1(a) illustrates a rectangular steel plate in plane stress under uniform uniaxial loading in the y (vertical) direction. Benchmark Problems Figure 27. These are summarized in Table 27.1(b. numele: number of elements.2. Dimensions refer to the first two level Dimensions of the Mathematica list that implements the data structure. NodeDOFTags. A FEM solution is to be obtained using the two quadrilateral element models (with 4-node and 9-nodes. which are called NodeCoordinates. This problem should be solved exactly by any finite element mesh as long as the model is consistent and stable. u x = −νu y = −νq x/E. NodeDOFValues and ProcessOptions. respectively) depicted in Figure 27. Plane Stress Model Definition Data Structures Long name Short name Dimensions Description NodeCoordinates ElemTypes ElemNodes ElemMaterials ElemFabrications NodeDOFTags NodeDOFValues ProcessOptions nodxyz elenod elenod elemat elefab nodtag nodval prcopt numnod numele numele numele numele numnod numnod <var> Node coordinates in global system Element type identifiers Element node lists Element material properties Element fabrication properties Node freedom tags marking BC type Node freedom specified values Processing specifications x 2 x x x x x <var> <var> <var> 2 2 Notation: numnod: number of nodes (no numbering gaps allowed. This problem is defined in Figure 27. the model-definition input to the plane stress FEM program consists of eight data structures. The main result sought is the stress concentration factor on the hole boundary.2(a). Note that the load q is specified as force per unit area (kips per square inch). Long names are used in user-written problem scripts.c). The exact analytical solution of the problem is1 σ yy = q. thus q has not been integrated through the thickness h.2: a rectangular steel plate dimensioned and loaded as that of Figure 27.c). tags and values. u y = qy/E. §27. such as the symbolic versus numeric processing. σx x = σx y = 0.2(b. 27–4 . A similar but more complicated problem is shown in Figure 27.3. In particular.1(a) but now with a central circular hole.c). ElemFabrications. These options are conveniently collected in a separate data set. These give a guide as to implementation in a low level language such as C. ElemTypes. ElemNodes. <var> variable dimension. In addition there are miscellaneous process options. 1 The displacement solution u y = qy/E and u x = −νu y assumes that the plate centerlines do not translate or rotate. and comparison of this computed factor with the exact analytical value. the two one-quadrilateral-element models shown in Figure 27. Accordingly.1. a condition enfoirced in the FEM discretizations shown in Figure 27.1(b.1 and 27. ElemMaterials.Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM 27–4 Table 27. Short names are used in programmed modules.1. The configuration of these data structures are described in the following subsections with reference to the benchmark problems and discretizations shown in Figures 27. each node has two ) displacement DOFs.1. 0. Those are rare at the level of a full FEM analysis. xy35={1.30. .2 use the N function to insure that property if necessary.6 }.3.3 MODEL DEFINITION y q = 10 ksi (a) B A .0 } }].. . 8 DOFs.3 }.5.{35}]. xy29={5. §27.{ 0. and two oneelement FEM discretizations of its upper right quadrant.0.8.3. 1 bilinear quad B 1 4 C 7 1 2 8 5 J 3 6 9 D Model (II): 9 nodes.1}.2}. xy22={5. . .{n. For Model (I) of Figure 27. 1 (c) 25 kips 100 kips 25 kips q Figure 27.{ 5.3 }. { x N ..15. 1 biquadratic quad Global node numbers shown E F .2.0.. y2 }.0. .0}. .{ 5.2.0 }. Do[NodeCoordinates[[n]]=N[s[[n-14]]*xy15+(1-s[[n-14]])*xy21]. xy15={5.6 }. . 75 kips C (b) 75 kips B 1 C 3 12 in H x E = 10000 ksi ν = 0.. .27–5 §27.1(c): NodeCoordinates=N[{ { 0.6}.{ 5.Sin[Pi/8]}. Coordinate values should be normally be floating point numbers. y1 }.48. . Example 27..{ 5/2. y N } } (27. 27–5 .1. Rectangular plate under uniform uniaxial loading. xy21={Cos[Pi/4].6 }.Sin[3*Pi/8]}. Example 27.{n.1.70. {n.{ 5/2. xy14={Cos[3*Pi/8]. This is a list of node coordinates configured as NodeCoordinates = { { x1 .2(a).0.2) where N is the number of nodes.07.Sin[Pi/4]}. Do[NodeCoordinates[[n]]=N[s[[n-7]] *xy8+(1-s[[n-7]]) *xy14].0.0 }. NodeCoordinates=Table[{0.{ 5.6 }. xy1={0. 18 DOFs.. Nodes must be numbered consecutively and no gaps are permitted. . xy28={Cos[Pi/8]..16..0}.{ 0.6}.. For Model (I) of Figure 27. For Model (II) of Figure 27.21}].0 } }]. 2 Unless one is doing a symbolic or exact-arithmetic analysis.0 }. xy8={2.{ 5.7}]. . Example 27.3 }. xy7={0.{ 0.1(b): NodeCoordinates=N[{ { 0.6}.25 h = 3 in G J 2 D J 10 in 4 D Model (I): 4 nodes.{ 5/2.0}. xy8={2. Do[NodeCoordinates[[n]]=N[s[[n]] *xy1+(1-s[[n]]) *xy7]. using a bit of coordinate generation: s={1.6 }.14}]. Node Coordinates The geometry data is specified through NodeCoordinates.5.0}.1..6}. .{ x2 . 22.27–6 Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM y q = 10 ksi A B C J 12 in H D K x R = 1 in E = 10000 ksi ν = 0. type(2) . Compare.. . .{n. . . for example.. J 32 31 30 29 B 1 (c) 25 kips 100 kips 25 kips C 8 15 Note: internal point of a 9-node quadrilateral is placed at intersection of the medians 2 9 1 16 3 10 22 4 11 17 2 18 12 19 6 13 24 25 20 7 26 14 27 21 28 35 34 33 31 32 5 23 30 29 . This can be extracted.35}]. . .. §27.3.{ numele }]. Element Connectivity Element connectivity information specifies how the elements are connected. These labels are placed into an element type list: ElemTypes = { type(1) ..4. for example. . . but this slight change hardly affects the results.2(b). type Ne } (27. The result of this generation is that some of the interior nodes are not in the same positions as sketched in Figure 27. .{n.25 h = 3 in G E F 10 in .2.{ numele }].2.3. . .29. q Node 8 is exactly midway between 1 and 15 (b) 37. 27–6 . Legal type identifiers are listed in Table 27.5 kips C 15 8 1 1 7 2 9 2 3 10 4 17 11 5 12 16 8 22 18 19 6 13 20 7 26 J 14 21 27 28 35 34 33 23 24 25 . Ne is the number of elements. . Element Type The element type is a label that specifies the type of model to be used. (a) K D Model (I): 35 nodes. 70 DOFs. . 70 DOFs. ..3 This information is 3 Some FEM programs call this the “topology” data. as numele=Length[ElemNodes]..3. Plate with a circular hole and two FEM discretizations of its upper right quadrant. . . no element numbering gaps are allowed.3. . Only a few element numbers are shown to reduce clutter. if ElemNodes is defined first as is often the case. Note: the meshes generated with the example scripts given later differ slightly from those shown above.28}]. 24 bilinear quads K D Model (II): 35 nodes. Do[NodeCoordinates[[n]]=N[s[[n-21]]*xy22+(1-s[[n-21]])*xy28]. ElemTypes=Table["Quad9". 6 biquadratic quads Figure 27. Here numele is a variable that contains the number of elements. where ElemNodes is defined below. mesh in (b) above with that in Figure 27. Do[NodeCoordinates[[n]]=N[s[[n-28]]*xy29+(1-s[[n-28]])*xy35].3) Here typee is the type identifier of the e-th element specified as a character string.. . .5 kips 75 kips B 37. §27. ElemTypes=Table["Quad4". 2.9.2}. which has only one 9-node quadrilateral: ElemNodes={ { 1. .1.4.{e. numbering the elements from top to bottom and from left to right: ElemNodes=Table[{0.8. ElemNodes[[13]]=ElemNodes[[12]]+{2.2.2.1.2.7.8}. may be curved 3-node linear triangle 6-node quadratic triangle (3-interior point Gauss rule) 6-node quadratic triangle (midpoint Gauss rule) 10-node cubic triangle (7 point Gauss rule) RS 4-node iso-P bilinear quad (2 × 2 Gauss rule) RD 4-node iso-P bilinear quad (1-point Gauss rule) RS 8-node iso-P serendipity quad (3 × 3 Gauss rule) RD 8-node iso-P serendipity quad (2 × 2 Gauss rule) RS 9-node iso-P biquadratic quad (3 × 3 Gauss rule) RD 9-node iso-P biquadratic quad (2 × 2 Gauss rule) RS: rank sufficient. 27–7 . as in the 9-node quadrilateral or 10-node triangle. Numbering elements with midnodes requires more care: begin listing corners CCW.1" "Quad8" "Quad8. When elements have an interior node. Element Type Identifiers Implemented in Plane Stress Program Identifier Nodes Model for Description "Bar2" "Bar3" "Trig3" "Trig6" "Trig6.1}. For Model (I) of which has only one 4-node quadrilateral: ElemNodes={ { 1.1}. Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{1.2}. begin listing corners CCW. .0.12}].18}].2.2.2.1. ElemNodes[[19]]=ElemNodes[[18]]+{2.24}].1}. as in the case of the 10-node triangle.6}]. For Model (II) of Figure 27. Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{1.1.2" "Quad9" "Quad9. Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{1.{24}]. Example 27. If element has thirdpoints.1.3.3 MODEL DEFINITION Table 27. ElemNodes[[1]]={1. stored in ElemNodes. .6.0}.{e.1.8. followed by thirdpoints CCW (first thirdpoint is the one that follows first corner). ElemNodes[[7]]=ElemNodes[[6]]+{2. Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{1.5.1. Element boundaries must be traversed counterclockwise (CCW) but you can start at any corner.{e.4) Here enle denotes the lists of nodes of the element e (as given by global node numbers) and Ne is the total number of elements.4. that node goes last.1(c).27–7 §27.9. { enl Ne } } (27.2.0.2.2.4.5 } }. Example 27.2}. RD: Rank deficient.-3" "Trig10" "Quad4" "Quad4. followed by midpoints also CCW (first midpoint is the one that follows first corner when traversing CCW).{e.14.2.2" 2 3 3 6 6 10 4 4 8 8 9 9 bar bar plate plate plate plate plate plate plate plate plate plate 2-node bar element 3-node bar element.1.20.3 } }. which is a list of element nodelists: ElemNodes = { { enl(1) }. { enl(2) }.1}. ElemNodes[[1]]={1.E23 }. §27.E33 } }.0. Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{2. it will not be described here.5) For a plate element.0. . Then the material data is compactly declared by saying Emat=Em/(1-nu^2)*{ { 1.{ E13. Material Properties Data structure ElemMaterials is a list that provides the constitutive properties of the elements: ElemMaterials = { mprop(1) .5. mprop is the stress-strain matrix of elastic moduli (also known as elasticity matrix) arranged as { { E11. it must be specified as a full 3 × 3 matrix.2}.E12.2.{e.10.8.2.E22.2. Note that although this matrix is symmetric.2.{ nu.10.0.2.2. . Then this list can be generated by a single Table instruction upon building the elastic ity matrix. Since the variable thickness case is comparatively rare.2. .0 }.5.{6}]. fprop is the cross section area.{e.6. which are typically declared at the beginning of the problem script. mprop is simply the longitudinal elastic modulus.E33 }.6}].2. An isotropic elastic material is specified by the elastic modulus E and Poisson’s ratio ν. .15. Let numele give the number of elements. If all elements are plates with the same thickness. mprop Ne } (27.2.0.0}.17.2. . For Model (II) of Figure 27.1.{ 0.16.2.E23.1 and 27. fprop Ne } (27.2.4 For a bar element. 27–8 . Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{2. 4 It is possible also to specify a variable thickness by making fprop a list that contains the thicknesses at the nodes.10.2. numbering the elements from top to bottom and from left to right: ElemNodes=Table[{0. as in the example below.3.0. (ii) the plate material is uniform and isotropic.0 }. respectively. For all FEM discretizations in Figures 27.nu.9}. Suppose that values of the elastic modulus E and Poisson’s ratio ν are stored in Em and nu. mprop(2) . ElemNodes[[4]]=ElemNodes[[3]]+{10.0. it would be indeed faster to write down the six nodelists.2.6) For a plate element.10.7. fprop(2) .2(c). Fabrication Properties Data structure ElemFabrications is a list that provides the fabrication properties of the elements: ElemFabrications = { fprop(1) .10}.10.3}].2. this list can be easily generated by a Table instruction as in the example below.{ numele }]. For a bar element.Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM 27–8 Example 27.10. Since this particular mesh only has 6 elements. Example 27.6. A common case in practice is that (i) all elements are plates.3.10.2 all elements are plates of the same isotropic material.3.10.0.(1-nu)/2 } }. ElemMaterials=Table[Emat. assumed constant. §27.{ E12. .0.2}.2. fprop is the thickness h of the plate. 75}.7. 27–9 .{numnod}]. often the quickest way to specify this list is to create with a Table command that initializes it to all zeros. For all FEM discretizations in Figures 27.9.2(a) only 3 values (for the y forces on nodes 1. . NodeDOFTags=Table[{0. §27. Then nonzero values are inserted as in the example below.27–9 §27.3 MODEL DEFINITION Example 27. As before. value y1 }. (* y nodal loads *) §27.29. as in the example below. NodeDOFValues[[8]]={0. (* create and initialize to zero *) Do[NodeDOFTags[[n]]={1.{ tagx2 .7}]. When there are a lot of nodes.{numnod}].8.5}.9. NodeDOFValues=Table[{0. .3. tag y1 }. .0}. Node Freedom Values Data structure NodeDOFValues is a list with the same node by node configuration as NodeDOFTags: NodeDOFValues={ { valuex1 . value y N } } (27. which is stored in variable th.0}. tag y N } } (27.1. For the model (I) in Figure 27.1 and 27.8. { valuex N . Often most of the entries of (27. { tagx N .10. This is typically declared at the start of the problem script.8) are zero.{ numele }] §27. .1}. (* create and initialize to zero *) NodeDOFValues[[1]]=NodeDOFValues[[15]]={0. 8 and 15) will be nonzero: numnod=Length[NodeCoordinates].3.{ valuex2 . tag y2 }.37.8) Here value is the specified value of the applied node force component if the corresponding tag is zero. Processing Options Array ProcessOptions is a list of general processing options that presently contains only the numer logical flag. Example 27. and of the prescribed displacement component if the tag is one. . This is normally be set to True to specify numeric computations: ProcessOptions={ True }. For Model (I) in Figure 27. Then the fabrication data is compactly declared by saying ElemFabrications=Table[th. numele has the number of elements.{n. The configuration of this list is similar to that of NodeCoordinates: NodeDOFTags={ { tagx1 . (* hroller @ nodes 29 through 35 *) This scheme works well because typically the number of supported nodes is small compared to the total number.35}]. Node Freedom Tags Data structure NodeDOFTags is a list that labels each node DOF as to whether the load or the displacement is specified.0}. (* vroller @ nodes 1 through 7 *) Do[NodeDOFTags[[n]]={0. value y2 }.3.7) The tag value is 0 if the force is specified and 1 if the displacement is specified. . If so a quick way to build it is to create it with a Table command that initializes it to zero.2(a): numnod=Length[NodeCoordinates]. Then displacement BCs are inserted appropriately. Example 27.{n.2 all elements are plates with the same thickness h. If digits is specified as a void list: { }. a preset default is used for d and f.2(a) may be plotted by saying aspect=6/5.digits]. One element mesh . Here aspect is the plot frame aspect ratio (y dimension over x dimension). The last argument of the print modules: digits.title. The 4th argument is a plot title textstring. In all cases.4-node quad model". 15 1 5 §27.4 node quad 7 2 9 2 3 3 7 12 13 17 9 14 11 4 16 8 10 4 6 Several print utilities are provided in the plane stress program to print out model definition data in tabular form. Plot2DElementsAndNodes[NodeCoordinates.11.digits]. respectively. To print freedom activity data: PrintPlaneStressFreedomActivity[NodeDOFTags. §27.4 and Figures 27. of Figure 27. Model Display Utility Only one graphic display utility is presently provided to show the mesh.2(a). is optional. To print the element materials and fabrications: PrintPlaneStressElementMatFab[ElemMaterials.f } it specifies that floating point numbers are to be printed with room for at least d digits.aspect.10. for example "Node coordinates". Nodes and elements of Model (I) of Figure 27. with f digits after the decimal point.ElemFabrications. 27–10 .digits].title.True].27–10 Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM §27. title is an optional character string to be printed as a title before the table.1(b. be shown.EleNodes.digits].title. Figures 27. To print the node coordinates: PrintPlaneStressNodeCoordinates[NodeCoordinates. The last two True argument values specify that node labels and element labels. "Plate with circular hole . ElemNodes. Model Definition Script Samples As capstone examples.3. specify "" (two quote marks together). Model Definition Print Utilities 8 1 18 10 22 15 19 5 13 11 16 20 6 14 12 17 25 21 1827 26 28 22 24 23 35 34 33 32 23 24 19 20 21 31 30 29 Figure 27. They are invoked as follows.NodeDOFValues.5 list the preprocessing (model definition) parts of the problem scripts for Model (I) and (II).title. The output of the mesh plot command is shown in Figure 27.3.True. respectively.3.3. To print the element types and nodes: PrintPlaneStressElementTypeNodes[ElemTypes. If set to { d. Mesh plot for Model (I) of Figure 27.c). To eliminate the title.3.12. 2.{}].NodeDOFValues."".ν."". "One element mesh .{}]. numele=Length[ElemNodes].ElemNodes. PrintPlaneStressElementMatFab[ElemMaterials. NodeDOFValues[[4]]={0.True]. aspect=6/5.{}]. PrintPlaneStressNodeCoordinates[NodeCoordinates.0.True. ν=.3}}.4}]. th=3. ν=. aspect=6/5."". 27–11 .0}. ElemTypes= Table["Quad4". PrintPlaneStressNodeCoordinates[NodeCoordinates.6}.5. Nsub=4.0}.aspect.{0.True]. Em=10000.{numnod}]. NodeDOFValues[[1]]=NodeDOFValues[[7]]={0.75}.100}. PrintPlaneStressElementTypeNodes[ElemTypes."".ElemNodes.{5.9.ElemNodes.ν. (* nodal loads *) NodeDOFTags[[1]]={1. th=3. Figure 27. ElemFabrications=Table[th.1. ElemNodes= {{1. NodeDOFValues[[1]]=NodeDOFValues[[3]]={0.3}.{numele}]."".(1-ν)/2}}. (* hroller @ nodes 6. (* Define FEM model *) NodeCoordinates=N[{{0.ElemNodes. {numele}]. ElemNodes= {{1.3.{0.9 *) PrintPlaneStressFreedomActivity[NodeDOFTags.5}}.{numele}].4."".{0.{}]. NodeDOFValues=NodeDOFTags=Table[{0. Em=10000.3}. Figure 27. numnod=Length[NodeCoordinates].ElemFabrications.{6.NodeDOFValues. Emat=Em/(1-ν^2)*{{1. (* vroller @ node 1 *) NodeDOFTags[[2]]={1.6}.1(c).2. {5/2. (* nodal loads *) NodeDOFTags[[1]]=NodeDOFTags[[2]]={1. {numele}].4.{0.ν. {numele}].6.9-node quad".4}].{5.th].{5. (* Define FEM model *) NodeCoordinates=N[{{0."".6}.1}.27–11 §27. ElemTypes= Table["Quad9".1}.0}}].1}.3}. NodeDOFValues=NodeDOFTags=Table[{0.(1-ν)/2}}. ClearAll[Em.3 MODEL DEFINITION ClearAll[Em.{5.{5. (* fixed node 2 *) NodeDOFTags[[4]]={0.0}. (* fixed node 3 *) NodeDOFTags[[6]]=NodeDOFTags[[9]]={0.0.{}].7.ν. ProcessOptions={True}. numele=Length[ElemNodes]. Plot2DElementsAndNodes[NodeCoordinates.6}.0}. ElemMaterials= Table[Emat.{numnod}]. ElemFabrications=Table[th.0}}]. ElemMaterials= Table[Emat.0}. Nsub=4.1(b).0}.{5/2.0}.2 *) NodeDOFTags[[3]]={1. {numele}]. Model definition part of Model (II) of Figure 27. numnod=Length[NodeCoordinates]. Model definition part of Model (I) of Figure 27.ElemFabrications. ProcessOptions={True}. PrintPlaneStressElementMatFab[ElemMaterials.6}.0}.25}.4-node quad".8.1}.0}.{ν. (* hroller @ node 4 *) PrintPlaneStressFreedomActivity[NodeDOFTags.{0. Plot2DElementsAndNodes[NodeCoordinates. "One element mesh ."".25.{}].True.aspect.1.th]. (* vroller @ nodes 1.25.{6.{ν.{5/2.0}. PrintPlaneStressElementTypeNodes[ElemTypes.4.0}. Emat=Em/(1-ν^2)*{{1. ElemMaterials.eletyp_.u.noddis. ElemBarNumbers A list of bar elements if any specified. NodePlateStresses Averaged stresses at plate nodes with a nonzero NodePlateCounts.barele. the plane stress analysis is carried out by calling module LinearSolutionOfPlaneStressModel listed in Figure 27. nodfor=NodePartFlatVector[2. The module returns the following: NodeDisplacements Computed node displacements. Figure 27. A study 27–12 .6. §27. NodeDOFTags. ElemBarForces A list of bar internal forces if any bar elements were specified. Processing Once the model definition is complete.elemat_.barele.nodval.elemat.ProcessOptions].Kmod. ElemNodes .nodpnc.barfor}=PlaneStressBarForces[nodxyz. The module arguments: NodeCoordinates. else an empty list.barfor}.elenod.Kmod]. elefab.u.ElemFabrications.prcopt].nodval_.fmod. If [Length[prcopt]>=1.eletyp. ElemTypes. Kmod=ModifiedMasterStiffness[nodtag. numer=prcopt[[1]]].elemat.eletyp.ElemBarForces}= PlaneStressSolution[NodeCoordinates. ElemMaterials.nodsig.f=Chop[f]].4.1.u].f. If [numer.elenod_. nodtag_. Processing Tasks PlaneStressSolution carries out the following tasks. NodePlateCounts For each node. noddis.4. in node-partitioned form.f].fmod]. {barele. ]. ElemFabrications. NodeDOFTags. A zero count means that no plate elements are attached to that node.elenod. This module is listed in Figure 27. u=LinearSolve[Kmod. else an empty list. number of plate elements attached to that node. K=PlaneStressMasterStiffness[nodxyz. §27.NodeForces. Module to drive the analysis of the plane stress problem.Return[Table[Null. elefab. ElemTypes.NodePlateCounts.ElemNodes. If [numer. ClearAll[K.elefab. in node-partitioned form. If [K==Null.{6}]]].prcopt].numer=True.nodfor.NodePlateStresses.nodfor.noddis. NodeForces Recovered node forces including reactions. f=K. NodeDOFValues and ProcessOptions are the data structures described in the previous section.K].u=Chop[u]]. It assembles the free-free master stiffness matrix K by calling the MET assembler PlaneStressMasterStiffness. f=FlatNodePartVector[nodval]. This module is invoked from the problem driver as {NodeDisplacements.Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM 27–12 PlaneStressSolution[nodxyz_. ElemBarNumbers.NodeDOFValues.6.K.elenod. Return[{noddis.nodpnc. fmod=ModifiedNodeForces[nodtag.7.nodsig.elefab_.prcopt].prcopt_]:= Module[{K. noddis=NodePartFlatVector[2.eletyp. {nodpnc.f].nodsig}=PlaneStressPlateStresses[nodxyz.barfor}].elemat. A=elefab[[e]].1}] ].{i."Quad4."Trig6". Emat=elemat[[e]]. If [type=="Quad8. enl=elenod[[e]].j<=neldof. For [j=i. th=elefab[[e]]. If [type=="Trig10. OKtyp={"Bar2". If [type=="Quad9.{numer. "Quad9. Print ["Wrong node list length. If [OKenl[[j]]!=n. If [type=="Trig6".{numer.elenod_.type]. as u=LinearSolve[Kmod.Emat. If [type=="Trig6."Quad8".2. Ke=PlaneBar3Stiffness[ncoor. Emat=elemat[[e]].th.Emat.ncoor.6"}.numer. Ke=Quad4IsoPMembraneStiffness[ncoor.Ke. Emat=elemat[[e]].Emat. K[[jj. Emat=elemat[[e]]. Ke=Quad8IsoPMembraneStiffness[ncoor.3}] ].th. Emat=elemat[[e]].{numer.enl.{numer.th. If [type=="Trig3"."Quad9". element=". Emat=elemat[[e]].j++.6". If [type=="Trig10".th. th=elefab[[e]].27–13 §27.8.e.2}] ]. " Assembly aborted"].Emat. Emat=elemat[[e]].type.e. K=Table[0.th.Emat.i<=neldof.elemat_.{numer.4. type=eletyp[[e]]. of its code reveals that it handle the multiple element types listed in Table 27.A. th=elefab[[e]]. th=elefab[[e]]. Return[K].{i.th.ii]]=K[[ii.2".4. " element e=".n}]. Return[Null] ].1. These are the same modules used in Chapter 21 for the space truss program. A=elefab[[e]].3.6.prcopt_]:=Module[{numele=Length[elenod].Emat.1. The displacement BCs are applied by ModifiedMasterStiffness and ModifiedNodeForces. Ke=Quad9IsoPMembraneStiffness[ncoor.Emat.eft. th=elefab[[e]]. ].6. th=elefab[[e]]. elefab_. and thus need not be described further.th.OKtyp.-3}] ].{numer}] ]. Emat=elemat[[e]].8.Em. If [type=="Bar3". Emat=elemat[[e]].Emat. Plane stress assembler module. Print["Illegal type:". ncoor=Table[nodxyz[[enl[[i]]]].fmod]. The unknown node displacements u are obtained through the built in LinearSolve function. If [type=="Quad9". numnod=Length[nodxyz]." Assembly aborted"]. Ke=Quad8IsoPMembraneStiffness[ncoor.th. numer=prcopt[[1]].{numer}] ].Em.neldof.j]] ].7. ii=eft[[i]]. If [type=="Quad4"."Trig3".ii.jj.2". Figure 27. Em=elemat[[e]]. eft=Flatten[Table[{2*enl[[i]]-1.-3".{numer. The modules that compute the element stiffness matrices have been studied in previous Chapters and need not be listed here.e.10}. Ke=Trig3IsoPMembraneStiffness[ncoor.{2*numnod}].e<=numele. th=elefab[[e]].e++.K}. Ke=Quad9IsoPMembraneStiffness[ncoor.Emat.Emat. Em=elemat[[e]].{numer.n}]]. th=elefab[[e]].{2*numnod}.2}] ].n. Ke=Trig10IsoPMembraneStiffness[ncoor.Emat. ]."Quad4".A. jj=eft[[j]]. ].3}] ].2". th=elefab[[e]].{numer. Ke=Quad4IsoPMembraneStiffness[ncoor.2*enl[[i]]}. Ke=Trig6IsoPMembraneStiffness[ncoor.6}] ]. If [type=="Quad4."Bar3".3}] ].10. th=elefab[[e]].jj]]+=Ke[[i. Emat=elemat[[e]].4 PROCESSING PlaneStressMasterStiffness[nodxyz_. i."Trig6."Trig10".type]."Quad8.9. Return[Null] ].{numer. For [i=1. The node 27–13 . typically less than 200 equations (it gets extremely slow for something bigger) but it has the advantages of simplicity. Ke=PlaneBar2Stiffness[ncoor.1". OKenl= {2.th."Trig10. th=elefab[[e]].Emat. Ke=Trig10IsoPMembraneStiffness[ncoor.2". {{j}}=Position[OKtyp. This function is of course restricted to small systems.eletyp_. Ke=Trig6IsoPMembraneStiffness[ncoor.2}] ].7}] ]. n=Length[enl]. If [type=="Quad8". neldof=Length[Ke].{numer}] ]. Emat=elemat[[e]].j.th.{numer. If [!MemberQ[OKtyp.type.th.i++.9.OKenl. If [type=="Bar2".1".3.-3".th. For [e=1. {i.nodsig[[n]]/=k].Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM 27–14 PlaneStressPlateStresses[nodxyz_.i. Emat=elemat[[e]]. Emat=elemat[[e]]. Figure 27. th=elefab[[e]].{numer}] ].{numer}] ]. Emat=elemat[[e]].ue. where K is the unmodified master stiffness. numer=prcopt[[1]]].th. ]. forces including reactions are recovered by the matrix multiplication f = K.Emat. Here we describe result printing and plotting activities that can be specified in the problem script.ue. sige=Quad4IsoPMembraneStresses[ncoor. ue=Flatten[ue].th. enl=elenod[[e]].th. nodpnc[[n]]++.Emat.Emat. If [type=="Quad9. If [type=="Trig6. Emat=elemat[[e]].th. sige=Trig3IsoPMembraneStresses[ncoor. Emat=elemat[[e]]. numer=prcopt[[1]]].th.th. If [type=="Trig6". Emat=elemat[[e]].1.-3".1.prcopt_]:=Module[{numele=Length[elenod].1.Emat.8. Emat=elemat[[e]].enl.{numer}] ]. th=elefab[[e]]. But those are not under control of the user.k.{numer}] ].Emat. 27–14 . Emat=elemat[[e]].0. If [type=="Trig10". Postprocessing As noted above.e. Emat=elemat[[e]].th.{numer}] ].1. The bar force recovery module is not described here as it has not been used in assigned problems so far. sige=Trig10IsoPMembraneStresses[ncoor.nodsig}].ue. For [e=1. th=elefab[[e]].ue.Emat. th=elefab[[e]].{numnod}].Emat. th=elefab[[e]].Emat.ue.eletyp_. This computation is actually part of the postprocessing stage. If [type=="Quad8".ue. nodsig=Table[{0.e++. sige=Quad8IsoPMembraneStresses[ncoor.th. Return[{nodpnc. If [type=="Trig3".{numer}] ]. nodpnc=Table[0.numnod}].elemat_.{numer}] ].1". If [type=="Quad8.0}. th=elefab[[e]].Emat. nodsig[[n]]+=sige[[i]]. type=eletyp[[e]]. plate stresses and bar forces.noddis[[enl[[i]].3]=="Bar". Emat=elemat[[e]].ue.5.Emat.ue.noddis_.k}].type.{numnod}]. It is not described here since stress recovery is treated in more detail in a subsequent Chapter.k}].th.{numer}] ].u. k=Length[enl]. sige=Quad4IsoPMembraneStresses[ncoor. numnod=Length[nodxyz]. th=elefab[[e]].n.ue. If [Length[prcopt]>=1.{numer}] ].th.nodsig}. elefab_.e<=numele. sige=Quad9IsoPMembraneStresses[ncoor. Do [k=nodpnc[[n]].2]]}. nodsig=Chop[nodsig]]. th=elefab[[e]].6".2".th.elenod_. Do [n=enl[[i]]. module PlaneStressSolution carries out preprocessing tasks: recover node forces. If [Length[prcopt]>0. {i. If [type=="Trig10.ue.k}]. sige=Quad8IsoPMembraneStresses[ncoor. sige=Trig6IsoPMembraneStresses[ncoor. sige=Quad9IsoPMembraneStresses[ncoor. If [type=="Quad4.1]]. {n. If [k>1. Finally.nodpnc.th. numer=True. Module that recovers averaged nodal stresses at plate nodes. sige=Trig6IsoPMembraneStresses[ncoor.Emat.ue. The former is listed in Figure 27. If [type=="Quad4".{numer}] ].8.Emat. If [type=="Quad9". sige=Trig10IsoPMembraneStresses[ncoor. ue=Table[{noddis[[enl[[i]].ncoor. If [StringTake[type. th=elefab[[e]]. Continue[]]. Emat=elemat[[e]]. th=elefab[[e]]. th=elefab[[e]]. respectively.2". ]. §27.{i. ncoor=Table[nodxyz[[enl[[i]]]]. plate stresses and bar internal forces are recovered by the modules PlaneStressPlateStresses and PlaneStressBarForces.{numer}] ]. If [numer. node forces and node plate stresses in one table: PrintPlaneStressSolution[NodeDisplacements.Nsub. If digits is specified as a void list: { }.27–15 §27. The aspect argument specifies the ratio between the y (vertical) and x (horizontal) dimensions of the plot frame. Result Print Utilities Several utilities are provided in the plane stress program to print solution data in tabular form. specified at nodes.Nsub. say 8.{n. Plot smoothness in terms of color grading increases with Nsub. Displacement magnitudes are shown using a internally set color scheme based on “hue interpolation”. To print node displacements.1. uy=Table[NodeDisplacements[[n.5. and is usaully defined at the script start as a symbol so it is the same for all plots. {uxmax. To print receoverd node forces including reactions: PrintPlaneStressNodeForces[NodeForces. Displacement Field Contour Plots Contour plots of displacement components u x and u y (interpolated over elements from the computed node displacements) may be produced. In all utilities listed above."Displacement component uy"]. ContourPlotNodeFuncOver2DMesh[NodeCoordinates. The last argument is a plot title. To print computed node displacements: PrintPlaneStressNodeDisplacements[NodeDisplacements. ContourPlotNodeFuncOver2DMesh[NodeCoordinates.5.title.uy."Displacement component ux"].2. The last argument of the print modules: digits.title. but plot time grows as Nsub-squared. in which white means zero.NodePlateStresses.ElemNodes. a preset default is used for d and f.numnod}].f } it specifies that floating point numbers are to be printed with room for at least d digits. §27.aspect. for coarse meshes containing few elements whereas for finer meshes a value of 4 or 2 may work fine.title. To eliminate the title. A function maximum (in absolute value) is supplied as fourth argument.digits].uymax}=Abs[{Max[ux].{n.digits].2]].ElemNodes. specify "" (two quote marks together). No utility is provided to print bar forces.1]]. Plots can be obtained using a script typified by ux=Table[NodeDisplacements[[n. Typically Nsub is set to 4 at the start of the script and is the same for all plots of a script. NodePlateCounts. 27–15 .aspect.5 POSTPROCESSING §27. as problems involving plates and bars had not been assigned.digits]. To print plate node stresses: PrintPlaneStressPlateNodeStresses[NodePlateCounts. If set to { d. is optional.NodePlateStresses. They are invoked as follows.numnod}].digits]. So an appropriate tradeoff is to use a high Nsub. Nsub is the number of element subdivisions in each direction when breaking down the element area into plot polygons.ux.NodeForces. with f digits after the decimal point. uxmax. for example "Node displacements for plate with a hole".title. The reason for supplying this from the outside is that in many cases it is convenient to alter the actual maximum for zooming or animation purposes.Max[uy]}]. The third argument of ContourPlotNodeFuncOver2DMesh is the function to be plotted. uymax. As for the other arguments. title is an optional character string to be printed as a title before the table. Model (I) of Figure 27. if pressed."Nodal stress sig-xy"]. Stress component contour plots for rectangular plate with a circular central hole. Animation Occasionally it is useful to animate results such as displacements or stress fields when a load changes as a function of a time-like parameter t. {sxxmax.ElemNodes.3]].sxymax}=Abs[{Max[sxx]. §27.Max[sxy]}].Nsub. Such sequence produces a series of plot frames which may be animated by doubly clicking on one of them. 27–16 . maximum shears.numnod}]. As an example. This can be done by performing a sequence of analyses in a For loop. ContourPlotNodeFuncOver2DMesh[NodeCoordinates.yy Nodal stress sig. The speed of the animation may be controlled by pressing on the righmost buttons at the bottom of the Mathematica window."Nodal stress sig-yy"].syymax. and then the plot utility called.ElemNodes. changes the display sequence to back and forth motion.5.Nsub.27–16 Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM Nodal stress sig. Sometimes it is useful to show contour plots of principal stresses. Von Mises stresses.aspect. To do that. in which white means zero. For a description of ContourPlotNodeFuncOver2DMesh arguments.2]]. see the previous subsection."Nodal stress sig-xx"].1]].5.aspect.numnod}].xy Figure 27. the appropriate function should be constructed first from the Cartesian components available in NodePlateStresses.aspect.1. stress component contour plots for Model (I) of the rectangular plate with a circular central hole are shown in Figure 27. Stress Field Contour Plots Contour plots of stress components σx x . ContourPlotNodeFuncOver2DMesh[NodeCoordinates.4. Stress magnitudes are shown using a internally set color scheme based on “hue interpolation”.9. syy. σ yy and σx y (interpolated over elements from the computed node displacements) may be produced. Plots can be obtained using a script typified by sxx=Table[NodePlateStresses[[n.ElemNodes. ContourPlotNodeFuncOver2DMesh[NodeCoordinates. syy=Table[NodePlateStresses[[n. The second button from the left.sxymax.9. Remark 27.{n. sxy.3.numnod}]. sxy=Table[NodePlateStresses[[n.xx Nodal stress sig.syymax.2(b). etc. §27.Nsub.Max[syy]. sxx.{n.sxxmax.{n. ElemFabrications=Table[th. This driver cell does Model (I) of the plate with hole problem of Figure 27. Do[NodeCoordinates[[n]]=N[s[[n-7]] *xy8+(1-s[[n-7]]) *xy14]. xy1={0. Figure 27.1.15.0.ElemFabrications.37.1.5. Finally.2.{n. numnod=Length[NodeCoordinates].2(b).2.1.12 shows commands to produce contour plots of displacements (skipped) and stresses. PrintPlaneStressNodeCoordinates[NodeCoordinates.0}.5}.{n.22. {numele}].{n. Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{1.{e.24}].11 shows the call to PlaneStressSolution analysis driver and the call to get printout of node displacements. th=3.48. xy8={2.0. Do[NodeCoordinates[[n]]=N[s[[n]] *xy1+(1-s[[n]]) *xy7]. NodeDOFValues[[8]]={0. Figure 27.{}]. Figure 27.9.35}].6}.6 A COMPLETE PROBLEM SCRIPT CELL ClearAll[Em.6}].{e."". §27. 27–17 . Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{1.{n.12}].ν. forces and stresses.True. ElemTypes= Table["Quad4". xy15={5. ElemNodes[[7]]=ElemNodes[[6]]+{2. (* vroller @ nodes 1-7 *) Do[NodeDOFTags[[n]]={0.1}. It can be observed that the processing and postprocessing scripts are largely the same.0}. ElemNodes[[13]]=ElemNodes[[12]]+{2.2(b).nb Notebook posted on the course web site.28}].27–17 §27. Preprocessing (model definition) script for problem of Figure 27.0.{numnod}].29.6}.1. Do[NodeCoordinates[[n]]=N[s[[n-28]]*xy29+(1-s[[n-28]])*xy35].10.{6.0}.2. xy29={5.{n. Do[NodeCoordinates[[n]]=N[s[[n-14]]*xy15+(1-s[[n-14]])*xy21].29.2.True].0.8}.18}].th.0.{}].70. xy7={0. ElemNodes=Table[{0.14. xy21={Cos[Pi/4].8. The script is divided into 3 parts for convenience. (* Define FEM model *) s={1.1.1}.21}]. NodeDOFValues[[1]]=NodeDOFValues[[15]]={0.2. (* nodal loads *) Do[NodeDOFTags[[n]]={1.{}]. Emat=Em/(1-ν^2)*{{1.{e. xy8={2.0}.{numele}].Sin[Pi/4]}.*) NodeDOFValues=NodeDOFTags=Table[{0.1}.0}.(1-ν)/2}}.2. A Complete Problem Script Cell A complete problem script cell (which is Cell 13 in the plane stress Notebook placed in the web index of this Chapter) is listed in Figures 27.2.1. Figure 27.{24}].5.0}.6}.6. numele=Length[ElemNodes].1}. Em=10000. "One element mesh .4}].0}. ElemMaterials= Table[Emat.8. ElemNodes[[19]]=ElemNodes[[18]]+{2. xy35={1. which uses 4-node quadrilateral elements.1.ElemNodes. Nsub=4.12.ν.35}].Sin[3*Pi/8]}.1.14}].1. xy14={Cos[3*Pi/8].7}]. aspect=6/5.1}.4-node quad".30. (*PrintPlaneStressElementMatFab[ElemMaterials.6}. {numele}].1}. ElemNodes[[1]]={1.{ν.ElemNodes. Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{1. Plot2DElementsAndNodes[NodeCoordinates.2}.2}. xy28={Cos[Pi/8]. xy22={5.2}.16.2.1.0.75}.0."". Do[NodeCoordinates[[n]]=N[s[[n-21]]*xy22+(1-s[[n-21]])*xy28].07.{0.aspect.2}. ν=. (* hroller @ node 4 *) PrintPlaneStressFreedomActivity[NodeDOFTags.Sin[Pi/8]}.7}].0}.NodeDOFValues.10 through 27.0. ProcessOptions={True}.{e."".20.25. NodeCoordinates=Table[{0.{35}].Nsub].10 lists the model definition script followed by a mesh plot command.aspect. Other driver cell examples may be studied in the PlaneStress.{n. Do [ElemNodes[[e]]=ElemNodes[[e-1]]+{1. PrintPlaneStressElementTypeNodes[ElemTypes.{n.1."".0}.0. sxx.Nsub. ContourPlotNodeFuncOver2DMesh[NodeCoordinates.2(b)."Nodal stress sig-yy"]. ElemMaterials. NodePlateStresses.syymax. sxy. concealing system dependent details.Chapter 27: A COMPLETE PLANE STRESS FEM PROGRAM (* 27–18 Solve problem and print results *) {NodeDisplacements. PrintPlaneStressSolution[NodeDisplacements.aspect.aspect. *) (* Plot Averaged Nodal Stresses Distribution *) sxx=Table[NodePlateStresses[[n.numnod}].ux. The situation changed when widely used high-level languages like Matlab or Mathematica appeared.Nsub.Max[Abs[syy]]. {sxxmax. Another ages-old problem is plotting.syymax. ContourPlotNodeFuncOver2DMesh[NodeCoordinates.NodeDOFValues.syymax.Max[uy]}].ElemNodes.aspect.11. ContourPlotNodeFuncOver2DMesh[NodeCoordinates. which often benefits from ad-hoc node and element generation constructs. Print["sxxmax.aspect.ElemBarForces}= PlaneStressSolution[ NodeCoordinates. Processing script and solution print for problem of Figure 27. uy=Table[NodeDisplacements[[n. ContourPlotNodeFuncOver2DMesh[NodeCoordinates."Displacement component uy"]."Nodal stress sig-xx"].Nsub.ElemNodes. (* Plot Displacement Components Distribution .Max[Abs[sxy]]}.sxymax=".{sxxmax. {uxmax.sxymax.3]]. 27–18 .{n.uy.NodePlateCounts. with no attempt at coherent interfacing. Figure 27.{n.ElemNodes. The language engine provides the necessary fit to available computer hardware.sxxmax. uxmax. Result plotting script for problem of Figure 27.sxymax}={Max[Abs[sxx]].{n.NodeForces.Nsub.syymax.1]]. NodeDOFTags.1]].aspect. uymax."Nodal stress sig-xy"].skipped *) (* ux=Table[NodeDisplacements[[n.numnod}].NodePlateCounts."Displacement component ux"].12. More common is the display of snipets of code.{n.ElemFabrications.2]].NodePlateStresses.sxymax}].ElemNodes.NodeForces.2]]. ContourPlotNodeFuncOver2DMesh[NodeCoordinates. sxy=Table[NodePlateStresses[[n. Notes and Bibliography Few FEM books show a complete program.ElemNodes.{}].2(b).numnod}].ProcessOptions]."Computed Solution:".Nsub. These are left dangling chapter after chapter. At 50 lines/page that becomes difficult to display snugly in a textbook while providing a running commentary.numnod}]. ElemBarNumbers. What changes is the model definition script portion.uymax}=Abs[{Max[ux].ElemNodes. Even the simplest program may run to several thousand code lines. Note that displacement contour plots have been skipped by commenting out the code.numnod}]. Figure 27.{n. syy. syy=Table[NodePlateStresses[[n. Thus plotting scripts become transportable.ElemTypes. Languages such as C or Fortran do not include plotting libraries for the simple reason that low-level universal plotting standards never existed. This historical problem comes from early reliance on low-level languages such as Fortran. 28 . Stress Recovery 28–1 . §28.4. §28.1.28–2 Chapter 28: STRESS RECOVERY TABLE OF CONTENTS Page §28.3.2. Introduction Calculation of Element Strains and Stresses Direct Stress Evaluation at Nodes Extrapolation from Gauss Points Interelement Averaging 28–2 28–3 28–3 28–4 28–4 28–6 .5. §28. §28. 28–3 §28.2 CALCULATION OF ELEMENT STRAINS AND STRESSES §28.1. Introduction In this lecture we study the recovery of stress values for two-dimensional plane-stress elements.1 This analysis step is sometimes called postprocessing because it happens after the main processing step — the calculation of nodal displacements — is completed. Stress calculations are of interest because in structural analysis and design the stresses are often more important to the engineer than displacements. In the stiffness method of solution discussed in this course, the stresses are obtained from the computed displacements, and are thus derived quantities. The accuracy of derived quantities is generally lower than that of primary quantities (the displacements), an informal statement that may be mathematically justified in the theory of finite element methods. For example, if the accuracy level of displacements is 1% that of the stresses may be typically 10% to 20%, and even lower at boundaries. It is therefore of interest to develop techniques that enhance the accuracy of the computed stresses. The goal is to “squeeze” as much accuracy from the computed displacements while keeping the computational effort reasonable. These procedures receive the generic name stress recovery techniques in the finite element literature. In the following sections we cover the simplest stress recovery techniques that have been found most useful in practice. §28.2. Calculation of Element Strains and Stresses In elastic materials, stresses σ are directly related to strains e at each point through the elastic constitutive equations σ = Ee. It follows that the stress computation procedure begins with strain computations, and that the accuracy of stresses depends on that of strains. Strains, however, are seldom saved or printed. In the following we focus our attention on two-dimensional isoparametric elements, as the computation of strains, stresses and axial forces in bar elements is strightforward. Suppose that we have solved the master stiffness equations Ku = f, (28.1) for the node displacements u. To calculate strains and stresses we perform a loop over all defined elements. Let e be the element index of a specific two-dimensional isoparametric element encountered during this loop, and u(e) the vector of computed element node displacements. Recall from §15.3 that the strains at any point in the element may be related to these displacements as e = Bu(e) , (28.2) where B is the strain-displacement matrix (14.18) assembled with the x and y derivatives of the element shape functions evaluated at the point where we are calculating strains. The corresponding stresses are given by σ = Ee = EBu (28.3) 1 This Chapter needs rewriting to show the use of Mathematica for stress computation. To be done in the future. 28–3 28–4 Chapter 28: STRESS RECOVERY Table 28.1 Corner node 1 2 3 4 ξ η −1 −1 +1 −1 +1 +1 −1 +1 Natural Coordinates of Bilinear Quadrilateral Nodes ξ η √ −√3 +√ 3 +√ 3 − 3 √ −√3 −√3 +√3 + 3 Gauss node 1’ 2’ 3’ 4’ ξ η ξ η √ −1/√3 +1/√3 +1/√3 −1/ 3 √ −1/√3 −1/√3 +1/√3 +1/ 3 −1 +1 +1 −1 −1 −1 +1 +1 Gauss nodes, and coordinates ξ  and η are defined in §28.4 and Fig. 28.1 In the applications it is of interest to evaluate and report these stresses at the element nodal points located on the corners and possibly midpoints of the element. These are called element nodal point stresses. It is important to realize that the stresses computed at the same nodal point from adjacent elements will not generally be the same, since stresses are not required to be continuous in displacementassumed finite elements. This suggests some form of stress averaging can be used to improve the stress accuracy, and indeed this is part of the stress recovery technique further discussed in §28.5. The results from this averaging procedure are called nodal point stresses. For the moment let us see how we can proceed to compute element nodal stresses. Two approaches are followed in practice: 1. Evaluate directly σ at the element node locations by substituting the natural coordinates of the nodal points as arguments to the shape function modules. These modules return qx and q y and direct application of (28.2)-(28.4) yields the strains and stresses at the nodes. 2. Evaluate σ at the Gauss integration points used in the element stiffness integration rule and then extrapolate to the element node points. Empirical evidence indicates that the second approach generally delivers better stress values for quadrilateral elements whose geometry departs substantially from the rectangular shape. This is backed up by “superconvergence” results in finite element approximation theory. For rectangular elements there is no difference. For isoparametric triangles both techniques deliver similar results (identical if the elements are straight sided with midside nodes at midpoints) and so the advantages of the second one are marginal. Both approaches are covered in the sequel. §28.3. Direct Stress Evaluation at Nodes This approach is straightforward and need not be discussed in detail. 28–4 28–5 §28.4 (a) EXTRAPOLATION FROM GAUSS POINTS η (b) 3 3 4 4 4' ξ (e) 3' η' (e') 1' 1 ξ' 2' 1 2 2 Figure 28.1. Extrapolation from 4-node quad Gauss points: (a) 2 × 2 rule, (b) Gauss element (e ) §28.4. Extrapolation from Gauss Points This will again be explained for the four-node bilinear quadrilateral. The normal Gauss integration rule for element stiffness evaluation is 2 × 2, as illustrated in Figure 28.1. The stresses are calculated at the Gauss points, which are identified as 1 , 2 , 3 and 4 in Figure 28.1. Point i  is closest to node i so it is seen that Gauss point numbering essentially follows element node numbering in the counterclockwise sense. The natural coordinates of these points are listed in Table 28.1. The stresses are evaluated at these Gauss points by passing these natural coordinates to the shape function subroutine. Then each stress component is “carried” to the corner nodes 1 through 4 through a bilinear extrapolation based on the computed values at 1 through 4 . To understand the extrapolation procedure more clearly it is convenient to consider the region bounded by the Gauss points as an “internal element” or “Gauss element”. This interpretation is depicted in Figure 28.1(b). The Gauss element, denoted by (e ), is also a four-node quadrilateral. Its quadrilateral (natural) coordinates are denoted by ξ  and η . These are linked to ξ and η by the simple relations √ √ √ √ ξ = ξ  / 3, η = η / 3, ξ  = ξ 3, η = η 3. (28.4) Any scalar quantity w whose values wi at the Gauss element corners are known can be interpolated through the usual bilinear shape functions now expressed in terms of ξ  and η :  (e )  N1   (e )        N2   (28.5) w(ξ , η ) = [ w1 w2 w3 w4 ]  (e )  , N 3  N4(e ) where (cf. §15.6.2)  N1(e ) = 14 (1 − ξ  )(1 − η ),  N2(e ) = 14 (1 + ξ  )(1 − η ),  N3(e ) = 14 (1 + ξ  )(1 + η ),  N4(e ) = 14 (1 − ξ  )(1 + η ). 28–5 (28.6) 28–6 Chapter 28: STRESS RECOVERY (a) 4 8 7' 3' 9 9' 6' 6 4 4' 8' 1' 1 (b) 3 7 5' 5 8 2 (c) 3' 4' 6' 6 8' 9 1 3 3' 7' 1' 2' 3 7 6 2' 2' 5' 5 2 5 1' 2 1 4 Figure 28.2. Gauss elements for higher order quadrilaterals and triangles: (a) 9-node element with 3 × 3 Gauss rule, (b) 8-node element with 3 × 3 Gauss rule, (c) 6-node element with 3-interior point rule. √ To extrapolate w to corner 1, say, we replace its ξ  and η coordinates, namely ξ  = η = − 3, into the above formula. Doing that for the four corners we obtain √ √      1 + 1 3 − 12 1 − 12 3 − 12 w1 w1 2 √ √ 1 1 1 1   −2 1 − 2 3   w2   w2   − 2√ 1 + 2 3 √ (28.7)    = w3 − 12 1 + 12 3 − 12  w3 1 − 12 3 √ √ w4 w4 −1 1− 1 3 −1 1+ 1 3 2 2 2 2 Note that the sum of the coefficients in each row is one, as it should be. For stresses we apply this formula taking w to be each of the three stress components, σx x , σ yy and τx y , in turn. Extrapolation in Higher Order Elements For eight-node and nine-node isoparametric quadrilaterals the usual Gauss integration rule is 3 × 3, and the Gauss elements are nine-noded quadrilaterals that look as in Figure 28.2(a) and (b) above. For six-node triangles the usual quadrature is the 3-point rule with internal sampling points, and the Gauss element is a three-node triangle as shown in Figure 28.2(c). §28.5. Interelement Averaging The stresses computed in element-by-element fashion as discussed above, whether by direct evaluation at the nodes or by extrapolation, will generally exhibit jumps between elements. For printing and plotting purposes it is usually convenient to “smooth out” those jumps by computing averaged nodal stresses. This averaging may be done in two ways: (I) Unweighted averaging: assign same weight to all elements that meet at a node; (II) Weighted averaging: the weight assigned to element contributions depends on the stress component and the element geometry and possibly the element type. Several weighted average schemes have been proposed in the finite element literature, but they do require additional programming. 28–6 29 . Fitting Fields Over Triangles 29–1 Chapter 29: FITTING FIELDS OVER TRIANGLES 29–2 TABLE OF CONTENTS Page §29.1. Introduction 29–3 29–2 29–3 §29.1 §29.1. Introduction 29–3 INTRODUCTION 30 Thermomechanical Effects 30–1 Chapter 30: THERMOMECHANICAL EFFECTS TABLE OF CONTENTS Page §30.1. §30.2. §30. §30. §30. Introduction Thermomechanical Behavior §30.2.1. Thermomechanical Stiffness Relations §30.2.2. Globalization . . . . . . . . §30.2.3. Merge . . . . . . . . . . . §30.2.4. Solution . . . . . . . . . §30.2.5. Postprocessing . . . . . . . . §30.2.6. Worked-Out Examples . . . . . Notes and Bibliography . . . . . . . . . . . . . References . . . . . . . . . . . . . Exercises . . . . . . . . . . . . . 30–2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30–3 30–3 30–4 30–6 30–6 30–6 30–6 30–7 30–10 30–10 30–11 §30.2 THERMOMECHANICAL BEHAVIOR §30.1. Introduction The assumptions invoked in Chapters 2–3 for the example truss result in zero external forces under zero displacements. This is implicit in the linear-homogeneous expression of the master stiffness equation f = Ku. If u vanishes, so does f. This behavior does not apply, however, if there are initial force effects.1 If those effects are present, there can be displacements without external forces, and internal forces without displacements. A common source of initial force effects are temperature changes. Imagine that a plane truss structure is unloaded (that is, not subjected to external forces) and is held at a uniform reference temperature. External displacements are measured from this environment, which is technically called a reference state. Now suppose that the temperature of some members changes with respect to the reference temperature while the applied external forces remain zero. Because the length of members changes on account of thermal expansion or contraction, the joints will displace. If the structure is statically indeterminate those displacements will induce strains and stresses and thus internal forces. These are distinguished from mechanical effects by the qualifier “thermal.” For many structures, particularly in aerospace and mechanical engineering, such effects have to be considered in the analysis and design. There are other physical sources of initial force effects, such as moisture (hygrosteric) effects,2 member prestress, residual stresses, or lack of fit. For linear structural models all such sources may be algebraically treated in the same way as thermal effects. The treatment results in an initial force vector that has to be added to the applied mechanical forces. This subject is outlined in §30.3 from a general perspective. However, to describe the main features of the matrix analysis procedure it is sufficient to consider the case of temperature changes. In this Section we go over the analysis of a plane truss structure whose members undergo temperature changes from a reference state. It is assumed that the disconnection and localization steps of the DSM have been carried out. Therefore we begin with the derivation of the matrix stiffness equations of a generic truss member. §30.2. Thermomechanical Behavior Consider the generic plane-truss member shown in Figure 30.1. The member is prismatic and uniform. The temperature T is also uniform. To reduce clutter the member identification subscript will be omitted in the following development until the globalization and assembly steps. We introduce the concept of reference temperature Tr e f . This is conventionally chosen to be the temperature throughout the structure at which the displacements, strains and stresses are zero if no mechanical forces are applied. In structures such as buildings and bridges Tr e f is often taken to be the mean temperature during the construction period. Those zero displacements, strains and stresses, together with Tr e f , define the thermomechanical reference state for the structure. The member temperature variation from that reference state is T = T −Tr e f . This may be positive or negative. If the member is disassembled or disconnected, under this variation the member length 1 Called initial stress or initial strain effects by many authors. The different names reflect what is viewed as the physical source of initial force effects at the continuum mechanics level. 2 These are important in composite materials and geomechanics. 30–3 Chapter 30: THERMOMECHANICAL EFFECTS is free to change from L to L + dT . If the thermoelastic constitutive behavior is linear3 then dT is proportional to L and T : (30.1) dT = αL T. Here α is the coefficient of thermal expansion, which has physical units of one over temperature. This coefficient will be assumed to be uniform over the generic member. It may, however, vary from member to member. The thermal strain is defined as eT = dT /L = α T. (30.2) Now suppose that the member is also subject to mechanical forces, more precisely the applied axial force F shown in Figure 30.1. The member axial stress is σ = F/A. In response to this stress the length changes by d M . The mechanical strain is e M = d M /L. The total strain e = d/L = (d M + dT )/L is the sum of the mechanical and the thermal strains: e = e M + eT = σ + αT E (30.3) This superposition of deformations is the basic assumption made in the thermomechanical analysis. It is physically obvious for an unconstrained member such as that depicted in Figure 30.1. (a) f yi, uyi fxi , uxi (e) i f yj , uyj y¯ (b) fxj , uxj x¯ j k s = EA/L α, T F L F d = d M + dT L + d M + dT Figure 30.1. Generic truss member subjected to mechanical and thermal effects: (a) idealization as bar, (b) idealization as equivalent linear spring. At the other extreme, suppose that the member is completely blocked against axial elongation; that is, d = 0 but T = 0. Then e = 0 and e M = −eT . If α > 0 and T > 0 the blocked member goes in compression because σ = Ee M = −EeT = −Eα T < 0. This thermal stress is further discussed in Remark 30.2. 3 An assumption justified if the temperature changes are small enough so that α is approximately constant through the range of interest, and no material phase change effects occur. 30–4 §30.2 THERMOMECHANICAL BEHAVIOR F = − fxi p = pM + pT F = f xj j i Figure 30.2. Equilibrium of truss member under thermomechanical forces. §30.2.1. Thermomechanical Stiffness Relations Because e = d/L and d = u¯ x j − u¯ xi , (30.3) can be developed as u¯ x j − u¯ xi σ = + α T, L E (30.4) To pass to internal forces (30.4) is multiplied through by E A: EA (u¯ x j − u¯ xi ) = Aσ + E A α T = p M + pT = p = F. L (30.5) Here p M = Aσ denotes the mechanical axial force, and pT = E A α T , which has the dimension of a force, is called (not surprisingly) the internal thermal force. The sum p = p M + pT is called the effective internal force. The last relation in (30.5), F = p = p M + pT follows from free-body member equilibrium; see Figure 30.2. Passing to matrix form:   u¯ xi EA  u¯  (30.6) F= [ −1 0 1 0 ]  yi  . u¯ yi L u¯ y j Noting that F = f¯x j = − f¯xi while f¯yi = f¯y j = 0, we can relate joint forces to joint displacements as  ¯     f xi −F  f¯yi   0    f¯  =  F  =  xj f¯y j 0     f¯M xi −1 1 f¯M yi   0  EA  0 + E A α T  =  −1 f¯M x j  1  L f¯M y j 0 0 0 0 0 0   −1 0 u¯ xi 0 0   u¯ yi  . 1 0   u¯ x j  u¯ y j 0 0 (30.7) ¯ u, ¯ or In compact matrix form this is ¯f = ¯f M + ¯fT = K ¯ u¯ = ¯f M + ¯fT . K (30.8) ¯ is the same member stiffness matrix derived in Chapter 2. The new ingredient that appears Here K is the vector   −1 0  ¯fT = E A α T  (30.9)  , 1 0 This is called the vector of thermal joint forces in local coordinates. It is an instance of an initial force vector at the element level. 30–5 Chapter 30: THERMOMECHANICAL EFFECTS Remark 30.1. A useful physical interpretation of (30.8) is as follows. Suppose that the member is precluded from joint (node) motions so that u¯ = 0. Then ¯f M + ¯fT = 0 or ¯f M = −¯fT . It follows that fT contains the negated joint forces (internal forces) that develop in a heated or cooled bar if joint motions are precluded. Because for most materials α > 0, rising the temperature of a blocked bar:T > 0, produces an internal compressive thermal force pT = AσT = −E AαT , in accordance with the expected physics. The quantity σT = −Eα T is the thermal stress. This stress can cause buckling or cracking in severely heated structural members that are not allowed to expand or contract. This motivates the use of expansion joints in pavements, buildings and rails, and roller supports in long bridges. §30.2.2. Globalization At this point we restore the member superscript so that the member stiffness equations (30.7) are rewritten as ¯ e u¯ e = ¯feM + ¯feT . (30.10) K Use of the transformation rules developed in Chapter 2 to change displacements and forces to the global system {x, y} yields (30.11) Ke ue = feM + feT , where Te is the displacement transformation matrix (3.1), and the transformed quantities are  T e e ¯ T, Ke = T e K T e feM = Te ¯f , T e feT = Te ¯fT . (30.12) These globalized member equations are used to assemble the free-free master stiffness equations by a member merging process. §30.2.3. Merge The merge process is based on the same assembly rules stated in §3.1.3 with only one difference: thermal forces are added to the right hand side. The member by member merge is carried out much as described as in §3.1.4, the main difference being that the thermal force vectors feT are also merged into a master thermal force vector. Force merge can be done by augmentation-and add (for hand work) or via freedom pointers (for computer work). Illustrative examples are provided below. Upon completion of the assembly process we arrive at the free-free master stiffness equations Ku = f M + fT = f. (30.13) §30.2.4. Solution The master system (30.13) has formally the same configuration as the master stiffness equations (2.3). The only difference is that the effective joint force vector f contains a superposition of mechanical and thermal forces. Displacement boundary conditions can be applied by reduction or modification of these equations, simply by using effective joint forces in the descriptions of Chapters 2–3. Processing the reduced or modified system by a linear equation solver yields the displacement solution u. 30–6 §30.2 THERMOMECHANICAL BEHAVIOR §30.2.5. Postprocessing The postprocessing steps described in Chapter 3 require some modifications because the derived quantities of interest to the structural engineer are mechanical reaction forces and internal forces. Effective forces by themselves are of little use in design. Mechanical joint forces including reactions are recovered from (30.14) f M = Ku − fT To recover mechanical internal forces in member e, compute p e by the procedure outlined in Chapter 3, and subtract the thermal component: p eM = p e − E e Ae α e T e . (30.15) This equation comes from solving (30.5) for p M . The mechanical axial stress is σ e = p eM /Ae . §30.2.6. Worked-Out Examples Example 30.1. The first worked out problem is defined in Figure 30.3. Two truss members are connected in series as shown and fixed at the ends. Properties E = 1000, A = 5 and α = 0.0005 are common to both members. The member lengths are 4 and 6. A mechanical load P = 90 acts on the roller node. The temperature of member (1) increases by T (1) = 25◦ while that of member (2) drops by T (2) = −10◦ . Find the stress in both members. Ο E = 1000, A = 12, α = 0.0005 1/ C for both Ο members. ∆T(1) = 25, ∆T(2) = −10 ¯y // y 1 P = 90 3 ;; ;; ;; ;; ; 2 (2) (1) (1) L x¯ // x (2) =4 L =6 Figure 30.3. Structure for worked-out Example 1. To reduce clutter note that all y motions are suppressed so only the x freedoms are kept: u x1 = u 1 , u x2 = u 2 and u x3 = u 3 . The corresponding node forces are denoted by f x1 = f 1 , f x2 = f 2 and f x3 = f 3 . The thermal force vectors, stripped to their x¯ ≡ x components, are f¯(1) f¯(2) (2) −150 60 (1) (1) (1) (1) −1 (2) (2) (2) (2) −1 T1 T2 ¯ ¯f(1) = = E A α T = , f = = E A α T = . T T 1 150 1 −60 f¯T(1) f¯T(2) 2 3 (30.16) The element stiffness equations are: u¯ (1) f¯(1) u¯ (2) f¯(2) 1 −1 −150 1 −1 60 1 2 = ¯M1 , 2000 = ¯M2 , (30.17) 3000 (1) (1) + (2) (2) + −1 1 150 −1 1 −60 f M2 f M3 u¯ 2 u¯ 3 No globalization is needed because the equations are already in the global system, and thus we can get rid of the localization marker symbols: f¯ → f , u¯ → u. Assembling by any method yields 1000 3 −3 0 −3 5 −2 0 −2 2 . u1 u2 u3 . = f M1 f M2 f M3 . + −150 150 + 60 −60 30–7 . = f M1 f M2 f M3 . (30. + −150 210 −60 .18) . 06. p (1) M = Example 30. However the temperature of members (1) (2) and (3) changes by T . f M x2 = f M x3 = f M y3 = 0.0005 × 25 = 60. −T and 3T .22) . 0 0 −1   1  0 0 1 0 0 1      1 −1 0 0 −1 −1 1 0 0 0  −1  (3) (3) (3) (3) 1  1 = E A α T √  = 200α T  .06) − 12000 × 0. L (1) E (2) A(2) (u 3 − u 2 ) − E (2)A(2) α (2) T (2) = 2000 × (−0. p (2) M = L (2) (30. The thermal expansion coefficient of all three members is assumed to be α.12):  f(1) T f(2) T f(3) T     0 0 0 −1 −1 1 0 0 0  0 = 100α T  .Chapter 30: THERMOMECHANICAL EFFECTS The displacement boundary conditions are u 1 = u 3 = 0. The mechanical internal forces in the members are recovered from E (1) A(1) (u 2 − u 1 ) − E (1)A(1) α (1) T (1) = 3000 × 0. with respect to Tr e f . The thermal forces for each member in global coordinates are obtained by using (30.2.19) whence the stresses are σ (1) = 60/12 = 5 and σ (2) = −72/12 = −6.21) 200 250 The master stiffness matrix K does not change. We will perform the analysis keeping α and T as variables. Consequently the master stiffness equations are  20  10  −10   0      10 −10 0 −10 −10 u x1 = 0 f M x1 10 0 0 −10 −10   u y1 = 0   f M y1      0 10 0 0 0   u x2  =  f M x2 = 0  + α T      0 0 5 0 −5   u y2 = 0   f M y2  f M x3 = 0 u x3 −10 −10 0 0 10 10 u y3 f M y3 = 0 −10 −10 0 −5 10 15 30–8  −300   −200   100     −50    200 250 (30. The mechanical force boundary condition is f M2 = 90. that is. The truss is mecanically unloaded. On removing the first and third equations. 0 1 0 1 1 0 0 1 0 0     −1 0 0 −1 0 0 0 0 0   −1  = 50α T  . the reduced system is 5000 u 2 = f M2 + 210 = 90 + 210 = 300. The second example concerns the example truss of Chapters 2-3.10) and the third of (30.06 − 12000 × 0.0005 × (−10) = −72. 0 1 −1   1  1  2 0 0 0 1 1 0 1 1 0  = E (1) A(1) α (1) T (1)  0 0  0 1  = E (2) A(2) α (2) T (2)  0 0 (30.20) Merging the contribution of these 3 members gives the master thermal force vector  −100 + 0 − 200   0 + 0 − 200  100 + 0 + 0 fT = α T   0 − 50 + 0  0 + 0 + 200 0 + 50 + 200  −300    −200      = α T  100    −50     (30. which yields u 2 = 300/5000 = +0. Member (1) is in tension and member (2) in compression. respectively. f M y1 and f M y2 are the unknown mechanical reaction forces.2 THERMOMECHANICAL BEHAVIOR in which f M x1 . Since the prescribed displacements are zero. and the known forces and displacements have been marked. the reduced system is simply .§30. 10 0 0 10 0 10 0 10 15 . u x2 u x3 u y3 . = 0 0 0 . + α T 100 200 250 . including reactions. This is a consequence of the example frame being statically determinate. merge and solution) are identical. and in-member prestressing. the remaining DSM steps (globalization. a wide spectrum of mechanical and non-mechanical effects can be acommodated under the umbrella of the initial force concept.24) 200 250 But this vector is exactly fT .27) In these equations subscripts M and I identify mechanical and initial node forces. see any textbook on Mechanics of Materials. 4 For the definition of static determinacy. These translate into internal forces and stresses.   (30. moisture diffusion. Global effects include prescribed nonzero joint displacements (studied in §4. respectively. Such structures do not develop thermal stresses under any combination of temperature changes. residual stresses. that lead to nonzero initial forces.4 Initial Force Effects As previously noted. = α T 100 200 250 .26) can be obtained by considering that the structure is blocked against all motions: u = 0. lack of fit in fabrication. The good news is that once the member equations (30. in which f I ≡ fT ).2. are called effective forces. K (30. and the undeformed structure experiences mechanical forces. Completing u with the prescribed zero displacements and premultiplying by K gives the complete effective force vector:  20  10  −10 f = Ku =   0    10 −10 0 −10 −10 0 10 0 0 −10 −10   0    0 10 0 0 0   10  α T = α T  0 0 5 0 −5  0    −10 −10 0 0 10 10 10 −10 −10 0 −5 10 15 10  −300   −200   100     −50  .23) gives u x2 = u x3 = u y3 = 10α T .25) All mechanical joint forces. (30. Then f M = −f I . ‘prestress Local effects that lead to initial forces at the member level are: temperature changes (studied in §4. The stiffness equations at the local (member) level are ¯ e u¯ e = ¯feM + ¯feI = ¯fe . (30. The sum of the two: ¯f at the local member level and f at the global structure level. Consequently f M = Ku − fT = 0. vanish. Engineers also call these prestresses. A physical interpretation of (30. and so do the internal mechanical forces. As can be seen there is a wide variety of physical effects.26) and at the global (assembled structure) level: Ku = f M + f I = f. by cable pretensioning of concrete structures). 30–9 . (30.23) Solving (30.25) are formulated. whether natural or artificial. This nice property extends to the general Finite Element Method.1) and multimember prestressing (for example. The concepts of static determinacy and its counterpart: static indeterminacy. If this device is used. indeterminacy is the rule. care should be exercised in interpreting results for internal forces and stresses given by the program.addall. If in addition there is a real temperature change T one would of course specify T + TP .com. such as the often quoted one by Przemieniecki [575]. however. The pertinent design tradeoff is: insensitivity to initial force effects versus redundant safety. the book by Ozi¸ prehensive classic treatment. ¨ sik [516] provides a comFor the separate problems of heat conduction and heat transfer. or prestress. But all of them can handle temperature variation inputs. The trick is not necessary for personal or open-source codes over which you have full control. The following example indicate that this is done for a bar element. Notes and Bibliography The additional DSM topics treated in this Chapter are covered in virtually all books on Matrix Structural Analysis. Since in linear analysis all such effects can be treated as initial forces. by inputting phony temperature changes. This is input to the program as a fictitious temperature change. Several recent FEM books ignore these topics as too elementary. it is possible (at least for bar elements) to model them as fictitious thermomechanical effects. search under “prestress” in http://www3.Chapter 30: THERMOMECHANICAL EFFECTS Pseudo Thermal Inputs Some commercial FEM programs do not have a way to handle directly effects such as moisture. References Referenced items have been moved to Appendix R. A discussion of this topic is beyond the scope of the book. 30–10 . There is a vast literature on prestressed structures. Once going past skeletal structural systems. lack of fit. The physics of thermomechanics and the analysis of thermal stresses is covered adequatedly in textbooks such as Boley and Wiener [95]. The total elongation is d = d M + d P where d P = FP L/(E A) is due to prestress. Equate to a thermal elongation: dT = αTP L and solve for TP = FP /(E Aα). al. are important in skeletal structures such as trusses and frameworks. Suppose that a prestress force FP is present in a bar. or manuals such as the widely used by Roark et. [620]. 7.1. where δ is called the “lack of fit.1 [N:20] Use the same data of Exercise 3.” Determine the initial force vector ¯f I to be used in (30. Prove that any statically determinate truss structure is free of thermal stresses. so if that Exercise has been previously assigned no stiffness recomputations are necessary. Find the crown displacements u x2 and u y2 and the member stresses σ (1) and σ (2) if the temperature of member (1) rises by T = 120 ◦ F above Tr e f .26). Shortcut: the element stiffnesses and master stiffness matrix are the same as in Exercise 3. 30–11 . (Research paper level). uxi (e) _ y _ _ fyj. EXERCISE 30.5 [A:35]. Hint: split node displacements into u = u H + u N .4. EXERCISE 30. _ _ fyi.2 [A:15] Consider the generic truss member of §2.7. except that P = 0 and consequently there are no applied mechanical forces. Generic truss member.3 [A:10] Show that the lack of fit of the foregoing exercise can be viewed as equivalent to a prestress force of −(E A/L)δ. Both members have the same dilatation coefficient α = 10−6 1/◦ F. Hint: find the mechanical forces that would compensate for δ and restore the desired length.1 for conve- nience. be placed under the umbrella of initial force effects. uxj _ x j i Figure E30. EXERCISE 30.1. whereas member (2) stays at Tr e f . reproduced in Figure E30. Work this out for the example of §30. EXERCISE 30. The disconnected member was supposed to have length L. where u N (the “nonhomogeneous” or “particular” part of the solution) carries the nonzero displacement values. but because of lack of quality control it was fabricated with length L + δ.4 [A:20] Show that prescribed nonzero displacements can. albeit somewhat artificially.Exercises Homework Exercises for Chapter 30 Thermomechanical Effects EXERCISE 30.1. u yi _ _ fxi . u yj _ _ fxj . A Linear Algebra: Vectors A–1 . . . A–2 . §A. . .6.2. §A. . . . Multiplication and Division by Scalar §A. . . . . . . Solutions to Exercises . .3. . . Orthogonal Projection . . . . . .3. .1. . §A. . . . Exercises . . . . . §A. . .1. . . . . .5.2. . . . . . . . . . . . .3. . . . . . . . .7. . . . . . . . . . Norm and Length . . . . . . . . .9. . .2. .2. . . . . §A. . . . Orthogonal Bases and Subspaces . .3. .8. . . . Special Vectors . . . . . . . . . . . Unit Vectors and Normalization . . §A. . . . . . . . . . . . . .3. . . . . . . §A. . . . . . . . . .4. . . . Vector Operations §A. . . . . Transposition . . . . . . §A. . . . . . . . . . . . §A. §A. . . . . . . . §A. . Motivation Vectors §A.Appendix A: LINEAR ALGEBRA: VECTORS TABLE OF CONTENTS Page §A. . . . . . . . .3.3. Angles and Orthonormality . . . . . .10. Span . . . . . . §A.3. . . Addition and Subtraction . . . §A. . . .3. .3. . §A. Visualization . . . Inner Product.2. . . . .2. . . . . . A–3 A–3 A–4 A–5 A–5 A–5 A–6 A–6 A–6 A–7 A–7 A–7 A–9 A–9 A–10 A–10 A–12 A–13 . Equality .1.3.3. . . . . .3. . . . . . . . . . . . . Notational Conventions . . 1 for conevntions used in this book. . .. .  . . . . . y1 . x2 . .3) is a more compact. .1) The subscripted a.2.. .. . The overlap between matrices and vectors in n dimensions was not established until the XX century.. Curiously. which is a generalization of the ordinary scalar multiplication.. .2) by these symbols we obtain the matrix form of (A. . The one-dimensional array expressions in brackets are column vectors or simply vectors. a1 j . vectors for mathematical physics (that is. which we call A. See Appendix H for additional historical details related to the developmnent of FEM. consider the following set of m linear relations between one set of n quantities. To illustrate this point. ym xn am1 am2 . Willard Gibbs (1839–1903) and Oliver Heaviside (1850–1925) in the late XIX century [172]. . . Replacing the expressions in (A...2 VECTORS §A.§A. respectively. ain   x j      .1.. A–3 . The two-dimensional array expression enclosed in brackets is a matrix. a2 j . . . . . ai j . Another key practical advantage of the matrix notation is that it translates directly to the computer implementation of linear algebra processes in languages that offer array data structures.       .   . and another set of m quantities. . a1n x1 y1  a21 a22 .   .1): A x = y.3) Putting A next to x means “matrix product of A times x”. . living in 3D space) were independently created by J. am j . a2n   x2   y2      .   . ..1). Motivation Matrix notation was invented1 primarily to express linear algebra relations in compact form. The use of boldface uppercase and lowercase letters to denote matrices and vectors.  . . ..   . (A. . . . ym : a11 x1 a21 x2 ··· ai1 x1 ··· am1 x1 + + a12 x2 a22 x2 ··· + ai2 x2 ··· + am2 x2 + + + + ··· ··· ··· ··· ··· ··· + + a1 j x j a2 j x j ··· + ai j x j ··· + am j x j + ··· + ··· ··· + ··· ··· + ··· + + a1n xn a2n xn ··· + ain xn ··· + amn xn = = = = y1 y2 ··· . y2 . Compactness enhances visualization and understanding of essentials. which we call x and y.   . x1 .   . . respectively.. Clearly (A. . . amn Two kinds of mathematical objects can be distinguished in (A. 1 Largely by Arthur Cayley (1821–1895) at Cambridge (UK) in 1858 [310] with substantial contributions from his colleague James Joseph Sylvester (1814–1897). .2).   . Matrices are defined and studied in Appendix B. .. “short hand” form of (A. . x and y quantities that appear in this set of relations may be formally arranged as follows:      a11 a12 .. xn . . . . . . . .   . (A.2)   =  y  a i   i1 ai2 ..  . follows conventional matrix-notation rules in engineering applications. See §A. ... yi ··· ym (A.. and follows the rules explained later. Vectors of order one (n = 1) are called scalars. (A. If the components are real numbers.. Consequently real vectors will be assumed unless otherwise noted.. If the components are complex numbers we have a complex vector.” For example. it is understood to be a column vector such as (A. the vector is called a real vector. For compactness one sometimes abbreviates the phrase “vector of order n” to just “n-vector. x.Appendix A: LINEAR ALGEBRA: VECTORS §A. xn (A. 2 The term component is primarily used in mathematical treatments whereas entry is used more in conjunction with the computer implementation. we rarely need complex vectors for most of our exposition. which are those written on paper or on the blackboard. Notational Conventions Typeset vectors will be designated by bold lowercase letters.  . The term element is also used in the literature but this will be avoided here (as well as in companion books) as it may lead to confusion with finite elements. ˜ (A. z. If the term “vector” is used without a qualifier. For example: a.5) then z is called a row vector. c. We shall see later that although a vector may be viewed as a special case of a matrix. however.7) Subscripted quantities such as x1 in (A.2. For example: a. handwritten or typewritten vectors. If n numbers are arranged in a horizontal array.1. a set of n numbers which we shall write in the form x  1  x2   x=  .4) This object is called a column vector. These are the usual quantities of analysis.4). are identified by putting a wiggle or bar underneath the letter. z2 zn ] . . as in z = [ z1 . The symbol x is the name of the vector.. z in equation (A. §A.8) below is a 4-vector. (A. y. it deserves treatment on its own.6) On the other hand. Vectors We begin by defining a vector.2. A–4 . Linear algebra embraces complex vectors as easily as it does real ones.4) are called the entries or components2 of x. while n is called the order of the vector x. b.  Example A.10) for a generic vector. called e. Drawing becomes a bit messier. is the vector all of whose components are zero. See Figure A. directed from the chosen origin to a point on the Cartesian plane of the paper with coordinates (x1 . Special Vectors The null vector. After introducing matrices (Appendix B) a unit vector may be defined as the i th column of the identity matrix. Occasionally we shall use the short-hand “component notation” x = [xi ]. is the vector all of whose components are unity. A–5 . a two-dimensional vector x (n = 2) can be depicted as a line segment. is the vector all of whose components are zero.  4  −2  x= 3  0 is real column vector of order 4. One may resort to a similar geometrical interpretation in three-dimensional Cartesian space (n = 3). The unit vector.3 (a) x2   x1 x =  x2  x3 (b)  x= x1 x2 x3 x1 x1 VECTOR OPERATIONS x2 Figure A. briefly.8) Example A. Visualization To help visualization. The unitary vector.1.2.2. The interpretation extends to Euclidean spaces of dimensions n > 3 but direct visualization is of course impaired. which is one. This comes handy when it is desirable to show the notational scheme obeyed by components. (A. or arrow. §A. however.2. denoted by ei .2. a 4-vector. although some knowledge of perspective and projective geometry helps.§A. Standard visualization of 2-vectors and 3-vectors as position vectors in 2-space and 3-space.1. In mechanics this is called a position vector in 2-space. or. (A.9) is a real row vector of order 6. §A. except the i th component.1(b). written 0. respectively. x2 ). q = [1 1 1 1 1 1] (A. See Figure A.3.1(a). . since it enjoys the same analytical properties. n.3. A row vector cannot be directly compared to a column vector of the same order (unless their dimension is 1). the transpose of a row vector is the column vector that has the same components. 3) is the well known paralellogram law.11) Similarly.. is written x + y and defined to be the vector of order n x +y  1 1 x + y  2 2 def . The transpose of a= 3 −1 6 is b = aT = [ 3 −1 6] and transposing b gives back a. The sum of two vectors of same order n. Similarly for row vectors. . replace + by − in the foregoing expressions. We then write x = y. for all i = 1. Vector Operations Operations on vectors in two-dimensional and three-dimensional space are extensively studied in courses on Mathematical Physics. and associative: x + (y + z) = (x + y) + z. . Addition and Subtraction The simplest operation acting on two vectors is addition.Appendix A: LINEAR ALGEBRA: VECTORS §A. x and y. For vector subtraction. Here we summarize operations on n-component vectors that are most useful from the standpoint of the development of finite elements. Transposing a vector twice yields the original vector: (xT )T = x. A–6 . The operation is commutative: x + y = y + x. For n = 1 the usual scalar addition results. Strictly speaking. Transposition The transpose of a column vector x is the row vector that has the same components. there is no harm in using the same symbol in both cases. Example A. The geometric interpretation of the vector addition operator for two. §A. the plus sign connecting x and y is not the same as the sign connecting xi and yi .3.2. and is denoted by xT : xT = [ x 1 x 2 . Equality Two column vectors x and y of equal order n are said to be equal if and only if their components are equal.3. (A.and three-dimensional vectors (n = 2. §A. See Figure A. §A. However. . the addition operation is undefined.3. Two vectors of different order cannot be compared for equality or inequality. x+y =  . xi = yi . one of the two has to be transposed before a comparison can be made. xn + yn (A.3.   .1. .2.12) If x and y are not of the same order.3. x n ] . . The span of two vectors. A–7 . The span of an arbitrary number of vectors of common origin is studied in §A.  . responds to this interpretation.3  y= y1 y2  x+y=  x= x1 x2 x1 + y1 x2 + y2 VECTOR OPERATIONS Figure A. namely the collection cx of all scalar multiples of x. is the set of vectors c1 x + c2 y for arbitrary scaling coefficients c1 and c2 .4. Division of a vector by a scalar c = 0 is equivalent to multiplication by 1/c. the result is the null vector. the geometric visualization of the span is that of the plane defined by the two vectors.10.§A.14) ≡ x/c = (1/c)x c The operation is not defined if c = 0.5. including −x. The operation is written x def (A.3.2. the vector addition operation is equivalent to the well known parallelogram composition law. The geometrical interpretation of scaling is: the scaled vector points the same way. The sum of a= 3 −1 6 and b= 2 1 −4 is a + b = 5 0 2 §A. §A. If c < 0 the direction of the vector is reversed. if c = −1 the resulting operation (−1)x = −x is called reflexion about the origin or simply reflexion. In two and three-dimensional space. x and y with common origin.3. Multiplication and Division by Scalar Multiplication of a vector x by a scalar c is defined by means of the relation  cx  1 cx2  def   cx =   .13) This operation is often called scaling of a vector. We call this Span(x). but its magnitude is multiplied by c.4. Span Sometimes it is not just x which is of interest but the “line” determined by x. If c = 0.3. Example A. Note that the span always includes the null vector. Hence the statement: a plane is spanned by two noncoincident vectors. If the two vectors are not parallel. In paticular. cxn (A. Norm and Length The inner product of two column vectors x and y.6.3. y) — as well as two other forms shown below — and is defined by def (x. Inner Product. is a scalar function denoted by (x.Appendix A: LINEAR ALGEBRA: VECTORS §A. y) = x y = y x = T T n . of same order n. If n = 1 it reduces to the usual scalar product.15) applies the so-called Einstein’s summation convention. y). namely xT y and yT x. y) = (y. b) = aT b = 3 × 2 + (−1) × 1 + 6 × (−4) = −19. The inner product of a= 3 −1 6 and b= 2 1 −4 is (a. z). Furthermore they are not easily generalized for vectors of order beyond 3. such as the cross or outer product. There are other vector products. the inner product is undefined.15) i=1 This operation is also called dot product and interior product. z)) = ((x. Example A. The scalar product is of course associative. (y. i ) and allows the operand to be dropped. which implies sum on repeated indices (in this case. The two other notations shown in (A. The inner product is not the only way of “multiplying” two vectors. The last expression in (A. (A.5. Remark A. x) but not generally associative: (x. exhibit the inner product as a special case of the matrix product discussed in Appendix B.1. x) = n . sc xi yi = xi yi . They are not treated here because they are not defined when going from vectors to matrices. which are important in many applications such as fluid mechanics and nonlinear dynamics.15). The inner product is commutative: (x. The Euclidean norm or 2-norm of a real vector x is a scalar denoted by x that results by taking the inner product of the vector with itself: def x = (x. If the two vectors are not of the same order. (A. For n = 1 observe that the length of a scalar x is its absolute value |x|.and three-dimensional space (n = 2. denoted by |x|.17) |x| = + x . is the positive square root of its Euclidean norm:  def (A. The Euclidean norm is not the only vector norm used in practice. The Euclidean length or simply length of a real vector. A–8 . 3). sc xi2 = xi xi . a norm) on the vector magnitude. but it will be sufficient for the present book. it is zero only if x is the null vector.16) i=1 Because the norm is a sum of squares. This definition agrees with the intuitive concept of vector magnitude in two. hence the notation |x|. It thus provides a “meter” (mathematically. The generalization to n dimensions is a natural one.21) This particular scaling is called normalization to unit length.19)   4 3 (A. and so the general formula for two arbitrary vectors is (x. y).24) agrees with that of the angle formed by oriented lines in two. Unit Vectors and Normalization A vector of length one is called a unit vector. and its length is |x| = (A. written  (x.  . The value is defined by the cosine formula: cos θ = (x.§A. (A. Any non-null vector x can be scaled to unit length by dividing all components by its original length:  x /|x|  1  x2 /|x|   x/|x| =   .3. Example A.22) §A.3. the normalization operation is undefined. (A. is the real number θ satisfying 0 ≤ θ ≤ π (or 0◦ ≤ θ ≤ 180◦ if measured in degrees).. ) = |x| |y| |x| |y| The angle θ formed by a non-null vector with itself is zero. Angles and Orthonormality The angle in radians between two unit real vectors x and y. the angle is undefined.7. y). A–9 . xn /|x| (A. y)| ≤ |x| |y|. The unit-vector normalization of x=   4 3 is x/|x| = x/5 =  0. they should be normalized to such.23) If the vectors are not of unit length. §A.8 0.18) and the triangle inequality: |x + y| ≤ |x| + |y|.8. The definition (A. 3).7.6  (A. If one of the vectors is null. y) x y .6. Example A.24) cos θ = ( .3 VECTOR OPERATIONS Two important inequalities satisfied by vector norms (and not just the Euclidean norm) are the Cauchy-Schwarz inequality: |(x. If x is the null vector. The Euclidean norm of x= is x = 42 + 32 = 25. This will always be the case for n = 1.20) √ 25 = 5.and threedimensional Euclidean geometry (n = 2. (A. between the vector spans) is more appropriate than θ.28) where θ is the angle between x and y.Appendix A: LINEAR ALGEBRA: VECTORS For some applications the acute angle φ between the line on x and the line on y (i. |x| (A. Orthogonal Bases and Subspaces Let bk .e. The acute angle formed by two orthogonal vectors is π/2 radians or 90◦ . (A. This angle between Span(x) and Span(y) is the real number φ satisfying 0 ≤ φ ≤ π/2 and cos φ = |(x. the projection of any of them onto the other vanishes. It is easily shown that c = (y. Orthogonal Projection The orthogonal projection of a vector y onto a vector x is the vector p that has the direction of x and is orthogonal to y − p. . y − p) = 0.3. m be a set of n-dimensional unit vectors which are mutually orthogonal.3. §A..25) Two vectors x and y connected by the relation (x. . If x and y are orthogonal. The condition can be stated as (p.27) (A. y)| |x| |y| (A.26) are said to be orthogonal. Then if a particular n-dimensional vector x admits the representation x= m . p=c in which x ) = |y| cos θ. §A.10.9. y) = 0. . k = 1. |x| x . b ) = k n . (A.29) ck bk k=1 the coefficients ck are given by the inner products ck = (x. x) = m . sc xi bik = xi bik .30) i=1 We also have Parseval’s equality (x. (A. 31) k=1 If the representation (A. A–10 . The bk are called the base vectors.29) holds. the set bk is called an orthonormal basis for the vector x. (A. sc ck2 = ck ck . 3 VECTOR OPERATIONS The set of all vectors x given by (A.) The simplest complete orthonormal basis is of order n is the n-dimensional Cartesian basis       1 0 0      0 1 0 2 n . ck ≡ xk .32) b1 =  .   .  .3. the set bk forms a complete orthonormal basis for the n-dimensional space..  .30) forms a subspace of dimension m.. and is called Span (bk ). b = · · · b = (A. 3 Note that if m = 1 we have the span of a single vector.3 The numbers ck are called the coordinates of x with respect to that basis.5 is simply a line passing through the origin of coordinates.§A. If m = n. .   ..  0 0 1 In this case the position coordinates of x are simply its components. A–11 . . (The qualifier “complete” means that all n-dimensional vectors are representable in terms of such a basis.  . The subspace is said to be spanned by the basis bk . which as noted in §A. that is. EXERCISE A.19) hold.. EXERCISE A.1 Given the four-dimensional vectors    2  4  x= . y) and φ given by (?) and (?). 1  7  5 5   b2 = 101  . z= −2  26 (c) (EA.4 What are the angles θ and φ formed by an arbitrary non-null vector x and the opposite vector −x? EXERCISE A.2) (EA. and α and β are scalars.3) Using the values computed in (b). (b) compute the inner product (x. (d) normalize x and y to unit length.2 Given the base vectors    1 −7   b1 = 101  . i. A–12 (EA.18) (A. EXERCISE A.1) (a) compute the Euclidean norms and lengths of x and y.e.5 Show that (αx. verify that the coordinate-expansion formulas and Parseval’s equality are correct. (c) verify that the inequalities (A.y). βy) = αβ (x.4) . (f) compute the projection of y onto x and verify that the orthogonality condition (A. orthogonal and of unit length. (e) compute the angles θ =  (x.3 Prove that Parseval’s equality holds in general. y) where x and y are arbitrary vectors.28) holds. −5  5 (a) Check that b1 and b2 are orthonormal. 4  −8  1  −5  y= 7  5 (EA.Appendix A: LINEAR ALGEBRA: VECTORS Homework Exercises for Appendix A: Vectors EXERCISE A. (b) Compute the coefficients c1 and c2 in the following representation:   8  −16  = c1 b1 + c2 b2 . c2 = (z.4   −1.4   1.2 + 18.5  u = y = 0.0 + 13.     0.72 = 1.0 + 1. (c) |x + y| = (d) |(x.2 (a) b1 = 0. (b) c1 = 30. y = 12 + (−5)2 + 72 + 52 = 100.05 + 0. yu ) = −0. y − p) = −0.0 − 8.7  10 0.8  . EXERCISE A.8 + 11.5)2 + 0.54◦ .30. cos φ = |(xu . c12 + c22 = 302 + 102 = 1000 = z = 82 + (−16)2 + (−2)2 + 262 = 1000.56 − 9.24 = 0.Solutions to Exercises Homework Exercises for Appendix A . or solving a system of 2 linear equations) (c) c1 = (z. b2 = 0. b1 | = 1.52 + (−0.5 (e) cos θ = (xu .6 (p. |y| = 10.1 y  −0.35 − 0.4  u = .6  0.4   −1. (by inspection. (b) (x. θ = 107.4  10 −0.8   0.6  −3.2 x  0.2  = .8 2. yu )| = 0.12 + (−0.52 = 1.2  2. x = 0. (b1 .84 + 6. |x| = 10.2 −0. √ 32 + (−1)2 + (−11)2 + (−3)2 = 140 ≤ |x| + |y| = 10 + 10 = 20    0. φ = 72. (f) c = |y| cos θ = −3.46◦ .96 + 4.12 + 0. p = c xu = −3  0.05 − 0.2  −0.1 (a) x = 22 + 42 + 42 + (−8)2 = 100. b1 ) = 0. y−p= 8.35 = 0.0 = 10. |b2 | = 1. y) = 2 − 20 + 28 − 40 = −30. A–13 .Solutions EXERCISE A.52 + 0. b2 ) = 4.2 = 30. b2 ) = 0. c2 = 10.30.2 − 0. y)| = 30 ≤ |x| |y| = 100.7)2 + 0. 4 θ = 180◦ . e. βy) = αxi βyi = αβ xi yi = αβ (x.5 (αx. [699].g. EXERCISE A.Appendix A: LINEAR ALGEBRA: VECTORS EXERCISE A. y) (summation convention used) A–14 . φ = 0◦ .3 See any linear algebra book. EXERCISE A. B Linear Algebra: Matrices B–1 . . . . . .1. . . . . . . §B. . .2. . . . . . . . .3.1. . . . . . . . . Matrix by Matrix Product .2. . .5. . . . . . . . . .5.1. . . . . . . . . Special Matrices . . . .4. . Equality . . . Real and Complex Matrices . . . . . . §B. §B. . . . §B. . . . . . . . §B. . . .2. . .2. . .1. . . .3. . . Matrix Product Properties . . . . Matrix Products §B. . . . . .1. . . . . . . .3. . . §B. . . . Exercises . Elementary Matrix Operations §B. . . . . . . . . . . . Symmetry and Antisymmetry . . Orthogonal Projector Properties . Addition and Subtraction . . . . . . . . . . . . . . . . . . . . . . . . §B. . B–2 . . . . Bilinear and Quadratic Forms Matrix Orthogonality §B. . . . Matrices §B. .1. . . . . . . Matrix Powers . Matrix by Vector Product . §B. . §B. .1. . .1. . . . Matrix Orthogonalization Via Projectors §B. . . . . . . . . . . . §B. . . . . . .3.4. . . . . .5.3. . . . . .3.2. .4.Appendix B: LINEAR ALGEBRA: MATRICES TABLE OF CONTENTS Page §B. . . . . . .3. . . .2. . . .6. Concept . . . . Transposition . §B. .2. . .2. §B. . . . . .7. . §B. . . Where Do Matrices Come From? . . . . . .1. §B. . Square Matrices . . . . . Scalar Multiplication . Solutions to Exercises . §B. . . . . . §B.1. . . . . . . . . . .1. . . .3. . . . B–3 B–3 B–3 B–3 B–4 B–4 B–5 B–5 B–6 B–6 B–6 B–7 B–7 B–7 B–7 B–8 B–9 B–10 B–11 B–11 B–11 B–12 B–14 B–15 . . . .4.2. . . .1. .5. . . . §B. . Are Vectors a Special Case of Matrices? §B. . . 3) This matrix has 2 rows and 3 columns.. a1 j . B–3 ..   .  . Matrices are conventionally identified by bold uppercase letters such as A.1.1. 9. am j (B. . the second row is (4. Example B. . The first row is (2. Occassionally we shall use the short-hand component notation (B. . respectively.1.. . . am1 am2 set of scalar quantities arranged in a  a1n a2n   . an m × n matrix..  a21 a22 . 2 This confusion is apparent in the literature of the period 1860–1920. .1.  . defined according to the rules stated in Appendix C. . . If this is so we will write them underneath the matrix symbol. according to the intended use. . 4).. and so on. .  . . . Concept Let us now introduce the concept of a matrix. Consider a rectangular array containing m rows and n columns:  a11 a12 . a2 j . .1) This array will be called a rectangular matrix of order m by n. . or.. The quantities ai j are called the entries or components of the matrix. . 6.. the term “matrix element” will be avoided to lessen the chance of confusion with finite elements. . .. .  . the first column is (2.3) we would show B 2×3 (B.2 A determinant is a number associated with square matrices (m = n).  . The entries of matrix A may be denoted as Ai j or ai j .§B. Matrices §B.2) A = [ai j ]. 3). ain   . In some contexts it is convenient or useful to display the number of rows and columns.  . .. 1 A convention introduced in Berkeley courses by Ray Clough. As in the case of vectors. Not every rectangular array is a matrix. 1). briefly. Preference will be given to the latter unless one is talking about the computer implementation. . The following is a 2 × 3 numerical matrix: B=  2 4 6 9 3 1 (B. . . ai j .  .4) Remark B. etc.. . It is particularly useful in blackboard expositions. .1 MATRICES §B. . to qualify as such it must obey the operational rules discussed below. . Matrices should not be confused with determinants.. B. . The two subscripts identify the row and column. .. . . .  a  i1 ai2 . .1.1 For the example matrix (B. amn . Its n components aii form the main diagonal. the components of a matrix may be real or complex.5) is {12. Matrices for which m = n are called non-square (the term “rectangular” is also used in this context. 11} and the cross diagonal is {2.1. and complex otherwise.5). are only defined for square matrices. 0 0 (B. 24. Example B. Real and Complex Matrices As in the case of vectors. 24. 3}. (B.Appendix B: LINEAR ALGEBRA: MATRICES §B. Consider a square matrix A = [ai j ] of order n × n. Entries that run parallel to and above (below) the main diagonal form superdiagonals (subdiagonals). such as taking determinants and computing eigenvalues. The cross diagonal runs from the bottom left to upper right. {6. 7} is the first superdiagonal of the example matrix (B.3. For the present exposition all matrices will be real.5) is a square matrix of order 3. Square matrices for which ai j = −a ji are called antisymmetric or skew-symmetric. Furthermore many operations. C= 12 6 8 24 2 5 3 7 11 (B. The diagonal entries of an antisymmetric matrix must be zero.3. The following is a symmetric matrix of order 3: S= 11 6 1 6 1 3 −1 −1 −6 . but this is fuzzy because squares are special cases of rectangles).2.2.4. For example. which runs from top left to bottom right. Square Matrices The case m = n is important in practical applications. Such matrices are called square matrices of order n. §B. §B.6) The following is an antisymmetric matrix of order 4:  0  −3 W= 1 5 3 0 −7 2 B–4 −1 7 0 0  −5 −2  . Example B. The main diagonal of the example matrix (B.1. Square matrices enjoy certain properties not shared by non-square matrices. the matrix is called real. such as the symmetry and antisymmetry conditions defined below.7) . If they are real numbers. Symmetry and Antisymmetry Square matrices for which ai j = a ji are called symmetric about the main diagonal or simply symmetric.1. The null matrix of order 2 × 3 is  0 0 0 0 0 . force vectors. There are some operations. matrices are rarely the quantities of primary interest: they work silently in the background where they are normally engaged in operating on vectors.8) in which x1 = x11 .1 MATRICES §B. for which the analogy does not carry over. In finite element analysis even stresses and strains are often arranged as vectors although they are really tensors. Example B. Special Matrices The null matrix. as a matrix of order 1 × m. For example. The identity matrix of order 4 is  1 0 I= 0 0 0 1 0 0 0 0 1 0  0 0 . buckling eigenvectors. Example B. x3 x31 (B. On the other hand. vibration eigenvectors. 0 (B. §B.. as a matrix of order n × 1. i. 0 1 (B.4. Indeed in many contexts a column vector of order n may be treated as a matrix with a single column. written 0. written I. Another important distinction from a practical standpoint is discussed next. Are x and X the same thing? If so we could treat column vectors as one-column matrices and dispense with the distinction..9) The identity matrix.5. The dichotomy is reflected in the notational conventions of lower versus upper case. x2 = x22 and x3 = x33 .6.1.1.1. an engineer may be interested in displacement vectors. Where Do Matrices Come From? Although we speak of “matrix algebra” as embodying vectors as special cases of matrices. i. however.5. Are Vectors a Special Case of Matrices? Consider the 3-vector x and a 3 × 1 matrix X with the same components: x11 x1 X = x21 .e. Similarly. which are ones.7. is the matrix all of whose components are zero. and one has to consider vectors as different from matrices. in practice the quantities of primary interest to the structural engineer are vectors rather than matrices. x = x2 . §B. is a square matrix all of which entries are zero except those on the main diagonal. B–5 .§B.e. which may be arbitrary.10) A diagonal matrix is a square matrix all of which entries are zero except for those on the main diagonal. a row vector of order m may be treated as a matrix with a single row. 2. 4 6 5  10 L= −3 −15 0 4 21 −2 0 0 6 18  0 0 . The transpose of a symmetric matrix A is equal to the original matrix. j = 1. that is. The negated transpose of an antisymmetric matrix matrix A is equal to the original matrix. and the rows of A are the columns of AT . i. .e.2. §B. Example B.15) The transpose of a square matrix is also a square matrix. (B. i. A = AT . 0 7 (B.1. . Here are examples of each kind:  6 0 U= 0 0 4 6 0 0 2 4 6 0   1 2 . Elementary Matrix Operations §B. . A = −AT . B–6 .2.8. Transposition The transpose of a matrix A is another matrix denoted by AT that has n rows and m columns AT = [a ji ]. A lower triangular matrix is a square matrix in which all entries above the main diagonal vanish.. This notation is illustrated for the above matrix: D = diag [ 14 −6 0 (B. Obviously the transpose of AT is again A. n.11) A short hand notation which lists only the diagonal entries is sometimes used for diagonal matrices to save writing space.  5 A= 1 7 0 0 . m. There is no simple test for greater-than or less-than.6. If the inequality test fails the matrices are said to be unequal and we write A = B. The following matrix of order 4 is diagonal:  14  0 D= 0 0  0 0 0 −6 0 0  . Example B.7. (B.e.14) The rows of AT are the columns of A.Appendix B: LINEAR ALGEBRA: MATRICES Example B. An upper triangular matrix is a square matrix in which all elements underneath the main diagonal vanish. . for all i = 1. Two matrices of different order cannot be compared for equality or inequality. 0 0 0 0 0 3 (B. 4 AT = 5 7 0 1 0 4 . .13) §B. We then write A = B. .12) 3 ].2. Equality Two matrices A and B of same order m × n are said to be equal if and only if all of their components are equal: ai j = bi j . (AT )T = A. −1 B–7 3A =  3 12 −9 6 0 . and associative: A+(B+C) = (A + B) + C. Scalar Multiplication Multiplication of a matrix A by a scalar c is defined by means of the relation def c A = [cai j ] (B. For matrix subtraction. The sum of two matrices of the same order. This operation is often called scaling of a matrix.2. Division of a matrix by a nonzero scalar c is equivalent to multiplication by (1/c). If c = 0.3 MATRIX PRODUCTS Example B.3. Example B.9. respectively.2.4. A and B. (B.§B. A= 4 7 0 7 0 1 2 2 3 = AT . Addition and Subtraction The simplest operation acting on two matrices is addition.20) .19) That is. −3 (B. is written A + B and defined to be the matrix def A + B = [ai j + bi j ].17) Like vector addition.18) §B. For n = 1 or m = 1 the operation reduces to the addition of two column or row vectors. The sum of  1 A= 4 −3 0 2 −1  and 6 B= 7 3 −2 −3 5  7 is A + B = 11 0 0 −3 . Example B. replace + by − in the definition (?). W= 0 −7 0 7 0 2 0 −2 0 = −WT (B. the result is the null matrix. matrix addition is commutative: A+B = B+A.16) §B. 4 (B. each entry of the matrix is multiplied by c.10. If A=  1 −3 4 2 0 .11. This so-called matrix-vector product merits special attention because it occurs very frequently in the applications.3.3.1.21) to mean the linear transformation def yi = n . Let A = [ai j ] be an m × n matrix. (B. x = {x j } a column vector of order n. Matrix by Vector Product Before describing the general matrix product of two matrices. let us treat the particular case in which the second matrix is a column vector. Matrix Products §B. The matrix-vector product is symbolically written y = Ax.Appendix B: LINEAR ALGEBRA: MATRICES §B. and y = {yi } a column vector of order m. 23) This product definition is not arbitrary but emanates from the analytical and geometric properties of entities represented by matrices and vectors.12. We thus see that the present definition properly embodies previous cases. B = [b jk ] is a matrix of order n × p. the column dimension of the matrix A (called the premultiplicand) must equal the dimension of the vector x (called the post-multiplicand). and consider the operations involved in computing the product C of two matrices A and B: C = A B. m. and the matrixvector product reduces to the inner product defined by equation (A. (B.3. The associative and commutative properties of the matrix-vector product fall under the rules of the more general matrix-matrix product discussed next.15) of Appendix A. .24) Here A = [ai j ] is a matrix of order m × n. the matrix formally reduces to a row vector. The result of this operation is a one-dimensional vector or scalar. The product of a 2 × 3 matrix and a vector of order 3 is a vector of order 2:  1 4 −3 2 0 −1 1 2 3  −5 = 5 (B. the reverse product xA does not make sense unless m = n = 1. For the product definition to make sense.22) j=1 Example B. . §B. Matrix by Matrix Product We now pass to the most general matrix-by-matrix product. . i = 1. If the row dimension m of A is one. and C = [cik ] is a matrix of order m × p. . sc ai j x j = ai j x j . For example.2. The entries of the result matrix C are defined by the formula def cik = n . (B. . . m. . . . . . . sc ai j b jk = ai j b jk . j=1 B–8 k = 1. p. (B.25) . i = 1. their product is undefined. Matrices that satisfy this rule are said to be product-conforming.  . (B. . k)th entry of C is computed by taking the inner product of the i th row of A with the k th column of B.  .3 MATRIX PRODUCTS We see that the (i.. . p = 1. . it is not generally the same as AB. k)th entry of C.  .  . Example B.29) . and the products are summed and stored in the (i. The following mnemonic notation often helps in remembering this rule: C = A m× p (B..  . . Matrix A is called the pre-multiplicand and is said to premultiply B. 5 B= 2 4 0 1 3 1 0 −1 −7 −5 0 4 (B.27) .26) B m×n n× p For the matrix-by-vector case treated in the preceding subsection..    . am1 · · · amn Each entry in row i of A is multiplied by the corresponding entry in column k of B (note the arrows). Matrix B is called the postmultiplicand and is said to postmultiply A. This careful distinction on which matrix comes first is a consequence of the absence of commutativity: even if BA exists (it only does if m = n). For hand computations.. If the two matrices do not conform. = C = AB (B. or conforming for short. the matrix product is most conveniently organized by the so-called Falk’s scheme:   b11 · · · bik · · · b1 p  . .      ai1 → ain     · · · cik  .§B.  .13..  . . For this definition to work and the product be possible.. B–9 0 −1 −7 −14 −34 −5 0 4 −7 0 =B . . . To illustrate Falk’s scheme..   .28) The matrices are conforming because the column dimension of A and the row dimension of B are the same (3).. . the column dimension of A must be the same as the row dimension of B..  · · · bnk · · · bnp b a   n1  · · · a 11 1n .   . let us form the product C = AB of the following matrices A=  3 4 0 −1 2 . We arrange the computations as shown below: A=  3 0 4 −1 2 5 2 4 0  6 4 1 3 1 5 6 Here 3 × 2 + 0 × 4 + 2 × 0 = 6 and so on.. ↓ . 4. If AB = BA. c. Distributivity. Example B. A3 = AAA = A2 A = AA2 . A square matrix A that satisfies A = A2 is called idempotent.34) . the product AA is called the square of A and is denoted by A2 . Note that for this definition to make sense. The distributive law also holds: If B and C are matrices of the same order. which is studied in Appendix C. Transpose of a Product.14.3.Appendix B: LINEAR ALGEBRA: MATRICES §B.32) commute for any a. then A (B + C) = AB + AC. can be defined with the help of the matrix spectral form and requires the notion of eigensystem covered in Appendix D. We shall see later that this condition characterizes the so-called projector matrices. the matrices A and B are said to commute. §B.30) Hence we may delete the parentheses and simply write ABC. else the factors would not be conforming. The associative law is verified: A(BC) = (AB)C. . Other positive-integer powers can be defined in an analogous manner. Matrix Product Properties Associativity. In general A and B commute if they share the same eigensystem. The transpose of a matrix product is equal to the product of the transposes of the operands taken in reverse order: (A B)T = BT AT . B–10 (B. where m can be a real or complex scalar. This definition does not encompass negative powers. Matrices  a A= b b . A and B = A − βI commute for any square matrix A. (B. The commutativity law of scalar multiplication does not generally hold. then the products AB and BA are both possible but in general AB = BA. c−β (B. c  a−β B= b b . Matrix Powers If A = B. For example. M N)T = NT MT . A−1 denotes the inverse of matrix A. One important case is when A and B are diagonal.3. Similarly. The general power Am . A must be a square matrix. . b. A square matrix A whose p th power is the null matrix is called p-nilpotent.31) Commutativity. . (B. If A and B are square matrices of the same order. β.3. CT BT AT . (B.33) The general transposition formula for an arbitrary product sequence is (A B C . . and (B + C) A = BA + CA. More generally. 36) s = yT A x 1×n n×n n×1 This is called a bilinear form.42) .5 MATRIX ORTHOGONALITY Congruential Transformation. (B. Such an operation is called a congruential transformation. then (B. The product of two symmetric matrices is not generally symmetric. respectively. m 2 . §B.36) and noting that the transpose of a scalar does not change. Example B. AT = A. .§B. The kinetic energy of a dynamic system consisting of three point masses m 1 . (B.15. . Then the following triple product produces a scalar result: (B. x = y.35) S = AT B A. is T = 12 (m 1 v12 + m 2 v22 + m 3 v32 ).40) This can be expressed as the quadratic form (B. Bilinear and Quadratic Forms Let x and y be two column vectors of order n. If B is a symmetric matrix of order m and A is an arbitrary m × n matrix. Here M denotes the system mass matrix whereas v is the system velocity vector. and A a real square n × n matrix. Likewise it is possible that A = 0.4.37) s = xT AT y = yT Ax. Loss of Symmetry. but A p = 0. Matrix A is called the kernel of the form. If A is symmetric and vectors x and y coalesce. v= v1 v2 v3 .41) T = 12 vT M v. v2 and v3 . Null Matrices may have Non-null Divisors. . is a symmetric matrix of order n. Transposing both sides of a quadratic form reproduces the same equation. . A2 = 0.38) the bilinear form becomes a quadratic form (B. Transposing both sides of (B. The matrix product AB can be zero although A = 0 and B = 0. i.39) s = xT Ax. B–11 (B.e. m 3 moving in one dimension with velocities v1 . It occurs very frequently in finite element analysis when changing coordinate bases because such a transformation preserves energy. in which M= m1 0 0 0 m2 0 0 0 m3 . we obtain the result (B. P B is called a filter and the operation (B.44) in which I is the m × m identity matrix.4 It is easily verified that A Matrix A are orthogonal: ˜ B = A B − A B (BT B)−1 (BT B) = A B − A B = 0. If B has more columns than rows.. (B. How can A be orthogonalized with respect to B so that (B.Appendix B: LINEAR ALGEBRA: MATRICES §B. “nonsingular” and “rank” mean or what (.46) A ˜ and B ˜ is called the projection of A onto the null space of B. Consequently.43) is verified? Suppose that B is m × n with m ≥ n and that BT B is nonsingular (equivalently. A is k × m whereas B is m × n. 5 See e. ˜ = PB A PB .596]. Since P B = PTB . which is a topic beyond the scope of this Appendix. please read §D. If their product is the null matrix C = A B = 0.45) It follows that P B projects B onto its null space.3 Then form the m × m orthogonal projector matrix. This is the generalization of the notions of vector orthogonality discussed in the previous Appendix. 3 If you are not sure what “singular”. which preserves symmetry. For example. notably FEM. B–12 . A is m < n.48) is a congruential transformation.5. Matrix Orthogonality Let A and B be two product-conforming real matrices.46) is called filtering. the textbooks [77. §B. the operation (B.4. matrix A is square symmetric and it is desirable to preserve ˜ That can be done by pre-and postmultiplying by the projector: symmetry in A.47) ˜ via (B. A (B. (B. A similar difficulty arises if m ≥ n but BT B is singular. Matrix Orthogonalization Via Projectors The matrix orthogonalization problem can be stated as follows. Product conforming matrices A and B are given but their product is not zero. Such cases require treatment using generalized inverses. the projector is square symmetric.44) and (B. as may be expected. that If B is square and nonsingular. Postmultiplying A by P B yields ˜ = A P B = A − A B (BT B)−1 BT .)−1 stands for. (B.5 In some applications. forming A ˜ = 0. (B.1.44) cannot be constructed since B BT is necessarily singular.5. Note that P B B = B − B (BT B)−1 (BT B) = B − B = 0. B has full rank).g. 4 In contexts such as control and signal processing.46) solves the orthogonalization problem. A (B.48) Since PTB = P B . the projector (B.43) the matrices are said to be orthogonal. Likewise BT P B = 0. or simply projector P B = I − B (BT B)−1 BT . Repeating the process one sees that PnB = P B . This is shown in the paper [235].§B. P B has m − n unit eigenvalues and n zero eigenvalues. B–13 .5 MATRIX ORTHOGONALITY §B.49) shows that the projector matrix is idempotent. Forming its square as P2B = P B P B = I − 2B (BT B)−1 BT + B (BT B)−1 BT B (BT B)−1 BT = I − 2B (BT B)−1 BT + B (BT B)−1 BT = I − B (BT B)−1 BT = P B .2. in which various applications of orthogonal projectors and orthogonalization to multilevel FEM computations are covered in detail.5. in which n is an arbitrary nonnegative integer. If B is m × n with m ≥ n and full rank n. Orthogonal Projector Properties . (B.44) are useful when checking out computations. The following properties of the projector (B. Hint: for (b) use the symmetry condition S = ST and (B.10 If A is square and antisymmetric.1 Given the three matrices A= 2 −1 2 4 1 0 2 3 1 5 −1 2   −2 0 . EXERCISE B. show that A2 is symmetric. EXERCISE B.33). 1 2 2  1 B= 4 −3 .9 Show that A2 only exists if and only if A is square.7 (Tougher) Prove the matrix product transposition rule (B.2) verify by direct computation that AB = BA.5 Given the square matrix A= 0 a 0 0 0 0 b c 0 (EB. EXERCISE B.4 Given the square matrices A= 3 1 3 −1 0 −2 2 3 −5 .8 If A is an arbitrary m × n matrix. EXERCISE B. and use the matrix product definition (B.31). Is BA also null? EXERCISE B. Hint: do BC first. Hint: start from A = −AT and apply the results of Exercise B. Hint: call C = (AB)T .4) verify that AB = 0 although A = 0 and B = 0. C=  −3 0 1 2 2 2 (EB.3) (note that B is symmetric) compute S = AT BA. then premultiply that by A. EXERCISE B. D = BT AT .6 Can a diagonal matrix be antisymmetric? EXERCISE B. EXERCISE B. 2 3 B= 1 0 −2 (EB. show: (a) both products AT A and AAT are possible. and verify that S is symmetric. B= 3 −1 4 −1 2 0 4 0 0 (EB.5) show by direct computation that A2 = 0 but A3 = 0. B–14 . EXERCISE B.1) compute the product D = ABC by hand using Falk’s scheme. B= 3 7 −1 −6 −14 2 −3 −7 1 (EB.3 Given the matrices A= 1 −1 2 0 2 0 .25) to show that the generic entries of C and D agree.Appendix B: LINEAR ALGEBRA: MATRICES Homework Exercises for Appendix B: Matrices EXERCISE B.8.2 Given the square matrices  1 A= −4  3 . and (b) both products are square and symmetric. 2 AB = EXERCISE B. EXERCISE B.13) n×m B = [b jk ].14) . 0 0 = AB = 0 0 = 0.9) A3 = AAA = (EB. Now call C = [cki ] = (AB)T .7) −6 . n and 1 . n× p p×n Indices i.8) which is symmetric. m×n AT = [a ji ]. (EB. . . 1 .12) BT = [bk j ] (EB.Solutions to Exercises Homework Exercises for Appendix B . p×m B–15 (EB. .6 Only if it is the null matrix. . .Solutions  EXERCISE B. p.5 A2 = AA = 0 0 ac 0 0 0 0 0 0 −6 −14 2 −6 −14 2 0 0 0 3 7 −1 −1 2 0 0 3 0 −2 −5 0 3 7 −1 3 7 −1 −3 −7 = B 1 . −2 18 32 = ABC = D −4  −6 3 = BA = −4 9 6 −10  (EB. like B. .3  1 −3 0  2 −2 −6  1 −3  6 −12 1 9 6 −36 23 −27 −3 3 2 =C 2  0 2 = BC 10  .10) 0 0 0 0 0 0 0 0 0 =0 (EB. 8 23 S = A BA = −6 T 9 −1 (EB. j and k run over 1 .1   2 −2 0  1 B= 4 1 −3 2 2 4 1 0 A = −1 2 3 1 2 5 −1 2 EXERCISE B.4 A= 3 1 3 However.7 To avoid “indexing indigestion” let us carefully specify the dimensions of the given matrices and their transposes: A = [ai j ]. .6) (EB.11) EXERCISE B. BA = EXERCISE B. (EB. respectively. EXERCISE B. m. cki = n . p×m From the definition of matrix product.Appendix B: LINEAR ALGEBRA: MATRICES D = [dki ] = BT AT . 15) (EB. ai j b jk .16) j=1 dki = n . (EB. b jk ai j = j=1 n . the column dimension n of the premultiplicand A must equal the row dimension m of the postmultiplicand A. B–16 . Next we write the two products to be investigated: AT A .8 (a) If A is m × n. BT = A.21) Since C = CT . and let’s go over the first one again: CT = (AB)T = BT AT = AAT = AB = C. and. ai j b jk = cki . to do it more leisurely. Hence m = n and A must be square. EXERCISE B. Same mechanics for the second one. (AT A)T = AT (AT )T = AT A. and the statement is proved. (EB.9 Let A be m × n. call B = AT . finally. so is A2 .19) (AAT )T = (AT )T AT = AAT .7. AT is n × m. EXERCISE B. Since the negated of a symmetric matrix is symmetric.22) But from Exercise B. (EB.18) In both cases the column dimension of the premultiplicand is equal to the row dimension of the postmultiplicand. (EB. For A2 = AA to exist. n×m m×n A AT m×n n×m (EB. transposing twice gives back the original.8 we know that AAT is symmetric. the transposed-product formula proved in Exercise B. (b) To verify symmetry we use three results. (EB. First. C = AB. Therefore both products are possible. (EB. second.10 Premultiply both sides of A = −AT by A (which is always possible because A is square): A2 = AA = −AAT .20) Or. C = AAT is symmetric. EXERCISE B. the symmetry test: transpose equals original.17) j=1 Hence C = D for any A and B. C Continuum Mechanics Summary C–1 . . . . . §C. . . . . . . . .7. . . §C.4. . . . .2. . Principle of Virtual Work . . .7.5. . . Elastic Solids .6. . . . .4. §C. . . . . . .7. . . . §C. . §C.1.Appendix C: CONTINUUM MECHANICS SUMMARY TABLE OF CONTENTS Page §C. . Compatibility Equations The Stress Vector The Stress Tensor Equilibrium Equations Constitutive Equations §C.7. . . . .7.2. . . . . . . . . The Linear Strain Tensor . . .3.1.2. §C. . . The Engineering Notation . . .2. . . . . . §C. . Hyperelastic Constitutive Equations C–2 . Introduction The Strain-Displacement Equations §C. . The Strain Energy .2. . . . §C. .1. C–3 C–3 C–3 C–4 C–4 C–4 C–5 C–6 C–6 C–7 C–7 C–7 C–8 . . . §C.3. . . . . §C. . 2 THE STRAIN-DISPLACEMENT EQUATIONS §C. Then the infinitesimal strains are given by ei j = 12 (u i.i ) (C.3 + u 3.2.1 ) = + ∂ x2 ∂ x1   ∂u 3 1 1 ∂u 2 = 2 (u 2. Introduction This Appendix summarizes the basic relations of three-dimensional continuum mechanics for linear elastic solids.2 1 2 (C. j + u j.3 ) = 2 + ∂ x1 ∂ x3 1 (u 2 1.2 ) = 2 + ∂ x3 ∂ x2   ∂u 1 1 1 ∂u 3 = 2 (u 3.1 = e22 = u 2. The Strain-Displacement Equations Let u i (x j ) denote the components of the displacement vector field u(x j ).5) C–3 .2. The Linear Strain Tensor The infinitesimal or linear strain tensor in the xi coordinate system is  e = [ei j ] =  e11 e12 e22 symm  e13 e23  e33 (C.2 e33 = u 3. §C. Both indicial and full notations are used.1 + u 1.2) §C.1.1. constitutive and equilibrium equations.§C. which written in full is ∂u 1 ∂ x1 ∂u 2 = ∂ x2 ∂u 3 = ∂ x3 e11 = u 1.3) In another coordinate system x j related to xi by the transformation the strain components become xi = ai j x j (C.4) ei j = aim a jn emn (C. These include strain-displacement.3 e12 e23 e31   ∂u 2 ∂u 1 = + u 2.1) These are the components of the strain tensor [ei j ] = e. Appendix C: CONTINUUM MECHANICS SUMMARY §C.2.2. The Engineering Notation The standard engineering notation uses x, y, z for x1 , x2 , x3 and u x , u y , u z for u 1 , u 2 , u 3 , respectively. Then the engineering strains are related to the displacements by ∂u x ∂x ∂u y e yy = e22 = ∂y ∂u z ezz = e33 = ∂z ∂u y ∂u x γx y = 2e12 = + ∂y ∂x ∂u y ∂u z γ yz = 2e23 = + ∂z ∂y ∂u z ∂u x + γzx = 2e31 = ∂x ∂z ex x = e11 = (C.6) The linear strain tensor in terms of engineering strains is  [e] =  1 γ 2 xy ex x e yy symm 1 γ 2 xz 1 γ 2 yz ezz   (C.7) §C.3. Compatibility Equations The strain tensor e has 6 independent components. The displacement field has 3 independent components. It follows that there must be 3 independent conditions between the ei j . These expressions arise from the condition of compatibility of deformation. In the three-dimensional case these compatibility equations are ei j,k + ek,i j = eik, j + e j,ik (C.8) For the two dimensional case only one equation survives e11,22 + e22,11 = 2e12,12 (C.9) ∂ 2 e yy ∂ 2 γx y ∂ 2 ex x + = ∂ y2 ∂x2 ∂x ∂ y (C.10) which in standard notation is C–4 §C.5 ;; ;; ;; THE STRESS TENSOR ∆t ∆m n P cu tti ng pl an e ∆A Figure C.1. Plane cut through a body for defining the interior force resultants at point P. §C.4. The Stress Vector Consider a continuum body and an interior point P(xi ). Make a cut through P with a plane with exterior normal n, as illustrated in Figure C.1. The stress vector at P for direction n is defined as t , A→0 A where A is a differential area surrounding P on the cutting plane (see Figure C.1). tn = lim (C.11) The couple stress vector for direction n is m . (C.12) A→0 A It is optional to include mn in the theory of stress. Doing so leads to the so-called polar material models. In classical continuum mechanics it is generally assumed that mn = 0, which corresponds to non-polar materials. Polar material models are generally considered only when continua are subjected to strong electromagnetic fields. mn = lim §C.5. The Stress Tensor Consideration of the equilibrium of an elemental tetrahedron at P whose faces are normal to x1 , x2 , x3 and n leads to the expression ti = σi j n j , (C.13) where ti is the component of t in the xi direction, and n j are the components of n. The nine values σi j are the components of the Cauchy stress tensor  σ = [σi j ] = σ11 σ21 σ31 C–5 σ12 σ22 σ32 σ13 σ23 σ33 . (C.14) Appendix C: CONTINUUM MECHANICS SUMMARY For non-polar materials this tensor is symmetric. That is, σi j = σ ji . §C.6. Equilibrium Equations Consider the equilibrium of a body of volume V and surface S subject to the following actions (a) Body force field f of components bi in V (b) Acceleration field a = d 2 u/dt 2 = u¨ (t = time) of components ai in V (c) Stress vectors t of components ti on S Dynamic equilibrium along any direction xi requires ti d S + S bi d V = V ρai d V, where ρ is the body density. Substitute ti = σi j n j in the surface integral: σi j n j d S + bi d V = ρai d V. S (C.15) V V (C.16) V To transform the surface integral to a volume integral we use Gauss’ divergence theorem. For any vector field a: a.n d S = div.a d V. (C.17) S or in component form V ∂a j d V. S V ∂x j Consequently the equilibrium integral (C.15) may be reduced to [σi j, j + bi − ρai ] d V = 0, ajn j dS = (C.18) (C.19) V for an arbitrary volume. Because the volume is arbitrary we must have σi j, j + bi − ρai = 0. (C.20) These are the three differential equations of dynamic equilibrium, which are obtained by setting the free index i to 1, 2 and 3. These are also called the internal equilibrium equations, or balance equations. If the medium is at rest or moving uniformly with respect to an inertial frame, the accelerations vanish and we obtain the equations of static equilibrium σi j, j + bi = 0. (C.21) Example C.1. If i = 1 the first static equilibrium equation along axis x 1 is σ1 j, j + b1 = 0 (C.22) or, written in full ∂σ12 ∂σ13 ∂σ11 + + + b1 = 0. ∂ x1 ∂ x2 ∂ x3 In conventional (engineering) notation: ∂τx y ∂σx x ∂τx z + + + bx = 0. ∂x ∂y ∂z C–6 (C.23) (C.24) §C.7 CONSTITUTIVE EQUATIONS §C.7. Constitutive Equations Constitutive equations characterize the behavior of the material of mechanical bodies. These equations are relations that constrain the space of deformations of a body (as defined by the strain tensor) and the state of internal forces (as defined by the stress tensor). The relations hold at each point of the body. They are generally partial differential equations, or even integrodifferential equations, in space and time. The simplest type of constitutive equations are homogeneous linear algebraic relations that connect the stress and stress tensors at each point. This type of constitutive equation characterize the linear elastic solids, which are the only ones we shall consider in this course. §C.7.1. Elastic Solids An elastic solid is a body characterized by two configurations: (1) The natural state or undeformed state, which is taken by the solid in the absence of applied forces (2) The deformed state, attainable by any reversible process. The concepts just outlined are closely associated with the idea of stored energy, strain energy or stress energy. This expresses mathematically that the behavior of an elastic solid is independent of the preceding history of the material. In other words, the state of stress depends only on the state of strain, and not on the path followed to get to that strain. §C.7.2. The Strain Energy Let us define U as the strain energy per unit of deformed volume, also called the strain energy density. This is generally a function of position (xi ) and of the deformation of the body at that position. Since in linear elasticity the deformation may be characterized by the strain tensor i j U = U(xi , ei j ). (C.25) Additional properties of this function are: (a) U is a scalar invariant: it is unaffected by rigid body displacements and by the orientation of the global RCC system. (b) If U is independent of xi over a volume V , the material is said to be homogeneous in V . (c) The material is said to be isotropic if the stress-strain law is independent of directions in the material. If the material is isotropic, the strain energy density must be a function only of the invariants of the strain tensor. Remark C.1. Isotropy must not be confused with invariance. All materials in classical mechanics satisfy the invariance principle (material properties do not depend on the observer), but not all materials are isotropic. C–7 Appendix C: CONTINUUM MECHANICS SUMMARY §C.7.3. Principle of Virtual Work Consider a body in static equilibrium. The principle of virtual work (PVW) states that the virtual work done by all forces acting on that body during a virtual displacement* δu must be zero. Mathematically, δWi + δW = 0, (C.26) where Wi and W are the virtual work done by the internal and external forces, respectively. The principle can be derived mathematically by taking the equilibrium equations and stress boundary conditions σi j, j + f i = 0, σi j n j = tˆi , (C.27) multiply the first by δu i , integrate over V and apply the divergence theorem which for symmetric σi j yields 1 (σi j, j + f i ) δ u¯ = [−σi j δ 2 (u i, j + u j,i ) + f i δu i ] d V + σi j n j δu i d S = 0. (C.28) V V S Split the surface integral over St ∪ Su . The integral over the latter vanishes. The former can be transformed using the second of (F.3) weighted by δu i and integrated over St to produce tˆi δu i d S. σi j δei j d V = f i δu i + (C.29) V V St But δWi = −δU , where U is the total stored strain energy: U= U d V. (C.30) V Comparing with (C.5) we get σi j δei j d V, δU = δU = σi j δei j . (C.31) V §C.7.4. Hyperelastic Constitutive Equations For a homogeneous linear elastic body possessing a strain energy density (such material is called “hyperelastic” in the literature) (C.32) U = U(ei j ). δU = ∂U ∂U ∂U δei j = δe11 + δe12 + · · · = σi j δei j . ∂ei j ∂e11 ∂e12 Since δU = σi j δei j we must have σi j = ∂U . ∂ei j (C.33) (C.34) * A virtual displacement is a change in the geometric configuration of the body compatible with all kinematic constraints, made while keeping all forces and stress acting on the body frozen. C–8 §C.7 CONSTITUTIVE EQUATIONS These are the constitutive equations of a linear hyperelastic material. For an isotropic linear elastic material, U must be a quadratic form in ei j that preserves the invariants of the strain tensor. It is shown in books on elasticity that this condition leads to the generalized Hooke’s law (C.35) σi j = λeii δi j + 2µei j . Here λ and µ are called the Lam´e coefficients; both of which have dimensions of stress. In engineering applications the material coefficients E, G, and ν (modulus of elasticity, shear modulus, and Poissons’s ratio, respectively) are more commonly used. These are related to λ and µ by E= µ(3λ + 2µ) , λ+µ ν= λ , 2(λ + µ) G= E . 2(1 + ν) (C.36) Conversely, λ= Eν , (1 + ν)(1 − 2ν) C–9 µ=G= E . 2(1 + ν) (C.37) D Linear Algebra: Determinants, Inverses, Rank D–1 Appendix D: LINEAR ALGEBRA: DETERMINANTS, INVERSES, RANK TABLE OF CONTENTS Page §D.1. §D.2. §D.3. §D.4. §D.5. §D.6. §D. §D. Introduction Determinants §D.2.1. Some Properties of Determinants . . . . . . . . §D.2.2. Cramer’s Rule . . . . . . . . . . . . . . §D.2.3. Homogeneous Systems . . . . . . . . . . . Singular Matrices, Rank §D.3.1. Rank Deficiency . . . . . . . . . . . . . . §D.3.2. Rank of Matrix Sums and Products . . . . . . . §D.3.3. Singular Systems: Particular and Homogeneous Solutions §D.3.4. Rank of Rectangular Matrices . . . . . . . . . Matrix Inversion §D.4.1. Explicit Computation of Inverses . . . . . . . . §D.4.2. Some Properties of the Inverse . . . . . . . . . The Inverse of a Sum of Matrices The Sherman-Morrison and Related Formulas §D.6.1. The Sherman-Morrison Formula . . . . . . . . §D.6.2. The Woodbury Formula . . . . . . . . . . . §D.6.3. Formulas for Modified Determinants . . . . . . . Notes and Bibliography . . . . . . . . . . . . . . . . . . . Exercises . . . . . . . . . . . . . . . . . . . . D–2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–3 D–3 D–3 D–5 D–6 D–6 D–7 D–7 D–7 D–8 D–8 D–9 D–10 D–11 D–12 D–12 D–12 D–13 D–13 D–14 §D.2 DETERMINANTS §D.1. Introduction This Chapter discusses more specialized properties of matrices, such as determinants, inverses and rank. These apply only to square matrices unless extension to rectangular matrices is explicitly stated. §D.2. Determinants The determinant of a square matrix A = [ai j ] is a number denoted by |A| or det(A), through which important properties such as singularity can be briefly characterized. This number is defined as the following function of the matrix elements:  (D.1) |A| = det(A) = ± a1 j1 a2 j2 . . . an jn , where the column indices j1 , j2 , . . . jn are taken from the set {1, 2, . . . n}, with no repetitions allowed. The plus (minus) sign is taken if the permutation ( j1 j2 . . . jn ) is even (odd). Example D.1. For a 2 × 2 matrix,   a11 a12  a  = a11 a22 − a12 a21 . a 21 22 (D.2) Example D.2. For a 3 × 3 matrix,   a11 a12 a13    a21 a22 a23  = a11 a22 a33 + a12 a23 a31 + a13 a21 a32 − a13 a22 a31 − a12 a21 a33 − a11 a23 a32 . a a a  31 32 (D.3) 33 Remark D.1. The concept of determinant is not applicable to rectangular matrices or to vectors. Thus the notation |x| for a vector x can be reserved for its magnitude (as in Appendix A) without risk of confusion. Remark D.2. Inasmuch as the product (D.1) contains n! terms, the calculation of |A| from the definition is impractical for general matrices whose order exceeds 3 or 4. For example, if n = 10, the product (D.1) contains 10! = 3, 628, 800 terms, each involving 9 multiplications, so over 30 million floating-point operations would be required to evaluate |A| according to that definition. A more practical method based on matrix decomposition is described in Remark D.3. §D.2.1. Some Properties of Determinants Some useful rules associated with the calculus of determinants are listed next. I. Rows and columns can be interchanged without affecting the value of a determinant. Consequently (D.4) |A| = |AT |. II. If two rows, or two columns, are interchanged the sign of the determinant is reversed. For example:     3  1 −2  4    . (D.5)  1 −2  = −  3 4 D–3 Appendix D: LINEAR ALGEBRA: DETERMINANTS, INVERSES, RANK III. If a row (or column) is changed by adding to or subtracting from its elements the corresponding elements of any other row (or column) the determinant remains unaltered. For example:      3 4   3 + 1 4 − 2   4 2   = = −10. (D.6)  1 −2  =  1 −2   1 −2  IV. If the elements in any row (or column) have a common factor α then the determinant equals the determinant of the corresponding matrix in which α = 1, multiplied by α. For example:      6  3 8 4     (D.7)  1 −2  = 2  1 −2  = 2 × (−10) = −20. V. When at least one row (or column) of a matrix is a linear combination of the other rows (or columns) the determinant is zero. Conversely, if the determinant is zero, then at least one row and one column are linearly dependent on the other rows and columns, respectively. For example, consider   2 1 3   (D.8) 2 −1  . 1   2 −1 3 This determinant is zero because the first column is a linear combination of the second and third columns: column 1 = column 2 + column 3. (D.9) Similarly, there is a linear dependence between the rows which is given by the relation row 1 = VI. 7 8 row 2 + 4 5 row 3. (D.10) The determinant of an upper triangular or lower triangular matrix is the product of the main diagonal entries. For example,   1 3 2   (D.11)  0 2 −1  = 3 × 2 × 4 = 24.   0 0 4 This rule is easily verified from the definition (D.1) because all terms vanish except j1 = 1, j2 = 2, . . . jn = n, which is the product of the main diagonal entries. Diagonal matrices are a particular case of this rule. VII. The determinant of the product of two square matrices is the product of the individual determinants: |AB| = |A| |B|. (D.12) The proof requires the concept of triangular decomposition, which is covered in the Remark below. This rule can be generalized to any number of factors. One immediate application is to matrix powers: |A2 | = |A||A| = |A|2 , and more generally |An | = |A|n for integer n. VIII. The determinant of the transpose of a matrix is the same as that of the original matrix: |AT | = |A|. (D.13) This rule can be directly verified from the definition of determinant, and also as direct consequence of Rule I. D–4 §D.2 DETERMINANTS Remark D.3. Rules VI and VII are the key to the practical evaluation of determinants. Any square nonsingular matrix A (where the qualifier “nonsingular” is explained in §D.3) can be decomposed as the product of two triangular factors A = LU, (D.14) in which L is unit lower triangular and U is upper triangular. This is called a LU triangularization, LU factorization or LU decomposition. It can be carried out in O(n 3 ) floating point operations. According to rule VII: |A| = |L| |U|. (D.15) According to rule VI, |L| = 1 and |U| = u 11 u 22 . . . u nn . The last operation requires only O(n) operations. Thus the evaluation of |A| is dominated by the effort involved in computing the factorization (D.14). For n = 10, that effort is approximately 103 = 1000 floating-point operations, compared to approximately 3 × 107 from the naive application of the definition (D.1), as noted in Remark D.2. Thus the LU-based method is roughly 30, 000 times faster for that modest matrix order, and the ratio increases exponentially for large n. §D.2.2. Cramer’s Rule Cramer’s rule provides a recipe for solving linear algebraic equations directly in terms of determinants. Let the simultaneous equations be as usual denoted as A x = y, (D.16) in which A is a given n × n matrix, y is a given n × 1 vector, and x is the n × 1 vector of unknowns. The explicit form of (D.16) is Equation (A.1) of Appendix A, with n = m. The explicit solution for the components x1 , x2 . . ., xn of x in terms of determinants is x1 =  y1  y2  .  .  .  yn a12 a22 .. . a13 a23 .. . an2 an3 |A|  a1n   a2n      . . . ann ... ... .. . , x2 =  a11  a21  .  .  .  an1 y1 y2 .. . a13 a23 .. . yn an3 |A|  a1n   a2n      . . . ann ... ... .. . , ... (D.17) The rule can be remembered as follows: in the numerator of the quotient for x j , replace the j th column of A by the right-hand side y. This method of solving simultaneous equations is known as Cramer’s rule. Because the explicit computation of determinants is impractical for n > 3 as explained in Remark C.3, direct use of the rule has practical value only for n = 2 and n = 3 (it is marginal for n = 4). But such small-order systems arise often in finite element calculations at the Gauss point level; consequently implementors should be aware of this rule for such applications. Example D.3. Solve the 3 × 3 linear system  5 3 1 2 2 0 1 0 2  x1 x2 x3 D–5   = 8 5 3 , (D.18) Appendix D: LINEAR ALGEBRA: DETERMINANTS, INVERSES, RANK by Cramer’s rule:  8  5 3 x1 =  5  3 1 2 2 0 2 2 0  1  0 6 2  = = 1,  1  6 0 2  5  3 1 x2 =  5  3 1 8 5 3 2 2 0  1  0 6 2  = = 1,  1  6 0 2 Example D.4. Solve the 2 × 2 linear algebraic system  by Cramer’s rule: x1 =  2+β −β   5 −β  0 1 + β  −β 1+β 5 + 5β = ,  2 + β −β  2 + 3β  −β 1 + β   x1 x2  x2 =  =  5  3 1 x3 =  5  3 1 2 2 0 2 2 0  8  5 6 3  = = 1.  1  6 0 2  5 0   2 + β 5  −β 0  (D.19) (D.20) 5β = .  2 + β −β  2 + 3β  −β 1 + β  (D.21) Remark D.4. Creamer’s rule importance has grown in symbolic computations carried out by computer algebra systems. This happens when the entries of A and y are algebraic expressions. For example the example system (D.20). In such cases Cramer’s rule may be competitive with factorization methods for up to moderate matrix orders, for example n ≤ 20. The reason is that determinantal products may be simplified on the fly. §D.2.3. Homogeneous Systems One immediate consequence of Cramer’s rule is what happens if y1 = y2 = . . . = yn = 0. (D.22) The linear equation systems with a null right hand side Ax = 0, (D.23) is called a homogeneous system. From the rule (D.17) we see that if |A| is nonzero, all solution components are zero, and consequently the only possible solution is the trivial one x = 0. The case in which |A| vanishes is discussed in the next section. §D.3. Singular Matrices, Rank If the determinant |A| of a n × n square matrix A ≡ An is zero, then the matrix is said to be singular. This means that at least one row and one column are linearly dependent on the others. If this row and column are removed, we are left with another matrix, say An−1 , to which we can apply the same criterion. If the determinant |An−1 | is zero, we can remove another row and column from it to get An−2 , and so on. Suppose that we eventually arrive at an r × r matrix Ar whose determinant is nonzero. Then matrix A is said to have rank r , and we write rank(A) = r . If the determinant of A is nonzero, then A is said to be nonsingular. The rank of a nonsingular n × n matrix is equal to n. D–6 §D.3 SINGULAR MATRICES, RANK Obviously the rank of AT is the same as that of A since it is only necessary to transpose “row” and ”column” in the definition. The notion of rank can be extended to rectangular matrices as outlined in section §C.2.4 below. That extension, however, is not important for the material covered here. Example D.5. The 3 × 3 matrix  A= 3 1 2 2 2 −1 has rank r = 3 because |A| = −3 = 0. 2 −1 3  Example D.6. The matrix  , (D.24)  3 2 1 (D.25) A= 1 2 −1 , 2 −1 3 already used as an example in §C.1.1 is singular because its first row and column may be expressed as linear combinations of the others through the relations (D.9) and (D.10). Removing the first row and column we are left with a 2 × 2 matrix whose determinant is 2 × 3 − (−1) × (−1) = 5 Consequently (D. and the expected rank is r = 4 − 2 = 2.28) .26) in which E I and L are nonzero scalars. Consequently this model is rank sufficient. (D. consider the two-node. §D.8. This is usually undesirable. 4-DOF. Bernoulli-Euler plane beam element stiffness derived in Chapter 12:  K= EI   L3 12 6L 4L 2 symm −12 −6L 12  6L 2L 2  . rank(AB) ≤ min(ra . if the rank of A is ra and the rank of B is rb . It may be verified that this 4 × 4 matrix has rank 2. Example D.2. and that the element possesses b independent rigid body modes. An an illustration of the foregoing rule. rank(A + B) ≤ ra + rb . That is. The number r − r¯ > 0 is called the rank deficiency. rb ). if the rank of A is ra and the rank of B is rb . Rank of Matrix Sums and Products In finite element analysis matrices are often built through sum and product combinations of simpler matrices.27) Regarding sums: the rank of a matrix sum cannot exceed the sum of ranks of the summand matrices.3. Rank Deficiency If the square matrix A is supposed to be of rank r but in fact has a smaller rank r¯ < r . the finite element model is said to be rank-deficient. D–7 (D. Two important rules apply to “rank propagation” through those combinations. Example D.= 0.7. The rank of the product of two square matrices A and B cannot exceed the smallest rank of the multiplicand matrices. −6L  2 4L (D.3. the matrix is said to be rank deficient. Then the expected rank of K is r = n − b.1. §D. Suppose that the unconstrained master stiffness matrix K of a finite element has order n.25) has rank r = 2. The number of rigid body modes is 2. If the actual rank is less than r . That is. 16) does not generally have a solution in the conventional sense. are called null eigenvectors of A.3. The rank r of A is the dimension of R(A). system (D. The dimension of N (A) is n − r.16) when the determinant of A vanishes.3. of the total solution x.4. . (D. i = 1. as follows.Appendix D: LINEAR ALGEBRA: DETERMINANTS. The components x p and xh are called the particular and homogeneous portions respectively. although least-square solutions can usually be constructed. D–8 . (The terminology: homogeneous solution and particular solution. If so. . Such systems often arise in the fitting of observation and measurement data. are often used. Let Z denote the n × d matrix obtained by collecting the zi as columns.27) and (D. real or complex. If y is not in the range of A. The reader is referred to the many textbooks in linear algebra for further details. So does the treatment of linear equation systems Ax = y in which A is rectangular.30) where w is an arbitrary d × 1 weighting vector. Cramer’s rule is of limited or no help in this situation.3. .28) generalize to the case of rectangular (but conforming) A and B. §D. where d ≥ 1 is the rank deficiency. The null space N (A) of A is the set of n-vectors z such that Az = 0. RANK §D. Using these definitions. rectangular matrices appear in change of basis through congruential transformations. there exists an nonzero x p such that y = Ax p . This statement can be easily verified by substituting this solution into Ax = y and noting that AZ vanishes. and in the treatment of multifreedom constraints. the product and sum rules (D.16) is in the range of A. that is.29) These d vectors. (D. then there exist d nonzero independent vectors zi . Mathematically: R(A) = {Ax : x ∈ C n }. (D. Singular Systems: Particular and Homogeneous Solutions Having introduced the notion of rank we can now discuss what happens to the linear system (D.) If y = 0 only the homogeneous portion remains. INVERSES. and form a basis for its null space.16) has either no solution or an infinite number of solutions. In finite element methods. Rank of Rectangular Matrices The notion of rank can be extended to rectangular matrices. To discuss this case further we note that if |A| = 0 and the rank of A is r = n − d. suitably orthonormalized. d such that A zi = 0. Its column range space R(A) is the subspace spanned by Ax where x is the set of all complex n-vectors. Let A be m × n. its general solution is x = x p + xh = x p + Zw. If y in (D. meaning that its rank is less than n. Example D. consider the matrix equation for multiple (m) right-hand sides: A X = Y. Practical methods for computing inverses are based on directly solving this equation. This direct inversion procedure is useful only for small matrix orders. In the examples below the explicit inversion formulas for second and third order matrices are listed.2). a22 A−1 = in which |A| is given by (D.36) In particular.38) .32) for m = 1. the solution of is X = A−1 .37) bi j = |A| in which A ji denotes the so-called adjoint of entry ai j of A. For order n = 2: A=  a11 a21  a12 . Matrix Inversion The inverse of a square nonsingular matrix A is represented by the symbol A−1 and is defined by the relation A A−1 = I. But occasionally the need arises for the explicit inverse of small matrices that appear in element level computations.31) The most important application of the concept of inverse is the solution of linear systems.32) Premultiplying both sides by A−1 we get the inverse relationship x = A−1 y. the inversion of Jacobian matrices at Gauss points. a22 (D.4.4 MATRIX INVERSION §D. The adjoint A ji is defined as the determinant of the submatrix of order (n − 1) × (n − 1) obtained by deleting the j th row and i th column of A.9.4. For example. §D. multiplied by (−1)i+ j . in the usual notation.1. Explicit Computation of Inverses The explicit calculation of matrix inverses is seldom needed in large matrix computations. The inverse relation that gives X as function of Y is X = A−1 Y. A general formula for elements of the inverse can be obtained by specializing Cramer’s rule to (?). (D.4. Suppose that. see Remark D. say 2 or 3. we have A x = y. (D. (D.§D. Let B = [bi j ] = A−1 . (D. Then A ji . or of constitutive matrices.35) A X = I. n×n n×m (D.34) n×m which reduces to (D. (D. (D. D–9 1  a22 |A| −a21  −a12 .33) More generally. RANK Example D.2. (D. For a diagonal matrix D in which all diagonal entries are nonzero.31). hence A−1 is also symmetric. For numerical work it is preferable to solve (D.11. a32 b11 =  b21 = −  31 32 b11 b21 b31 b12 b22 b32 b13 b23 b33  . a a a23  . 1 = |A|    a12 a13  . the general inversion formula based on Cramer’s rule becomes rapidly useless because it displays combinatorial complexity as noted in a previous Remark. III.41) If the order exceeds 3.  A= 2 3 1 4 2 1 1 0 1   . D−1 is again a diagonal matrix with entries 1/dii . D–10 . Assuming that A−1 exists. A−1 1 =− 8 1 −2 −1 −4 0 4 2 4 −10  . INVERSES. Those techniques are described in detail in linear algebra books.43) The inverse of a symmetric matrix is also symmetric. a22 b31 = 21 (D. (AT )−1 = A−1 = (A−1 )T . (D. This property generalizes to an arbitrary number of factors.Appendix D: LINEAR ALGEBRA: DETERMINANTS. a31 a33    a11 a12  b23 = −  .4. IV. a a  32 33  a13  a b22 =  11 . The verification is straightforward.40) in which |A| is given by (D. §D. II. a23  a13  . (D.44) This is easily verified by substituting both sides of (D.   a12 a  22 a b32 = −  11 a  21 a b33 =  11 a (D.3).39) into (D. see also Remark C.4.42) because (AA−1 ) = (AA−1 )T = (A−1 )T AT = I. The inverse of a matrix product is the reverse product of the inverses of the factors: (AB)−1 = B−1 A−1 . Example D. For order n = 3:  a11 a21 a31 A= where   a22 a  32 a b12 = −  21 a  31 a b13 =  21 a a12 a22 a32 a13 a23 a33  31  A−1 . Some Properties of the Inverse I. (D.39)  a13  . a33  a22  . the The inverse of its transpose is equal to the transpose of the inverse: (AT )−1 = (A−1 )T .36) after A is factored. a33  a23  .10. a23  a12  . Because of the previous rule. . Then solve the linear triangular systems: UY = I.. Snn then the inverse matrix is also block diagonal and is given by  S−1 0 0 . We consider here the expression of (A + B)−1 where both A and B are square and A is nonsingular. 0 0 0 . . §D. .. 0   . .. 0 0 0 .5. Snn (D. formulas for matrix sum inverses in terms of the summands are considerably more involved. . (D... On the other hand.5. Remark D...47) and the computed inverse A−1 appears in X. .. 0 S22 0 . −1 . . If S is a block diagonal matrix: S   S=   0 0 .. is generally preferred to save computing time and storage. 0  = diag [ S−1 ] . Given a nonsingular n ×n matrix A. . LX = Y.. The inverse of an upper triangular matrix is also an upper triangular matrix. .45) . Both inverses can be computed in O(n 2 ) floating-point operations. .. 0 0 S33 ..     = diag [ S ] .. (D..48) we may develop (A + B)−1 as follows:  −1 (A + B)−1 = A(I + A−1 B)−1 = (I + A−1 B)−1 A−1 B   = I − (I + A−1 B)−1 A−1 A−1 = A−1 − (I + A−1 B)−1 A−1 B A−1 . Using (D. . D–11 (D. 0  S −1   =   11 0 0 .. We begin from the identity introduced by Henderson and Searle in their review article [349]: (I + P)−1 = (I + P)−1 (I + P − P) = I − (I + P)−1 P. which can be obtained in O(n 3 ) operations. The Inverse of a Sum of Matrices The formula for the inverse of a matrix product: (A B)−1 = B−1 A−1 is not too different from its scalar counterpart: (ab)−1 = (1/a)(1/b) = (1/b)(1/a). For symmetric matrices the alternative decomposition A = LDLT . 0 S−1 33 . ii . One can overwrite I with Y and Y with X. .46) VI.. S−1 22 0 .5 V. and there are many variants. ii   (D.. The practical numerical calculation of inverses is based on triangular factorization..49) . . . where L is unit lower triangular and D is diagonal. except that factor order matters... 0 0 0 11 THE INVERSE OF A SUM OF MATRICES .  . The whole process can be completed in O(n 3 ) floating-point operations. The inverse of a lower triangular matrix is also a lower triangular matrix.  .. calculate its LU factorization A = LU.§D. . ..48) in which P is a square matrix. Assume that σ = 1 + β vT A−1 u . If B is also invertible.1. a discrete model) is changed by an amount expressable as a low-rank correction to the original model.49) may be further transformed by matrix manipulations as (A + B)−1 = A−1 − (I + A−1 B)−1 A−1 B A−1 = A−1 − A−1 (I + B A−1 )−1 B A−1 = A−1 − A−1 B (I + A−1 B)−1 A−1 (D. whereas u and v are two n-vectors and β an arbitrary scalar. in general.617]. e. This is a topic beyond the scope of this course.6.6.Appendix D: LINEAR ALGEBRA: DETERMINANTS. covered below. the third expresion in (D. The Sherman-Morrison and Related Formulas The Sherman-Morrison formula gives the inverse of a matrix modified by a rank-one matrix. (D. The last expression in (D.50) may be transformed to the a commonly used variant (A + B)−1 = A−1 − A−1 (A−1 + B−1 )−1 A−1 . it reduces to A−1 = A−1 ..121. In all of these forms B may be singular (or null).g. If B = 0. The Sherman-Morrison Formula Let A be a square n × n invertible matrix. INVERSES.51) The case of singular A may be handled using the notion of generalized inverses. The special case of B being of low rank merges with the Sherman-Morrison and Woodbury formulas. in which a finite-element (or. RANK Here B may be singular. in the textbooks [78. §D. In structural analysis these formulas are of interest for problems of structural modifications. The Woodbury formula extends the Sherman-Morrison formula to a modification of arbitrary rank. §D. which may be studied.50) = A−1 − A−1 B A−1 (I + B A−1 )−1 . The check B = β A also works. The proof is by direct multiplication. as in Exercise D. (For a history of this remarkable expression and its extensions. (D.52) When β = 1 this is called the Sherman-Morrison formula after [667]. If σ . which are quite important in many applications such as statistics and probability. Compute σ = 1 + βvT a. A + β u vT σ (D. Then −1  β = A−1 − A−1 u vT A−1 .5. For practical computation of the change one solves the linear systems Aa = u and Ab = v for a and b.52) gives the rank-one change to its inverse.) Since any rank-one correction to A can be written as βuvT . using the known A−1 . see the review paper by Henderson and Searle cited previously.= 0. D–12 . the change to A−1 is the dyadic −(β/σ )abT .= 0. 349]. §D. For inverses of matrix sums. (D. Formulas for Modified Determinants Let  A denote the adjoint of A. The proof is by direct multiplication. For an historical account of the topic and its close relation to the Schur complement. Taking the determinants from both sides of A + βuvT one obtains A u. in which case Σ ≡ σ is a scalar.6. For example.52) if k = 1.55) Similarly. The Woodbury Formula Let again A be a square n × n invertible matrix. Assume that the k × k matrix Σ = Ik + β VT A−1 U. in which Ik denotes the k × k identity matrix. one can show that if A is invertible. | A + βuvT | = | A| + β vT  (D. is invertible. A + βUVT (D. after [810]. Notes and Bibliography §D.§D. Bellman [68] and Strang [699]. whereas U and V are two n × k matrices with k ≤ n and β an arbitrary scalar.56) Notes and Bibliography Much of the material summarized here is available in expanded form in linear algebra textbooks. It reduces to (D.53) This is called the Woodbury formula.54) If A is invertible. | A + β UVT | = |A| | Ik + β VT A−1 U|.3. see the bibliography in Appendix P. replacing  A = |A| A−1 this becomes |A + β uvT | = |A| (1 + β vT A−1 u). and U and V are n × k matrices. Then −1  = A−1 − β A−1 UΣ−1 VT A−1 .6. (D.2. there are two SIAM Review articles: [325. D–13 . EXERCISE D. and let I denote the n × n identity matrix. EXERCISE D.11 Show that a triangular matrix is normal if and only if it is diagonal.13 Let A and T be real n × n matrices.d. It is a fundamental ingredient of many linear algebra algorithms. with T nonsingular. respectively. a Householder matrix.14 (Tough) Let A be m × n and B be n × m. EXERCISE D. Show that T−1 AT and A have the same eigenvalues. Inverses.53) by direct matrix multiplication.. This matrix is called a elementary Hermitian. EXERCISE D. A = −AT . INVERSES. or a reflector. D–14 . (This is called a similarity transformation in linear algebra). EXERCISE D. Show that all eigenvalues of A are purely imaginary or zero.2) H = I − 2uuT is orthogonal: H H = I. EXERCISE D. Equate the results for B. RANK Exercises for Appendix D: Determinants.3 Let u denote a real n-vector normalized to unit length. trace(AT A) = n  n  i=1 ai2j (ED. Show that if the entries of A are real. EXERCISE D. and eliminating first C and then B. which are generally complex. that is. have unit modulus.9 Show that if A is p. and idempotent: H = H. EXERCISE D. so that uT u = 1 and I denote the n × n identity matrix. EXERCISE D. AT A exists and is nonnegative.7 Show that the eigenvalues of a real symmetric square matrix are real.2 Let u and v denote real n-vectors normalized to unit length. and that the eigenvectors are real vectors. for example the QR algorithm for finding eigenvalues. show that det(cA) = cn det A.1 If A is a square matrix of order n and c a scalar. so that uT u = 1 and vT v = 1.12 Let A be a real orthogonal matrix.4 The trace of a n × n square matrix A. Show that all of its eigenvalues λi .4) V T Ik C 0 in which Ik and In denote the identy matrices of orders k and n. Show that det(I − uvT ) = 1 − vT u (ED. EXERCISE D. Show that (ED.3) j=1 EXERCISE D. Solve (D.10 Show that for any real m × n matrix A.53) for β = 1 by considering the following block bordered system      A U B I = n (ED.8 Let the n real eigenvalues λi of a real n × n symmetric matrix A be classified into two subsets: r eigenvalues are nonzero whereas n − r are zero. Show that A has rank r . T 2 EXERCISE D. denoted trace(A) is the sum n i=1 aii of its diagonal coefficients. EXERCISE D.15 Let A be real skew-symmetric.1) EXERCISE D.6 Prove the Sherman-Morrison formula (D.56) two ways: eliminating first B and then C. Rank EXERCISE D.5 Prove the Sherman-Morrison formula (D. Show that the nonzero eigenvalues of AB are the same as those of BA (Kahan). Ax = 0 implies that x = 0.Appendix D: LINEAR ALGEBRA: DETERMINANTS. ) Show that if T1 and T2 are any two Toeplitz matrices. (They arise in finite difference or finite element discretizations of regular one-dimensional grids.17 Let P be a real square matrix that satisfies P2 = P. is orthogonal. Show that U = (I + A)−1 (I − A).18 The necessary and sufficient condition for two square matrices to commute is that they have the same eigenvectors. called a Cayley transformation. EXERCISE D. Hint: do a Fourier transform to show that the eigenvectors of any Toeplitz matrix are of the form {eiωnh }. and also orthogonal projectors. EXERCISE D. EXERCISE D. they commute: T1 T2 = T2 T1 .Exercises EXERCISE D.19 A matrix whose elements are equal on any line parallel to the main diagonal is called a Toeplitz matrix. Show that all eigenvalues of P are either zero or one.5) Such matrices are called idempotent. (ED. that is. D–15 . then apply the previous Exercise.16 Let A be real skew-symmetric. A = −AT . E Linear Algebra: Eigenproblems E–1 . . .7. . .6. . §E. .2. . . . . . Positivity . . . . . .6. . . . . . . . . Similarity Transformation . . . . . . . . . . §E. . E–2 . . . . . . . . Hotelling Deflation . . §E. . . . . . Other Reduced Forms . .2. . . Diagonalization . §E. . . . . . .3. . Notes and Bibliography . . . .3. . .2. .1.6. . §E.3. . §E. . . . . . . . . .3. . . §E. . . . . . . . . . Eigenvectors . . . Nullspace Reduction . Normal and Orthogonal Matrices Spectral Decomposition and Matrix Functions Matrix Deflation §E. .4. . . . . Introduction The Standard Algebraic Eigenproblem §E. E–3 E–3 E–3 E–4 E–4 E–5 E–5 E–5 E–6 E–7 E–7 E–8 E–9 E–9 E–10 E–11 E–11 E–12 E–13 E–15 E–16 . . . . . . . . Spectral Properties . Real Symmetric Real Matrices §E. . . . . . . . . . . . §E. . Characteristic Equation . . . . . . .1. . . . . . . . . . . . §E. .2. . . . . §E. . . . . Exercises . . . . . Matrix Order Reduction . . . .5. . . . . §E. . . . . . . . .5.1. . §E. §E. . . . Wielandt Deflation . .2. . . . . . . . . .6. . .4. .2.2. . . Multiplicities .2. . §E. . . . . . . .1. . . . .6. . §E. . . . . §E. . . .2.2. . . . . Eigenpairs of Matrix Powers . . . . . . .6. . . . . . . . . . .Appendix E: LINEAR ALGEBRA: EIGENPROBLEMS TABLE OF CONTENTS Page §E. . §E.4. . . .2. . . .3. . 5) . §E. called nontrivial. namely Ax = y. It does not dwell on eigensolution methods for two reasons.2) These equations are trivially verified for x = 0. The Standard Algebraic Eigenproblem Consider the linear equation system (D. the qualifier algebraic will be usually omitted. Most properties and results will be stated without proof.   an1 an2 . In the sequel.2) gives an eigensolution pair. a11 x1 a21 x2 ··· an1 x1 + + a12 x2 a22 x2 ··· + an2 x2 + + + · · · + a1n xn · · · + a2n xn ··· ··· · · · + ann xn (E. . x and y may be real or complex numbers. a term that comes from original applications to optics. in which A is a square n × n matrix. conventional) algebraic eigenproblem. written in full.   . First. Such a condition can be expressed as the vanishing of the determinant   a12 . . those require specialized treatment beyond our intended scope. Characteristic Equation The eigenystem (E. ann − λ When this determinant is expanded.3) is possible if and only if the coefficient matrix A − λI is singular. (E. are those for which x = 0. . Equation (E.. It summarily covers fundamental material of use in the main body of the book.2 THE STANDARD ALGEBRAIC EIGENPROBLEM §E. The set of eigenvalues of A is called the spectrum of that matrix. ..1) or (E.) Suppose that the right-hand side vector y is required to be a multiple λ of the solution vector x: A x = λ x.1.2.3) A nontrivial solution x = 0 of (E.. §E. . Pairing a nontrivial solution with a corresponding λ that satisfies (E.2. (Entries of A. we obtain an algebraic polynomial equation in λ of degree n: P(λ) = λn + α1 λn−1 + · · · + αn = 0. while x and y are n-vectors. Second. a2n   a21  = 0.§E. The determination of nontrivial eigenpairs {λ.4) |A − λI| =  . Suggested textbooks and monographs devoted to the topic are listed under Notes and Bibliography. E–3 (E. a1n   a11 − λ   a22 − λ . . x} is known as the standard (classical.1. Properties linked to an eigenproblem are collectively called spectral properties of A.  (E. or.1) = = = λx1 λx2 ··· λxn .  . Introduction This Appendix focuses on the conventional algebraic eigenvalue problem.16)..1) can be rearranged into the homogeneous form (A − λI) x = 0.. (E.1) or (E.. The interesting solutions. . or eigenpair for short.2) is called an algebraic eigensystem. . . efficient methods are implemented as black boxes in high level programming languages such as Matlab. Therefore eigenvectors are often normalized according to some convention. eigensystem. Transposing both sides of (E. Those n solutions.7) the definition may be restated as yiT A = λi yiT . There is an inherent magnitude indeterminacy in (E. where i.7) Note that the same index i can be used to pair xi and yi since the eigenvalues of A and AT coalesce. .Appendix E: LINEAR ALGEBRA: EIGENPROBLEMS This is known as the characteristic equation of the matrix A. (E. The left eigenvectors of A are the right eigenvectors of its transpose.8) A set of left and right eigenvectors {yi } and {x j }. j range over 1 ≤ k ≤ n integers. Eigenvalue is a German-English hybrid.2. But it λi is complex. . (E. Consequently the eigenvalues of A and AT are the same. eigenroot. .” E–4 . all the distinct eigenvalues of A. This will be called the eigenvalue matrix. xi has real entries. . as discussed in §E. (E.6) A xi = λi xi . . For example: eigenvector. The left-hand side is called the characteristic polynomial. in which β is an arbitrary nonzero factor. is also a right eigenvector. etc. . The coefficients of the characteristic polynomial of a real A are real. (E.. which are stated in conjunction with specific examples. . or peculiar. inherent. eigenspace. Eigenvalues may be ordered according to different conventions. . λ2 . eigenfunction. n. If A is real and so is λi . λ2 . From the Fundamental Theorem of Algebra we know that a n th degree polynomial has n (possibly complex) roots λ1 . §E.6) since β xi . “Eigen” hits the ear better than the long-winded “characteristic. However. The characteristic polynomial of the transposed matrix is det(AT − λI) = det(A − λI) = P(λ). eigenproblem. yi = 0.2. A popular one is unit dot product of left and right eigenvectors: yiT xi = xiT yi = 1. For real A these will occur in complex conjugate pairs. its roots (the eigenvalues) may be complex. Eigenvectors Associated to each eigenvalue λi there is a nonzero vector xi that satisfies (E. For future use. however. If the matrix is symmetric real. This is often abbreviated to just eigenvector. . 1 yiT A xi = λi δi j . λ p . with δi j denoting the Kronecker delta: yiT x j = δi j . This xi is called a right eigenvector or right characteristic vector.1) instantiated for λ → λi : xi = 0. the occurrence of real roots is guaranteed. It has become a popular qualifier attached (as prefix) to several items pertaining to the topic. the diagonal matrix of eigenvalues will be denoted by Λ = diag[λi ]. and are denoted by yi : AT yi = λi yi . Likewise for yi .3. in which case the “right” qualifier is tacitly understood. We will occasionally denote by λ1 . it derives from the works of Cauchy in French. Characteristic equation and characteristic polynomial are exceptions. is said to be biorthonormal with respect to A if they verify. p ≤ n. entries of xi will generally be complex. eigenroots or characteristic values1 of matrix A. are called the eigenvalues.9) The terminology characteristic value is that found in publications before 1950. In German (and Dutch) “eigen” is used in the sense of special. eigenfrequency. λn . generically denoted by λi in which i = 1. Premultiplying (E. A key objective behind solving the eigenproblem of A is to transform A to a simpler form via (E. whereas eigenvectors remain unchanged. Qbviously a matrix with only simple eigenvalues cannot be derogatory. requires the use of the spectral decomposition studied in §E.1) by A yields A2 xi = λi A xi = λi2 xi . are λik . Note that 1 ≤ m g ≤ m a . The characteristic polynomials of the two matrices are identical. The generalization to arbitrary negative integer exponents is immediate: the eigenvalues of A−k . (E. Extension of these results to non-integer powers (for example. it is easily shown that the eigenvalues of Ak . An eigenvector x A of A is transformed into the eigenvector x B = T x A of B.5. A multiple eigenvalue that is not semi-simple is called defective. §E. A multiple eigenvalue is semi-simple (a confusing name) if its algebraic and geometric multiplicities agree: m a = m g . This process is called reduction. 2 To investigate negative exponents. or A−1 xi = λi Consequently the eigenvalues of the inverse are obtained by taking the reciprocals of the original eigenvalues. we can state that the sum of algebraic multiplicities of all distinct eigenvalues must equal n. An eigenvalue λ is said to have geometric multiplicity m g if the maximum number of linearly independent eigenvectors associated with it is m g . They are largely taken from [659]. The simplest reduced form is the diagonal matrix for eigenvalues Λ = diag(λi ). If an eigenvalue is simple. that is m a = 1.12) The mapping A → B is called a similarity transformation. A matrix is derogatory if the geometric multiplicity of at least one of its eigenvalues is greater than one.1) by A−1 yields 1 xi . the n × n identity matrix I has one eigenvalue of value 1 that has algebraic multiplicity m a = n. Since P(λ) = 0 has n roots. called diagonalization. If m a > 1 the eigenvalue is said to be nonsimple or multiple. (E.11) I xi = λi A−1 xi . (E. Consequently the two matrices have the same eigenvalues and each eigenvalue has the same algebraic multiplicity. the eigenvalue is said to be simple.10) Thus the eigenvalues of A are λi2 . is desirable but not always possible.3. whereas the eigenvectors do not change. It can be shown that geometric multiplicities are also preserved. For example.§E. E–5 . the matrix square root) as well as to general matrix functions.4.2.12). in which case it corresponds to an isolated root of P(λ) = 0.5. Continuing the process. Multiplicities The following terminology is introduced to succintly state conditions for matrix reduction to diagonal form. are λi−k . assume that A is nonsingular so that A−1 exists.2. This reduction. obviously m g = 1. This is equal to the kernel dimension of A − λ I. where k is a positive integer. Eigenpairs of Matrix Powers Premultiplying (E. §E.2 THE STANDARD ALGEBRAIC EIGENPROBLEM §E. Similarity Transformation Two square matrices. where k is a positive integer. are said to be similar if there is a nonsingular matrix T such that B = T−1 A T. If m a = 1.2. An eigenvalue λ is said to have algebraic multiplicity m a if it is a root of multiplicity m a of the characteristic polynomial. A and B. On premultiplying the first and last terms of (E. it is convenient to collect those sets into two n × n eigenvector matrices built by stacking eigenvectors as columns: YT = [ y1T y2T .Appendix E: LINEAR ALGEBRA: EIGENPROBLEMS §E. xn ] .12) can be done if A falls into one of two cases: (1) all eigenvalues are single. (E. The spectral decompositions studied in §E. Some possible choices are: Jordan Block Form. They have the common goal of trying to simplify the original eigenproblem. A diagonalizable matrix A has a complete set of n linearly independent right eigenvectors {xi } as well as left eigenvectors yi .2. X−1 = YT and Y−1 = XT whence X−1 A X = YT AT Y−T = Λ = diag[λi ]. To express this in compact matrix form. Diagonalization Diagonalization via (E. From the last relation. Such matrices are called diagonalizable. and (2) some eigenvalues are multiple but their geometric and algebraic multiplicities agree (i. §E. This reduction is always possible but may be numerically unstable. Closely related to the characteristic polynomial coefficients. the original eigenproblem can be recast as A X = X Λ.2. . The sequence of operations to pass from the original to intermediate and final reduced forms may be studied in the specialized literature. (E. E–6 . (E. See Notes and Bibliography. ynT ] .15) The similarity transformations shown above are a particular case of (E. An upper bidiagonal matrix with eigenvalues in its diagonal and ones or zeros in its superdiagonal. (E.6. Either set spans the Euclidean n-space and can be biorthogonalized so they verify (E.e. Very compact but hardly used in numerical computation as it is prone to disastrous instability. Other Reduced Forms If the matrix A is derogatory. ..15) by X. Other reduced forms are used in such a case.7.9) for k = n. .5 follow immediately from these relations. .16) This all-matrix form is often found in the literature. Intermediate reduced forms between the original matrix and the final reduced form include Hessemberg and tridiagonal matrices. diagonalization is not possible. Companion Form. Eigenvalues occupy the diagonal of this form. X = [ x1 .12). This reduction is always possible and can be made stable. Upper Triangular Form.13) YT X = XT Y = I.14) x2 These matrices verify YT A X = XT AT Y = Λ = diag[λi ]. they are not defective). 21) .3. y2 = [ −1 1 0 ]T and y3 = [ −3 5 4 ]T . − 2. divide x1 . The eigenvectors xi can be orthonormalized so that xiT x j = δi j . x2 = [ −2 1 1 ]T and x3 = [ 1 1 1 ]T . Y = [ y1 y2 y3 ] = 0 −1 −3 −1 1 5 1 0 4  . x2 .1. §E. Y = −1/√ 3 −1/ 2 5/√6 . Note that the scale factors for x2 and y2 must have opposite signs to make the normalization work.§E. y2 . YT A X = 3 0 0 0 0 −4 0 0 24  .15):  YT X = 3 0 0 0 −2 0 0 0 6   . that is. Right and left eigenvectors coalesce: yi = xi . + 6. The associated (unnormalized) left eigenvectors are y1 = [ 0 −1 1 ]T . Real Symmetric Real Matrices Real symmetric matrices satisfying AT = A are of special importance in the finite element method. Consider the real unsymmetric matrix  A= 1 −1 −1 1 3 2 2 2 3  .17) The characteristic polynomial is P(λ) = det(A − λI) = 8 − 14λ + 7λ2 − λ3 .20) 0 4/ 6 1/ 3 1/ 2 1/ 6 1/ 3 These do verify XT X = I and XT A X = Λ. To √ √ need √ to √ √ √ accomplish that. and such qualifiers may be omitted. VIM stands for Very Important Matrix. These results can be used to construct the (diagonal) eigenvalue matrix and the (unnormalized) eigenvector matrices:  Λ= 1 0 0 0 2 0 0 0 4   . x3 . (E. 2 xiT A x j = λi δi j . and y3 by + 3.20) verify X−1 = YT and Y−1 = XT . X = [ x1 x2 x3 ] = −2 −2 1 3 1 1 −1 1 1   .18) We can now form the matrix products in (E. y1 . + 2.” Then √ √ √  √ √    −2/√3 3/√2 1/√6 0√ 1/ √2 −3/√ 6 X = −2/√ 3 1/√2 1/√6 . and + 6. Consequently symmetric matrices are diagonalizable and thus possess a complete set of linearly independent eigenvectors. It is easy to check that the biorthonormalized matrices (E.3 REAL SYMMETRIC REAL MATRICES Example E. E–7 (E. This has the roots λ1 = 1. Spectral Properties In linear algebra books dealing with the algebraic eigenproblem it is shown that all eigenvalues of a real symmetric matrix are real and semi-simple. λ2 = 2. The associated (unnormalized) right eigenvectors are x1 = [ −2 −2 1 ]T .3. (E.1. (E. and λ3 = 4. §E. which are sorted in ascending order. + 3. one of those vectors must be “flipped.19) These products are not yet I and Λ because the eigenvectors be appropriately normalized. respectively. and thus deserve VIM treatment2 in this Appendix. (E. Appendix E: LINEAR ALGEBRA: EIGENPROBLEMS This is (E. Positivity Let A be an n × n real symmetric matrix and v an arbitrary real n-vector. §E. This property can be quickly checked by computing the n eigenvalues λi of A. For the concept of inertia of Hermitian matrices. and λ3 = 5. (E. ∀ v = 0.9) specialized to yi → xi . (E. (E. Example E.3 A Hermitian matrix is equal to its own conjugate transpose. XT A X = Λ = diag[λi ]. X = [ x1 x2 x3 ] = Also called self-adjoint matrices. matrix is also nonnegative but the converse is not necessarily true.2.23) vT A v ≥ 0. This concept is important in dynamics.23) vT Av > 0.26) . (E.24) A p. see Appendix P.d. the foregoing orthonormality conditions can be compactly stated as XT X = I.d. If all λi > 0.) if (E.22) Properties (a–c) also hold for the more general class of Hermitian matrices. A positive definite matrix has rank n. x2 = [ 1 −1 1 ]T and x3 = [ −1 1 2 ]T . λ2 = 2. and using v → xi to conclude that λi = xiT A xi > 0. which include symmetric matrices as special case. The extension of these definitions to general matrices is discussed in specialized texts. If eigenvectors are stacked as columns of a matrix X. but is important in other application areas. If n − r eigenvalues are zero and the rest are positive. This has the roots λ1 = 1. ∀ v = 0. A is said to be positive definite (p.2. A property called positive semidefinite by some authors. E–8 1 1 0 1 −1 1 −1 1 2  . This property can be quickly checked by computing the n eigenvalues λi of A. A is p. These eigenpairs can be used to construct the (diagonal) eigenvalue matrix and the (unnormalized) eigenvector matrix:  Λ= 3 4 1 0 0 0 0 2 0 0 5   . which are sorted in ascending order. Consider the real symmetric matrix  A= 2 −1 −1 −1 2 1 −1 1 4  .d. A is nonnegative with rank r . (This property follows on setting x to the orthonormalized eigenvectors of A. This extension has limited uses for structural analysis.25) The characteristic polynomial is P(λ) = det(A − λI) = 10 − 17λ + 8λ2 − λ3 .) A is said to be nonnegative4 if zero equality is allowed in (E. The associated (unnormalized) eigenvectors are x1 = [ 1 1 0 ]T . An n × n symmetric real matrix A that has at least one negative eigenvalue is called indefinite.3. λ i i E–9 (E. §E.29) A normal matrix is called orthogonal if AT A = AAT = I or AT = A−1 (E. .30) All eigenvalues of an orthogonal matrix have modulus one. (E. leads to unitary matrices. Then √ √   √     1/√2 1/ √3 −1/√ 6 1 0 0 1 0 0 X = 1/ 2 −1/√ 3 1/√6 . however. . Since the eigenvalues of the inverse are the reciprocal of the original eigenvalues as per (E. Spectral Decomposition and Matrix Functions Let A be a n × n symmetric real matrix. To accomplish that.32) i Assume next that A is nonsingular so all λi = 0.§E. for i = 1. the spectral decomposition of the inverse is A−1 = n  1 xi xiT .31) i This can be easily proven by postmultiplying both sides of (E. for which transposition is replaced by conjugation. As noted in §E.22):  XT X = 2 0 0 0 3 0 0 0 6  .31) by x j and using (E. for the material covered in the text. n. (E. The latter are assumed to be orthonormalized so that the conditions (E. . x2 and x3 by + 2. XT X = 0 1 0 = I. The spectral decomposition of A is the following expansion in terms of rank-one matrices: A= n  λi xi xiT .28) 0 1/ 3 2/ 6 0 0 1 0 0 5 §E.27) These are not yet I and Λ need to be normalized to unit length. The generalization of the orthogonality property to complex matrices. it posseses a complete set of real eigenvalues λi and corresponding eigenvectors xi . + 3 and + 6.4. (E.21) hold. Normal and Orthogonal Matrices Let A be an n × n real square matrix.11). This matrix is called normal if AT A = AAT (E. and the matrix has rank n. (E. XT A X = 0 2 0 = Λ.33) .5.3. √ because √ eigenvectors √ divide x1 .  XT A X = 2 0 0 0 6 0 0 0 30  . respectively.21): A xj = n  λi xi xiT x j = i n  λi xi δi j = λ j x j .5 SPECTRAL DECOMPOSITION AND MATRIX FUNCTIONS We can now form the matrix combinations in (E. These are not required. (E.Appendix E: LINEAR ALGEBRA: EIGENPROBLEMS This is valid for more general matrix powers: m def = A n  λim xi xiT . For the matrix exponential function exp(A). This represents a generalization of the integer powers studied in §E. n  def f (A) = f (λi ) xi xiT . not the eigenvalue.39) .28). Consider the real unsymmetric matrix (E. The latter are assumed to be biorthonormalized as per (E. For notational simplicity all eigenvalues and eigenvectors are assumed to be real. (E.3.34) i in which the exponent m may be arbitrary as long as all λim exist. the matrix logarithm may be defined as n  def log(λi ) xi xiT .) −1 1 2 −2 2 4  . and the orthonormalized eigenvectors listed in (E. no restrictions apply since the exponential of any real number is well defined. and λ3 = 5. and the orthonormalized eigenvectors listed in (E. (E. as well as the definition and study of arbitrary matrix functions. which numerically works out to be  A= 1 −1 −1 1 2 3 2 2 3   1 = 3 0 0 0 2 2 −1 −2 −2 1   + E–10 3 1 1 −3 −1 −1 0 0 0   2 + 3 −3 −3 −3 5 5 5 4 4 4  . the transpose operator is replaced by conjugate transpose. The concept can be extended to a diagonalizable n × n matrix A that has eigenvalues λi . For example. if f (. The expression (E. (E.4. Example E. Its spectral decomposition is λ1 x1 y1T +λ2 x2 y2T +λ3 x3 y3T . λ2 = 2.37) i The proof is identical to that of (E.34) can be in fact extended to other matrix functions as a definition. and λ3 = 4. that is. λ2 = 2. with eigenvalues (in ascending order) λ1 = 1.27).17). (E. (E.) is a scalar function.20). If A and/or its eigenvectors contain complex entries. with eigenvalues (in ascending order) λ1 = 1. More generally. which numerically works out to be        2 −1 −1 1 −1 1 1 1 1 1 0 2 1 A = −1 2 1 = 1 1 0 + −1 1 −1 + −1 2 0 0 0 3 6 −2 −1 1 4 1 −1 1 (The number in front of the matrices is just a scale factor. These decompositions play a fundamental role in the investigation of spectral properties.35) log(A) = i whence log(A) is also symmetric real if all λi > 0.2. A is p.3.d.32). The sp[ectral decomposition is n  A= λi xi yiT . with corresponsing right eigenvectors xi and left eigenvectors yi . Its spectral decomposition is λ1 x1 x1T +λ2 x2 x2T +λ3 x3 x3T .36) i in which function applications to each λi must make sense. iff λi = 0 ∀ i.9).38) Example E. Consider the real symmetric matrix (E. §E. {0.6. . 2. This deflation scheme left eigenvectors. is obtained along with the associated eigenvector(s). respectively.5. the transpose operator is replaced by the conjugate transpose. Example E. with eigenvalues (in ascending order) λ1 = 1. and λ3 = 4.17). which was important for “large” eigenproblems before 1960. ˜2 = 1 A 3 4 −1 −5 −1 4 5 −5 5 10   .1.40) gives  ˜1 = 1 A 6 7 −1 4 −1 4 7 −4 −4 4   . 2. A ˜3 = ˜1 = (E. A 3 −1 −2 . except that λi is replaced by zero. λ2 and λ3 in turn through (E. 1. Matrix Deflation In eigenproblem solution processes it often happens that one or more eigenpairs are either known in advance. A (E.40) gives       3 1 8 −2 4 2 9 −7 −2 1 1 ˜ 2 = −2 4 2 .37). . ˜ 1 has eigenvalues 0. or are obtained before the others. They are assumed to be real for ˜ i is obtained by subtracting a rank one correction: notational simplicity.5 A procedure by which those eigenpairs are “deactivated” in some manner is called matrix deflation or simply deflation Two deflation schemes are commonly used in practice. and the same right and For example if i = 1. λ2 = 2. λ2 and λ3 in turn through (E.40) Obviously this has a spectral decomposition identical to (E. Suppose that eigenvalue λi . 5} and {0. (E.6. ˜3 = 1 A 2 3 −3 −2 −3 3 2 −2 2 8  . 1. in which the eigenvectors satisfy the biorthonormality condition (E. {0. E–11 .20). A deflated matrix A ˜ i = A − λi xi yiT . 1. the deflated matrix A ˜ i is also symmetric. Deflating λ1 . The right and left eigenvectors remain the same. 1.6 MATRIX DEFLATION §E. and λ3 = 5. Deflating λ1 . are known.41) The eigenvalues of these matrices are {0. .9).37). Example E. λ2 . The eigenvectors remain the same. λ2 = 2. with associated right eigenvector xi and left eigenvector yi . They are associated with the names Hotelling and Wielandt.42) A −3 7 8 . Hotelling Deflation Let A be a diagonalizable n × n real matrix with the spectral decomposition (E. 3 −3 7 8 2 −2 3 3 3 −4 1 The eigenvalues of these matrices are {0.§E. 4}. 5 The second scenario is the case in the classical power iteration method. The matrix is then deflated so that the next-in-modulus (subdominant) eigenvalue becomes the dominant one. respectively. Consider the real unsymmetric matrix (E. and the biorthonormalized eigenvectors listed in (E. 5}.28).6. If A is symmetric. also known as the dominant one. yi = xi and A produces nothing new if λi is zero. with eigenvalues (in ascending order) λ1 = 1. respectively. and the orthonormalized eigenvectors listed in (E. The largest eigenvalue in modulus. If A and/or its eigenvectors contain complex entries. Consider the real symmetric matrix (E. 2}. 4} and {0. λn .27). 2}. are preserved by the deflation process.9). Consequently that row and the corresponding column can be deleted. with eigenvectors that satisfy the biorthonormality condition (E. Wielandt Deflation This deflation scheme is more general than the previous one. in which e j is the n-vector with all zero entries except the j th one. A (E. Matrix Order Reduction The freedom to choose w in the Wielandt deflation (E. The process shown so far only requires knowledge of the right eigenvector xi . which is included as special case. To identify that row.48) ˜ i j is zero. As in §E.3. assume x˜ j = x j − γ j xi . The operation is called deflate-and-order-reduce. (E. A (E. the Hotelling deflation (E.6. Let A be a diagonalizable n × n real matrix. The Wielandt-deflated matrix is ˜ i = A − σ xi wiT . as well as the corresponding left eigenvectors y j . Following [659. A if j = i. assume that eigenvalue λi as well as the right eigenvector xi are known. the j th row of A. 118]. This need not be normalized. Let wi be a column n-vector satisfying wiT xi = 1.6.46) ˜ i if This shows that x˜ j is an eigenvector of A γi = wT x j . and are both assumed real. This choice preserves all eigenvectors while shifting λi to zero. p. which happens if λi − σ becomes a multiple eigenvalue of the deflated matrix. Consequently the chosen wi is a j . If σ = λi and wi = cyi .43) A T Premultiplying both sides by y j yields ˜ i = yTj A − σ δi j wiT yTj A or ˜ iT y j = AT y j = λ j y j . in which c is determined by wiT xi = 1. which reduces its order by one.Appendix E: LINEAR ALGEBRA: EIGENPROBLEMS §E. (E. By inspection the j th row of A th will have their j entry equal to zero. which is one. (E. §E. they become linear combinations of xi and x j .43) can be exploited to combine deflation with matrix order reduction.2. A (E. since that is taken care of by the unit dot product with wi . and σ a real scalar called the spectral shift or simply shift. the deflated matrix will be denoted by Ai j : ˜ i j = A − S xi a j = (I − S xi eTj ) A. by A E–12 . Again suppose that eigenvalue λi .47) This is undefined if the denominator vanishes: λi − λ j = σ .45) This shows that eigenvector xi is preserved whereas eigenvalue λi is shifted by −σ . and retains symmetry if A is real symmetric.2.44) Consequently the eigenvalues λ j for j = i. The order-reduced (n−1) × (n−1) matrix is denoted ˆ i j . Then ˜ i x˜ j = λ j x j − (γ j λi + σ wT x j − σ γ j ) xi . or A ˜ i xi − (λi − σ ) xi = 0. All eigenvectors x˜ j of A ˜ i j with i = j in which S = 1/xi j . 1 − (λi − λ j )/σ for j = i. The right eigenvectors x j for i = j are not generally preserved. are known. with associated right eigenvector xi and left eigenvector yi .6. It is better explained by an example. Pick wi = eTj A. What happens for i = j? Postmultiplying by xi yields ˜ i xi = A xi − σ xi . Denote the j th entry of xi by xi j and assume xi j = 0. All are assumed to be real for notational simplicity.40) is recovered. X = [ x1 x2 x3 ] = 1 1 0 1 −1 1 −1 1 2  = Y. we pick eigenvector x1 . λ2 = 2. and generally no particular computational advantage accrues from doing blocks.50) are unsymmetric.6.53) E–13 . The procedure is known as block deflation. A §E. (E. . with eigenvalues (in ascending order) λ1 = 1. the first entry of which is x11 = 1. 2. so the resulting ˆ 1 j ( j = 1 or 2) will be [ 5 ].§E. and shifting ˆ 11 or A The deflate-and-order-reduce process can be obviously continued by renaming A one of its eigenvalues. ˜ 11 = Y 1 1 0 1 −1 1 −1 1 2  . 5} and {2. ˆ 12 to A.6 MATRIX DEFLATION Example E. 2 (E.52) Deflated and reduced matrices are different from those in (E.27). Reordering the characteristic roots as necessary. 1  ˆ 11 = −1 Y 1  1 . What happens if λ1 is deflated via the second row? We get  ˜ 12 = A − 1 x1 a2 = A x12 3 0 −1 −3 0 1 −2 0 4  ˆ 12 = ⇒ A  3 −1  −2 . . Nullspace Reduction If several eigenpairs are known. its kernel has dimension m. Deflation via the third row is not possible since the third entry of x1 is zero. and the first row of A: a1 = [ 1 −1 −1 ]. to get  ˜ 11 = A − 1 x1 a1 = A x11 0 −3 −1 0 3 1 0 2 4   ˆ 11 = 3 ⇒ A 1  2 . 5}. to zero. we can state that λ1 = λ2 = . Consider the real symmetric matrix (E. 4 (E.40) is trivially extended to the block case: just subtract several rank-one terms. respectively. say λ1 = 2.50) ˆ 11 are {0.7. and λ3 = 5. Note that left eigenvectors except y1 are preserved.4. the left and right eigenvalues no longer coalesce. But there is a special case where it deserves attention: deflate-and-order-reduce a null space. .43) is not trivial because each single eigenpair deflation changes the right eigenvectors. they can be simultaneously deactivated instead of one by one. . That is. Suppose the n × n diagonalizable real matrix A is m ≥ 1 times singular. The matrix and (unnormalized) eigenvector matrix are reproduced for convenience:  A= 2 −1 −1 −1 2 1 −1 1 4   . The Hotelling deflation (E. extending the general Wielandt deflation (E. The reduced matrix will be 1 × 1 with eigenvalue 5. whereas right eigenvectors except x1 change. (E.50) although they have the same eigenvalues. The (unnormalized) eigenvector matrices ˜ 11 and A The eigenvalues of A are  ˜ 11 = X 1 0 1 −1 0 1 0 1 1   . = λm = 0 is a null eigenvalue of algebraic multiplicity m. On the other hand.  ˆ 11 = −2 X 1  1 .51) Since the deflated matrices (E. Eigenvectors are not altered.49) To deflate-and-reduce λ1 . The associated eigenspace matrix of right eigenvectors is denoted by Xm = [ x1 x2 . 4 (E. xm ] . A (E. The procedure is illustrated by a symbolic example. If m = 1. while U is a m × m unit upper triangular matrix.48). Suppose that we want to get rid of both multiple singularity and nullspace by block deflate-andreduce to end up with a (n−m) × (n−m) matrix with the same nonzero eigenvalues.55)  . but must be linearly independent. To do this. Then ˜ m = A − Xm S U Am . From a computational standpoint it is important to realize that Xm can be obtained without solving the eigenproblem (E. and d. Example E.1).  d . To block deflate it so that the first two rows of the deflated matrix ˜ 2 = A − [ x1 A x2 ] S U [ a1 a2 ]    . The following 3×3 symbolic symmetric matrix of rank 1 was discovered through Mathematica. and stack the corresponding rows of A to form the m × n matrix Am . pick m rows to zero out. The eigenvalues and (unnormalized) eigenvectors are A= in which ai denotes the i th a1 a2 a3 The nullspace is spanned by [ x1 vanish we apply (E.56) x2 ].54): X = [ x1 x2 x3 ] = −d/b 0 1 −d/c 1 0 b/d b/c 1 (E. the unknown entries of which are chosen so that targetted rows of the deflated matrix vanish. It depends on three real scalar parameters: b. respectively. the built-in function NullSpace of Mathematica returns that matrix. λ3 = d c b λ1 = λ2 = 0.54) Here S is a m × m diagonal scaling matrix that contains the reciprocals of the eigenvector entries corresponding to the rows to be cleared. (E. which must be nonzero:   bc d = b b bd c d c   bd cd bc + + .6 For example.Appendix E: LINEAR ALGEBRA: EIGENPROBLEMS (These eigenvectors are not necessarily orthonormal. or simply nullspace. of A.8. c.) For brevity Xm will be referred to as the nullspace basis.54) reduces to the single vector case (E. Gaussian row reduction is sufficient. and (E. S and U collapse to 1×1 matrices containing 1/xi j and 1.7 It is of course possible to combine S and U into a single upper triangular matrix U S = S U. This contains eigenvector entry reciprocals in its diagonal and thus it is not necessarity unit upper triangular. cd c b row of A. E–14 . in floating-point work the detection of rank is an ill-posed problem. bc b c −d/b −d/c  1/1 0 1 u 12 d =A− 0 1 bd d 0 1 0 1/1 b 1 0 c 2 2   2 2 d u b c b d c b d 12 c + d + c + d u 12 b + d + 2 + c c + bd + dc + d bu 12 c  = 0 0 0 b (c + d u 12 ) c ( db − 1) − d u 12 d− c − bdc − b u 12 c  (E. 7 The effect of U is essentially to appropriately scale and combine the original eigenvectors stacked in Xm so they become equivalent to the modified right eigenvectors in the one-vector-at-a-time deflation.57) 6 At least in exact arithmetic. Notes and Bibliography The best overall coverage of the algebraic eigenproblem is still the monograph of Wilkinson [803]. which has been republished by SIAM in a revised and updated 2011 edition. Notes and Bibliography ˜ 2 null. appeared in 1944. Block Wielandt deflation was introduced by Brauer [105] in 1952. especially perturbation results. For symmetric matrices the most elegant exposition is Parlett’s textbook [548]. and geometric stiffness. reprinted by SIAM. The matrices involved: mass. combining theory and computer implementation. E–15 . which has a comprehensive reference list until 2007. although some of the computational methods described therein are dated. is the textbook by Higham [363].6. reducing A simple calculation shows that taking u 12 = −c/d − b c/d 2 − b/(c d) makes the first row of A it to   0 0 0 0 ˜2 =   (E. In FEM models the solution of very large eigensystems (thousands or millions of DOF) occurs frequently in applications such as structural analysis for vibration and stability.803] for historical references. are typically very sparse. The most exhaustive study of matrix functions.58) A 0  0  c c d d b d 1 b c 2 1 2 c+b c + 2 d +b d + 2 d + c + b d c Removing the first two rows and columns reduces this to the 1 × 1 matrix [ b c/d + b d/c + c d/b ] = [ λ3 ]. Strangely.§E. Hotelling deflation was proposed in 1933 while its generalization: Wielandt deflation. Specialized methods for efficient handling of such problems have been steadily developed since the 1960s. The book by Stewart [702] focuses more on theory. material stiffness.4 is not found in the literature despite its usefulness. A comprehensive coverage from the standpoint of underlying theory is provided in the textbook by Saad [659]. meaning that the proportion of nonzero entries is very small. the nullspace deflation procedure described in §E. see [374. especially for sparse matrices. Hint: do a Fourier transform to show that the eigenvectors of any Toeplitz matrix are of the form {eiωnh }.8 Let P be a real square matrix that satisfies P2 = P.3 Show that the eigenvalues of a real symmetric square matrix are real. (EE.1 What are the eigenvalues and eigenvectors of a diagonal matrix? EXERCISE E. in which σ is a scalar called the spectral shift and I is the identity matrix.7 Let A be real skew-symmetric. EXERCISE E. E–16 . Conclude that the similarity transformation (E. are identical.1) Such matrices are called idempotent.11 Let A and B be two diagonalizable square matrices of equal order that commute. and also orthogonal projectors.Appendix E: LINEAR ALGEBRA: EIGENPROBLEMS Exercises for Appendix E Linear Algebra: Eigenproblems EXERCISE E. they commute: T1 T2 = T2 T1 . in which T is a nonsingular transformation matrix. Show that all eigenvalues of P are either zero or one. which are generally complex. then apply the results of the previous Exercise. have unit modulus. Show that all of its eigenvalues λi . (They arise in finite difference or finite element discretizations of regular one-dimensional grids. that is. EXERCISE E. EXERCISE E. EXERCISE E.) Show that if T1 and T2 are any two Toeplitz matrices. EXERCISE E. Hint: for sufficiency use A = X Λ A X−1 and B = X Λ B X−1 . and that all eigenvector entries are real.2 Matrix A is changed to A − σ I. EXERCISE E. Show that all eigenvalues of A are purely imaginary or zero.4 Let the n real eigenvalues λi of a real n × n symmetric matrix A be classified into two subsets: r eigenvalues are nonzero whereas n − r are zero. EXERCISE E.10). EXERCISE E.6 Let Q be a real orthogonal matrix: QT Q = I. Show that the eigenvalues of AB are the product of the eigenvalues of A and B (Frobenius). Hint: (E. EXERCISE E. Show that necessary and sufficient conditions for this to happen is that A and B have identical eigenvectors. Explain what happens to the eigenvalues and eigenvectors of A.5 Show that the characteristic polynomials of A and T−1 A T.10 (Advanced) A matrix whose elements are equal on any line parallel to the main diagonal is called a Toeplitz matrix. A = −AT .9 Two conforming diagonalizable square matrices A and B are said to commute if AB = BA. Show that A has rank r .12) preserves eigenvalues and their algebraic multiplicities. F Matrix Calculus F–1 . . . . . §F. .1.2. . .2. . The Chain Rule for Vector Functions The Derivative of Scalar Functions of a Matrix §F. §F. . Introduction The Derivatives of Vector Functions §F. . .2. .2.2. .1. . . . Derivative of a Scalar with Respect to Vector §F. F–3 F–3 F–3 F–3 F–3 F–4 F–5 F–6 F–7 F–8 . . . Derivative of Vector with Respect to Scalar §F.1. . .4. §F.3.5. . §F. .Appendix F: MATRIX CALCULUS TABLE OF CONTENTS Page §F. . Derivative of Vector with Respect to Vector §F. . . . . Jacobian of a Variable Transformation . .4. . . .3. Functions of a Matrix Determinant .2. . . The Matrix Differential F–2 .4. . . . 2.  .2 THE DERIVATIVES OF VECTOR FUNCTIONS §F. a fact represented by saying that y is a function of x.3) §F. Introduction In this Appendix we collect some useful formulas of matrix calculus that often appear in finite element derivations. ∂ ym ∂x (F. Derivative of a Scalar with Respect to Vector If y is a scalar. y reduces to a scalar... The Derivatives of Vector Functions Let x and y be vectors of orders n and m respectively: y x  1 1  y2  x2   y= x=  .    (F.2. . ∂y ∂ xn     .1.2) If n = 1. §F.2. xn   .  (F. which we call y. ∂ ym ∂ y1 ∂ y2 ∂ xn ∂ xn · · · ∂ xn (F. or y = y(x). .2. §F. .. . ∂y def  ∂ y1 = ∂x ∂x ∂ y2 ∂x F–3 .. Various applications are studied in the following subsections.  ∂y  ∂ x1  ∂y ∂ y def  ∂x =   2 ∂x  . (F.   . .  .  . If m = 1. .  .  ...2.1) ym where each component yi may be a function of all the x j . which we call x.4) §F. x reduces to a scalar.3. Derivative of Vector with Respect to Scalar If x is a scalar.1.5) . . Derivative of Vector with Respect to Vector The derivative of the vector y with respect to vector x is the n × m matrix  ∂ y1 ∂ y2 ∂y  · · · ∂ xm ∂ x ∂ x 1 1   1  ∂ y1 ∂ y2 ∂ ym  ∂y def  ∂ x2 ∂ x2 · · · ∂ x2   =   .§F.  ∂x . . Given y= and . notably in statistics and economics. Evidently the notation is not yet stable. Example F.1.Appendix F: MATRIX CALCULUS Remark F. Many authors.1 This has the advantage of better agreement of matrix products with composition schemes such as the chain rule. define the derivatives as the transposes of those given above.1. y2 x= x1 x2 x3 (F.6) y1 = x12 − x2 (F. y1 .7) y2 = x32 + 3x2 the partial derivative matrix ∂y/∂x is computed as follows:  ∂ y1 ∂ y2  . if x and y are of the same order.4. θ ≡ y2 .2. ∂ x1 ∂ x1 2x1  ∂y  ∂ y ∂ y 1 2  = = −1 ∂x  ∂ x2 ∂ x2  0 ∂ y1 ∂ y2 ∂ x3 ∂ x3 0 3 2x3 (F. ∂x Example F.9) J =   ∂y is called the Jacobian of the transformation determined by y = y(x). Jacobian of a Variable Transformation In multivariate analysis. the determinant of the square matrix ∂x/∂y. 0 < θ < π and 0 ≤ ψ < 2π. y = r sin θ sin ψ. r ≡ y1 . The transformation from spherical to Cartesian coordinates is defined by x = r sin θ cos ψ. let x ≡ x1 .12)  cos y2   −y1 sin y2   0 (F. The inverse determinant is    ∂y  −1 (F. z = r cos θ (F. 1 One author puts it this way: “When one does matrix calculus. that is    ∂x  (F.2. and those who think it is a column vector.” F–4 . including quadratic and bilinear forms.13) = y12 sin y2 = r 2 sin θ.8) §F. The foregoing definitions can be used to obtain derivatives to many frequently used expressions.10) J =   .11) where r > 0. Then y ≡ x2 . one quickly finds that there are two kinds of people in this world: those who think the gradient is a row vector.    sin y2 cos y3  ∂x   J =   =  y1 cos y2 cos y3 ∂y  −y sin y sin y 1 2 3 z ≡ x3 ψ ≡ y3 sin y2 sin y3 y1 cos y2 sin y3 y1 sin y2 cos y3 (F. To obtain the Jacobian of the transformation. ∂x .2). . ..20)   . .  and z =  . . . we can write  ∂z1 ∂z1  . ∂y = 2Ax. .3) one obtains ∂y = Ax + AT x ∂x (F. xn zm yr where z is a function of y.3 THE CHAIN RULE FOR VECTOR FUNCTIONS Example F.. . . The Chain Rule for Vector Functions Let   x1  x2   x=  . 2. y= (F. m j = 1. .§F. ∂2 y = 2A. ∂z m ∂z m m .  .. ∂∂zx1n ∂ x1 ∂ x2  T  ∂z2 ∂z2 .  ∂y ∂x (F.      y1 z1  y2   z2     . . .. (F. n. ∂z2   ∂ x1 ∂ x2 ∂z ∂ xn   = (F. .18) The following table collects several useful vector derivative formulas. which is in turn a function of x. ∂x2 (F.. Using the definition (D. ∂x We can of course continue the differentiation process: ∂ ∂2 y = 2 ∂x ∂x and if A is symmetric.14) y = xT Ax where A is a square matrix of order n. .. ..21) .3. y ∂y ∂x Ax xT A xT x xT Ax AT A 2x Ax + AT x §F.16)  = A + AT . . Using the definition (D.19)  .15) and if A is symmetric. 2.   ..3. . Consider the quadratic form (F.17) (F. ∂z ∂ x1 ∂ x2 ∂ xn Each entry of this matrix may be expanded as  r  ∂z i ∂ yq ∂z i = ∂x j ∂ yq ∂ x j q=1 F–5 i = 1. . . ∂y ∂z ∂w ∂w = . = ∂y ∂x ∂x ∂y ∂z m ∂ y1 ∂z m ∂ y2        ∂ y1 ∂ xn ∂ y2 ∂ xn       ∂ yr ∂ xn (F.. (F.23) which is the chain rule for vectors.22) On transposing both sides. Note.. ... The Derivative of Scalar Functions of a Matrix Let X = (xi j ) be a matrix of order (m × n) and let y = f (X).24) which is the conventional chain rule of calculus... which is a function of y. §F..   . ∂z 1 ∂ y2 ∂z 2 ∂ y2 ... ∂ y1 ∂ x1 ∂ y2 ∂ x1     . ∂ y ∂z ∂z ∂ y ∂z = = .26) be a scalar function of X. If all vectors reduce to scalars. .27) .   ∂z 2 ∂ yq ∂ yq ∂ xn ∂z 2 ∂ yq ∂ yq ∂ xn  ∂zm ∂ yq ∂ yq ∂ xn ∂ y1 ∂ x2 ∂ y2 ∂ x2 . denoted by ∂y . . ∂x ∂x ∂y (F.Appendix F: MATRIX CALCULUS   ∂z1 ∂ yq Then  ∂z ∂x T yq ∂ x1 ∂z 2 ∂ yq ∂ yq ∂ x1    = .   ∂z 1 ∂ yq ∂ yq ∂ x2 ∂z 2 ∂ yq ∂ yq ∂ x2 .  ∂zm  ∂ yq ∂ yq ∂ x1 ∂z 1 ∂ y1 ∂z 2 ∂ y1   =  ...4.... ∂x ∂x ∂y ∂z (F.. however.. ∂X F–6 (F. . ∂x ∂x ∂y ∂y ∂x (F.  ∂zm ∂ yq ∂ yq ∂ x2 ∂z 1 ∂ yr ∂z 2 ∂ yr  .. in the ordinary chain rule one can indistictly build the product to the right or to the left because scalar multiplication is commutative.” For example. The derivative of y with respect to X. if w is a function of z.. we finally obtain ∂y ∂z ∂z = .. the chain of matrices builds “toward the left. ∂ yr ∂ yr m .  .25) On the other hand. which is a function of x. that when we are dealing with vectors. ∂z ∂ x1 ∂ x2 ∂ yr   T  T  ∂y ∂z T ∂y ∂z = .   . . . (F.30) where I denotes the identity matrix of order n. which is one. (F.34) ∂ yi j It follows that ∂ yi j ∂|Y|   = Yi j . F–7 (F.29) i=1 Obviously all non-diagonal partials vanish whereas the diagonal partials equal one.32) (F.4. ∂y ∂y ∂y . j (F. Find the gradient matrix if y is the trace of a square matrix X of order n. . j) entry. ∂∂xy1n ∂ x11 ∂ x12  ∂y  ∂ x21 ∂∂xy22 . ∂∂xy2n ∂y = . . .4 THE DERIVATIVE OF SCALAR FUNCTIONS OF A MATRIX is defined as the following matrix of order (m × n):  ∂y ∂y ..§F. . ∂ xmn ∂ xm1 ∂ xm2       ∂y  = ∂y = Ei j . that is yi j = f i j (xr s ). . This matrix G is also known as a gradient matrix. we have ∂|Y| = Yi j .35) . .  ∂ xi j ∂ xi j  i. ∂X (F. ∂ xr s ∂ yi j ∂ xr s i j But |Y| =  yi j Yi j . §F. ∂ xr s ∂ xr s i j * The elementary matrix Ei j of order m × n has all zero entries except for the (i. Suppose that we have a matrix Y = [yi j ] whose components are functions of a matrix X = [xr s ]..31) ∂X Using the chain rule we can write ∂|Y|   ∂|Y| ∂ yi j = Yi j . . Functions of a Matrix Determinant An important family of derivatives with respect to a matrix involves functions of the determinant of a matrix. Yi2 . ∂X   . thus G= ∂y = I. G= . that is n  y = tr(X) = xii . are independent of the element yi j . (F. .28) where Ei j denotes the elementary matrix* of order (m × n). .4.33) j where Yi j is the cofactor of the element yi j in |Y|. Since the cofactors Yi1 . (F.. . for example y = |X| or y = |AX|. and set out to build the matrix ∂|Y| . .1. Example F. Then it can be shown that A = [ai j ]. i. Example F. j ∂ xi j d xi j =  Xi j d xi j = tr(|X|X−1 )T dX) = tr(ZT dX).. F–8 (F. G= §F. .37) Example F.6.36) (F. ∂X (F. . (F. . ∂X (F. ∂|X| = ZT .  d x1n d x2n  .. d xmn This definition complies with the multiplicative and associative rules d(αX) = α dX.39) G= If X is also symmetric.. d(X + Y) = dX + dY. bi j = ∂ yi j . d xm1 d xm2 ..44) . The Matrix Differential For a scalar function f (x). we define the differential of an m × n matrix X = [xi j ] to be  d x11 def  d x 21 dX =   .. . . and denote Z = |X|X−1 . j where X i j denotes the cofactor of xi j in X. (F.  (F.40) ∂ xi i=1 In harmony with this formula.. If X = [xi j ] is a square nonsingular matrix of order n. ∂ xr s (F.5..5.43) which is an extension of the well known rule d(x y) = y d x + x dy for scalar functions. it can be verified that the differential of their product is d(XY) = (dX)Y + X(dY). ∂ xr s B = [bi j ].38) ∂|X| = 2ZT − diag(ZT ). Find the differential of the determinant of X: d|X| =  ∂|X| i.Appendix F: MATRIX CALCULUS There is an alternative form of this result which is ocassionally useful. where x is an n-vector..41) .  . d x12 d x22 . If X is a nonsingular square matrix and Z = |X|X−1 its cofactor matrix. (F.42) If X and Y are product-conforming matrices. the ordinary differential of multivariate calculus is defined as n  ∂f df = d xi . ∂|Y| = tr(ABT ) = tr(BT A). Define ai j = Yi j . find d(X−1 ).46)   If X reduces to the scalar x we have d 1 x =− F–9 dx . (F. (F.§F.45) d(X−1 ) = −X−1 dX X−1 .7. x2 (F.5 THE MATRIX DIFFERENTIAL Example F. The quickest derivation follows by differ- entiating both sides of the identity X−1 X = I: from which d(X−1 )X + X−1 dX = 0. With the same assumptions as above.47) . G Graphic Utilities G–1 . 5 Build Plot Legend: CBPLegend . §G. . . . . . .1 Finite Element Plot Types . . . . . . .2. . .2 Band-Contour 3-Node Triangle: CBPOverTrig3 . . . . . . . . . . . . . . . . . . . . §G. .2. §G. . . . . . . §G. . . . . §G. . . §G. G–2 G–3 G–3 G–3 G–4 G–4 G–7 G–9 G–9 G–10 G–13 G–15 G–17 . .3 Introduction . .2.2. §G. . .2 §G. . . . . §G. . Contour Band Plotter: Mini Version . §G. .2. . . . . . . .1. .1. . . . .4 Band-Contour 4-Node Quadrilateral: CBPOverQuad4 . .1 Plot Driver: CBPOver2DMeshMini .2 Contour Plotting Terminology . .6 Map Value to Color: CBPColorMap . .1 §G. . . . . . . . .Appendix G: GRAPHIC UTILITIES TABLE OF CONTENTS Page §G. . . . . . . . . .2. . .2. . . . . . . . . . . Genesis and Evolution of Plotting Utilities . .3 Contour-Line-Segment 3-Node Triangle: CBPTrig3Segment . . .7 Testing the Contour Band Plotter . . . . . which is introduced in the next subsection. (d) contour polygonal plot (CPP). Distinguishing among these types requires some terminology. Introduction This Appendix collects a set of application-independent graphic utilities organized as Mathematica modules. typically drawn at equal contour intervals. The color is picked as per a oneparameter value-to-color mapping scheme.1. or CLP. §G. since it conveys more information at a glance. This kind of display is primarily used to identify general features at a glance.1. for example. In particular.1. §G. a contour line. As shown in Figure G. Contour plots. also called isoline. A contour map. Now we are in a position to describe the three contour plot types shown in Figure G. This form is more frequently used than CLP. The mesh plot in Figure G.1. regions of maximum and minimum values are easily identified by color. (c) contour band plot (CBP). sometimes just called a contour. is a map illustrated with contour lines.1. or CBP.1 illustrates several types of graphic displays pertaining to a two-dimensional (2D) finite element model. The generalization of a contour line to functions of more than two variables is called a level set. This is produced by coloring the contour bands (regions comprised between succesive contour line) as pictured in Figure G. (a) (b) (c) Figure G. in which “value” means the averaged value of the function at the band. Contour band plot. to be eventually added. joins points of equal elevation (height) above a reference level. In cartography. 1.2.1(b)-(d) are a commonly used graphical technique to display a function of two variables defined over a 2D mesh.1 INTRODUCTION §G. Contour Plotting Terminology A contour line.1. (b) contour line plot (CLP).1(a) shows elements and nodes. Two-dimensional FEM plot types: (a) mesh plot. G–3 . The contour interval of a contour map is the difference in values between successive contour lines. steep gradient regions. of a function of two variables is a curve along which the function has a constant value. By “application independent” is meant that these modules are reusable across different FEM application programs that do not necessarily simulate structures. Finite Element Plot Types Figure G. such as mean sea level.1(b) this is just that: a set of contour lines. Contour line plot.1(c). also called topographical map. in this case a mesh of 3-node triangles. such as those shown in Figure G.§G. No color appears between lines. 2. Only 3-node triangles and 4-node quadrilaterals are accepted 2. which are configured as shown in the diagram of Figure G. A full version is described in another Section. The plotter software comprises six Mathematica modules. passing through white. Both versions: mini and full. but it has the disadvantage of rapid (superlinear) growth in cost as the number of subdivisions over each element increases. CPP is (by nature) restricted to FEM since it relies on subdividing element regions.) G–4 . Contour polygonal plot. If the function exhibits interelement jump discontinuities (for example. Configuration of CBP plotter software with CBPOver2DMeshMini as driver. calls CBPOverTrig3 for each. Specific restrictions are: 1. Figure G.Appendix G: GRAPHIC UTILITIES 3. Mini version. Returns plot objects representing those bands. each each of which is filled with a color again defined by a value-to-color mapping. Palette ranges from blue to red.2. The main reason behind this restriction is that function values are given at nodes. Both CLP and CBP are not restricted to finite element meshes but can be used for other applications. CPBColorMap Maps function value to Hue-defined color. One such module is described in another Section. Contour line interval is fixed 3. Checks whether contour line intersects a 3-node triangle. The plot object cannot be returned for downstream processing 4. and the value is assumed to be the same among all 2D elements connected to that node. Returns segment end positions if real. On the other hand. & stacks returned objects Finds bands comprised by subsequent contour lines & a 3-node triangle. and an intersection flag CPBLegend Builds a plot legend as color-value table and returns it to be inserted in the plot stream. The set of graphic options is limited. Finite element domains are subdivided into polygons. CBPFunOver2DMeshMini Driver module that generates contour band plot (CPB) of a node-defined function over a 2D FEM mesh. §G.2. CBPOverQuad4 CBPOverTrig3 CBPTrig3Segment Subdivides a 4-node quadrilateral into four 3-node triangles. at material interfaces) a contour polygonal plotter (CPP) that allows functions to be specified element-by-element is more appropriate. Contour Band Plotter: Mini Version This section describes a “mini” CBP version with very basic contour plotting capabilities. Both versions allow display of legends. The full version allows more options. in which “value” means the average function value over the polygon. This type is better suited to display of discontinuous functions that may jump between elements. For example CLP is often used in cartography to plot elevations over a reference height. have an important limitation: Function to be plotted is assumed C 0 continuous over the finite element mesh. or CPP. and accepts a richer set of element configurations. (Eventually.3. PlotLabel->label.1}[[i]]]].pnode. pbacg[[e]]=Graphics[Polygon[c]]]. {preleg. {pb. pline={}]." with ".eletyp. {legspecs.3.fmin. The code is listed in Figure G.plotwhat.3.{i.preline.pline.fmax.bacg.pband={}]. {colors.fspecs.pbacg.i. pline[[e]]=pl].ncint}=frain. premesh.pbacg=empty]. pbacg={}]. Plot Driver: CBPOver2DMeshMini The driver program is called CBPOver2DMeshMini.1.pl}=CBPOverQuad4[xyc. If [nodes.pl}=CBPOverTrig3[xyc.5}]]. Figure G.2. fspecs={fmin.4. fc=xyc=Table[0.fc.pmesh.2. {fmin.pleg}=CBPLegend[{fmin. pnode={}].preline. ]. nc=Length[enl]. pmesh=empty].nc. {pb.PlotLabel->label. If [lines. DisplayFunction->DisplayChannel ]]..pnode.e<=numele.label.enl. If [nodes.. pmesh={}]. preleg.7]]}. premesh={Graphics[RGBColor[1.^(-8)*Max[Abs[fmax]. For [e=1.pline.pband=empty]. Mini version. prebacg={Graphics[RGBColor[. preline={Graphics[RGBColor[0.1}[[i]]]].pband. If [!bacg.4}]]. Do [n=enl[[i]].legspecs.pmesh. If [Length[legspecs]>0&&colors. c=Table[xyc[[{1.pband.nc. Graphics[AbsolutePointSize[4]]}. If [lines.pline.pl. preband.pmesh.e++.aspect. "Elem ". c=Table[xyc[[{1.fn.fspecs.fc[[i]]=fn[[n]].1.10}]]}.fmax}.fc.{i.0]]. If [colors. If [Length[legspecs]==0||!colors. If [!colors. If [bacg. feps=10.preline.prenode.prenode.n.{nc}]. asprat=aspect. If [nc==3.bacg.pline.Graphics[AbsoluteDashing[{}]].elenod.3. prebacg.label}=plotspecs.feps}.elenod_.asprat. empty=Table[{}. Print["CBP mini:".preband. FontSlant->"Plain".preband. If [colors.numele=Length[elenod]}.legspecs. pnode[[e]]=Table[Graphics[Point[ xyc[[i]] ]].2. It is invoked by CBPOver2DMeshMini[nodxyz. AspectRatio->asprat.pleg.lines]. DisplayFunction->DisplayChannel ]].Graphics[AbsoluteThickness[1]]}. Continue[]].Graphics[AbsoluteThickness[2]]. pline=empty].c.nodes.Abs[fmin]].xyc.pleg.pb. pband=pmesh=pnode=pline=pbacg=preleg=pleg={}.fn_.0.preleg.eletyp_.3.pmesh. If [mesh. pmesh[[e]]=Graphics[Line[c]]].prenode.e.ncint.nodes. {i.lines].empty. ClearAll[pband.nc].feps.premesh. If [mesh.pband.0.colors.mesh.premesh. If [!nodes.{i.7. If [!MemberQ[{3.fc. prenode={Graphics[RGBColor[0. TextStyle->{FontFamily->"Courier".7.0]].0.nc}].1) The arguments are: G–5 .ncint. Show[prebacg. FontSize->10}. If [bacg. pnode. Show[prebacg.pnode=empty].0]].{numele}].§G. plotspecs_]:=Module[{e.lines}=plotwhat.pbacg. If [aspect=={}.pnode.frain_. xyc[[i]]=nodxyz[[n]]. fspecs.pleg] ]. If [!mesh. preband={}.aspect.mesh.pbacg.lines. pleg={}. asprat=Automatic].AspectRatio->asprat.plotspecs] (G.fmax. Module CBPOver2DMeshMini to produce a contour band plot (CBP) of a function over a 2D finite element version. Graphics[AbsoluteDashing[{1.plotwhat_.frain.1]. enl=elenod[[e]].fmax.4}. If [nc==4.2 CONTOUR BAND PLOTTER: MINI VERSION CBPOver2DMeshMini[nodxyz_. If [!lines.nc}]]. pband[[e]]=pb].pbacg." nodes skipped"]. §G. The value is assumed to be the same for all elements connected to node. Note: this argument is more elaborate in the full CBP version. AspectRatio->Automatic is used. elenod Element node lists. the full version should be used. For a 3-node triangle. . the default setting label: A textstring to be placed as plot label. loop runs on element index e).mv }. To skip the plot display and have the CBP object returned for downstream processing. Regions where the function value is outside the range will appear black. mesh: If True.n3 }. The major plotting operations performed by the driver module are carried out inside a For loop over the elements (see Figure G. If fmax ≤ fmin or ncint≤0. The only elements accepted by the mini version are 3-node triangles and 4-node quadrilaterals. plotspecs A set of specifications: { legspec. show band colors. . if False omit.{ enlNe } }.label } that controls appearance: legspec: Plot legend specifications: { { xleg.3 for coding details.5. frain A 3-entry list { fmin. plotwhat A list of five logical flags: { colors.4. .n2. The contour interval will be finc=(fmax-fmin)/ncint. show mesh nodes as black dots.yN } }. G–6 . enl={ n1. . mesh.2. To omit specify an empty list: { }. y} Node coordinates stored as { { x1. For legend placement and configuration details see §G.y1 }.fmax.aspect.. Element node lists that do not contain 3 or 4 nodes are skipped. . The z coordinate is assumed zero and need not be listed. in which Ne is number of elements.. and a warning message given.Appendix G: GRAPHIC UTILITIES nodxyz {x. show boundaries.{ x2. bacg: If True. if False omit.fmax: minimum and maximum function values to appear in plot ncint: number of contour intervals in the range fmin through fmax. The module does not return a value.f2. fN }. if False omit. stored as { enl1 }. but some of them are more complicated. The latter are split into four 3-node triangles forming a Union Jack pattern. If zero or negative. it contains element type identifiers. contour lines and bands are not plotted. These flags specify what is to be plotted: colors: If True. in which { xleg. . So eventually it 1 The full version has exactly the same arguments.yleg }. To omit legend specify an empty list: { }. nodes.n3. In the full CBP version.n4 }. show contour lines that separate bands. enl={ n1.{ xN. if False omit.1 fn Function values at nodes: { f1.n2. { enl2 }. lines: If True. For a 4-node quadrilateral. lines }.y2 }. . show background mesh in dashed lines.yleg } are coordinates of a location where the legend frame is to appear. nodes: If True. and mv is number of value intervals to shown in legend. if False omit. as described in §G.2. . . bacg. aspect: Aspect ratio of plot frame.ncint } specifying function range and contour interval: fmin. eletyp A dummy argument. in which N is number of nodes. Return[{pb. ].Q2}.plab }= CBPOverTrig3[xyc.feps }. Pc2={x2. fc Corner function values stored as { f1.x2. and builds the corresponding contour band polygons.{x2.Q4.finc.2 The module source code is listed in Figure G.fc.Q4.pl=Take[pl. {Pt.f3}}=Sort[{{xc1.yc3.pb=Take[pb.xs. {{Null}. favg=(fbot+ftop)/2.y2.P3.Pb.p. Continue[]].2.{}. {{Null}. {P3.f2}. {P1.4.Q2->P2. firsthit=False]. pl[[++kl]]=Graphics[Line[Pt]]] ]. this is done as described in §G.{xc3. Module CBPOverTrig3 that contour-bands a function over a 3-node triangle.kl.{}.lines_]:=Module[{fmin.P1.2. {fmin.yc2. flast.{Pc3.fspecs_.yc3}}=N[xyc].yc3.Q1.y3}.Q1. If [firsthit&&(tb>0).Plast.frange. kb=kl=0. {{Null}.y3.Pt. fspecs A 4-item list of function plotting specifications: { fmin. {fc1. {{x1.tt}=CBPTrig3Segment[xs.iv<=nv.Q2.fs.tb}=CBPTrig3Segment[xs.{}.f1. ftop. pl=Table[{}.y1.ys. The reason for this splitting is that the function f (x.xc3.y3}.Pc3}.y1}.Pt.fc3}}.tb.Q4.1].ys. f 3 }.fc_.f2.Pb.iv++.Plast.P4. If [kb>0.pl}] ]. {Pb.{xc2.fc3}=N[fc].4.#1[[3]]<=#2[[3]]&].{nv}].1000].firsthit.Q3}.fc1. y} corner coordinates arranged { { x1.y2.Q1.fmax.feps}=fspecs. nv=Min[ncint.{Pc1.f3}.{Pc3. fbot=N[fmin+(iv-1)*finc]. pl[[++kl]]=Graphics[Line[Pb]]. If [kl>0.§G. f 2 . If [tt>0.nv. For [iv=1.fc3.y1.feps]].Plast.{ x3. Pc1={x1. §G.tt+2]]/.favg. x1.2. all boils down to contour-banding over 3-node triangles.Pc2.{x3.Q2.yc1.Pc2.Q4}}.ncint.ncint.tb}={flast.Pc2. pb=Table[{}.tlast}. ClearAll[ptab].{nv+1}].ftop.fs.fc1}.P4}=Pt.fmax. {{xc1. The module is invoked as { preleg. Corners are internally renumbered within the module so that f1≤f2≤f3.Graphics[Polygon[p]]}.y2 }.Q3.Q3}}.pb.f3 }.{}].Q4.{Q1->P1.y2. flast=fmin-1000. If [fbot==flast.f2. {xc2.P2}=Pb. If [fmax<fmin||ncint<=0. If [lines.x3.ptab.Q4.yc2}. p=ptab[[tb+2.iv.{Pc2.Q3}.2.f2.Q2.xc1.{Pc1.{Null}}. {fbot.ncint.Q3}}}.f3.Q3->P3. frange={fmin.Pc2.y1 }.Q2}. xs={x1. feps.Q3. Pc3={x3. Band-Contour 3-Node Triangle: CBPOverTrig3 Module CBPOverTrig3 searches over the plot range for all contour lines that cross a specific 3-node triangle.yc2.yc1}.{Q1.x3}. This operation is called polygon clipping in the computer science literature.Pc1.2 CONTOUR BAND PLOTTER: MINI VERSION CBPOverTrig3[xyc_. If [ftop<=f1 || fbot>=f3. finc=(fmax-fmin)/nv.fmax}.ys.{xc3. {flast.tlast}={ftop.fspecs. Return[{{}. Figure G.y2}.{}}]]. ftop=N[fbot+finc].yc1. firsthit=True.fs.fc2. G–7 .kb.Q2. pb[[++kb]]={CBPColorMap[favg.fc2.fbot.pl}.kl].{Null}.y3 } }.tlast.{Q1.{Pc1.feps]. y) can be then linearly interpolated from the 3 corner values { f 1 .lines] (G.Pc3.Q4->P4}.{ x2. ptab={{{}.x2. fs={f1.fmax.P2.tt}.fbot.{Null}.y3.frange. ys={y1.fc2}.kb].xc2.Q1.2) The arguments are: 2 xyc The {x.tt.f1}.{}]. contour lines separating bands are drawn. (a) Contour lines f=20 through f=70 are straight lines on account of linear interpolation from corner values (lines shown outside triangle for visualization convenience).ncint: Same as items in argument frain of the driver module. in which eps<<1 is typically 10−8 . Shown are 6 cases in which one or more contour line intersections occur.Appendix G: GRAPHIC UTILITIES (b) (a) f =70 f =65 f =60 f =55 f =50 f =45 f =40 f =35 f =30 f =25 f =20 f > f3 .fmax. P=−1 Figure G. fmin.5.pl } Graphic objects that define contour band polygons if any found. 4. the objects are empty. whereas the second object: textttpl. The first object: pb has information about the polygon geometry and color fill. (a) (b) (c) (d) (e) (f) Figure G. Contour lines of a plane passing through triangle corners with values (sorted by increasing value) are f1=30. texttf2=40 and f3=60. lines The logical flag supplied in argument plotwhat of driver module CBPOver2DMeshMini. (a) 4 intersection cases identified by an integer flag P. feps: A function value tolerance set by the driver module CBPOver2DMeshMini to eps*Max[Abs[fmin]. respectively. If no contour band polygons are found. Contour band polygons over a 3-node triangle. The module returns { pb.6. Used to avoid ill conditioned computations in CBPTrig3Segment. G–8 . If True. return polygon boundary lines if requested. 3. 5. P=0 f3 = 60 3 3 f2 < f < f 3 . 4 and 3 sides for cases (a) through (f). P=1 1 1 f1 = 30 Triangle nodes ordered so f1 < f2 < f 3 f < f1 . P=2 2 2 f2 = 40 f1 < f < f2 .Abs[fmax]]. Polygons have 3. f3=f2+feps.x2.fv.feps] (G. ys The sorted y corner coordinates { y1.f21=feps]. fv The countour line value. If [f32<feps.1]. f21=f2-f1. The module is invoked as { xint. ζ 313=Max[Min[ζ 313.ζ 322.f21. the corner function values sorted in ascending order.6.P21. It finds whether that line intersects the triangle.7.-1}]]. ζ 212=Max[Min[ζ 212. as they valued in the range [0. P13={x1*ζ 311+x3*ζ 313. Module CBPOverTrig3 cycles over the set of contour line values and calls module CBPTrig3Segment (described in the next Subsection) to determine whether one or more intersections occur.P13}.y32.1].fs_.y3 }.P32.x2. Return[{{P3.x3 }.2}]].f2.P2 }. f32=f3-f2.y3}=ys. This is done to help numerical accuracy and stability because such coordinates are dimensionless and well scaled.f1=f1-feps. Return[{{P32. Item P is an “intersection tag”: an integer with values −1 through 2 that identifies the 4 cases pictured in Figure G.y13. and a contour line value.f32=feps]. ζ2 . Return[{{P1.P13}. P3={x3.P13}. ζ 313=(fv-f1)/f31. ζ3 } introduced in Chapter 15.f2.6.Return[{{P21.fs.y1*ζ 311+y3*ζ 313}. 1].0}]]. y1.ys_. ζ 311=1-ζ 313. 3 The table-driven logic in CBPOverTrig3 is admittedly hairy but can be understood after some study. The module returns { { P1.P1}.x32.5 and G.f1.f3}=fs.y1}. it uses a table-driven scheme to construct the appropriate polygon from the six cases shown in G.f3 }. ζ 212=(fv-f1)/f21. P1.flag }= CBPTrig3Segment[xs. {y1.y2.P3}. {f1.0]. The module source code is listed in Figure G. ζ 323=(fv-f2)/f32. ζ 323=Max[Min[ζ 323.5(b).y3.§G. and returns appropriate information to that effect.feps_]:=Module[{x1.y3*ζ 323+y2*ζ 322}.x3.f31. Figure G.2 CONTOUR BAND PLOTTER: MINI VERSION CBPTrig3Segment[xs_. and returns intersection segment information if that is the case. ζ 211=1-ζ 212.0].y2. If [f21<feps. Contour-Line-Segment 3-Node Triangle: CBPTrig3Segment Module CBPTrig3Segment is invoked by CBPOverTrig3.x13.ys.f2.3.P1. On the other hand. feps A function tolerance value used to avoid ill-conditioned computations. §G. the Cartesian coordinates might be poorly scaled in some unit systems.P2 contain the {x. P1={x1.P3.ζ 323. The contour-band capturing logic3 can be better explained through examination of Figures G.0].ζ 212. both P1 and P2 are set to the coordinates of the corner closest to the contour line. ζ 211. If this the case. P21={x2*ζ 212+x1*ζ 211. If no intersection is found.x3}=xs. fs The sorted corner function values { f1. The CBPTrig3Segment logic relies heavily on the use of the triangular coordinates {ζ1 .y2.y2*ζ 212+y1*ζ 211}.3) The arguments are: xs The sorted x corner coordinates { x1. {x1. Module CBPTrig3Segment that determines whether a contour line intersects a 3-node triangle. P32={x3*ζ 323+x2*ζ 322.ζ 311. y} coordinates of the end points of the segment. G–9 .x2.fv_.ζ 313.y3}. See feps argument in CBPOverTrig3.f32.x21.7. If [fv<f1. ζ 322=1-ζ 323.1}]]. If [fv>f3. If [fv<=f2. f31=f3-f1.2.y21.1]. It receives the corner coordinates of a specific 3-node triangle.P } If an intersection found.f3. f5}.f5. {pbq[[e]]. f5=(f1+f2+f3+f4)/4.y1 }.x2. For [e=1. CBPOverQuad4[xyc_.ft.y2}.4) The arguments are: xyc The {x.{x2.y4}}=xyc.fspecs.4.{ x3. {f1. whereas the second object: textttplq.{f3.lines]. The first object: pbq has information about the polygon geometry and color fill.f1.{x5.y2}. Band-Contour 4-Node Quadrilateral: CBPOverQuad4 Module CBPOverQuad4 processes a 4-node quadrilateral element (Quad4) by subdividing it into four subtriangles that meet at the element center.{x5.{f2. fc Corner function values stored as { f1.e++.y2}. It then calls CBPTrig3 four times.{x3.y5}}.Appendix G: GRAPHIC UTILITIES 4 3 3 4 Split into 4 subtriangles 5 1 1 center point at intersection of medians 2 2 Figure G. The module is invoked as { plq. fspecs Same as in CBPOverTrig3.{x4.x5.y4.f3.fc. The module source code is listed in Figure G.2.y3}.9. the objects are empty. Splitting a 4-node quadrilateral into four 3-node triangles. returns polygon boundary lines if requested.y3}. ft=ftab[[e]].y1}.f3.{x4. ftab={{f1.{x3. as illustrated in Figure G. e. The average of the corner function values is assigned at the center node.{x2.{x5. y} corner coordinates arranged { { x1.f5}.y4 } }.y2 }.8.y5}}.y3}.fspecs_.f4 }.y4}. G–10 . pbq=plq=Table[{}.{x1. The module returns { pbq.y1}.pbt.f1.y3 }. y5=(y1+y2+y3+y4)/4.y4}. If no contour band polygons are found.{ x4.fspecs.f5}}. pbq.xyt.plq}] ].x3.lines] (G.plq.f4}=fc. xytab={{{x1.{{x2.f2. {{x1. xyt=xytab[[e]].f4. Figure G.plq[[e]]}=CBPOverTrig3[xyt.f5}.ftab.9.y5.{f4.y1.ft.plq } Graphic objects that define contour band polygons if any found. ]. lines Same as in CBPOverTrig3.f4.{4}].plt}. Return[{pbq.f2.f2.x4.e<=4.f2.y1}.fc_.y5}}}.{{x4. Module CBPOverQuad4 that contour-bands a function over a 4-node quadrilateral. x5=(x1+x2+x3+x4)/4. §G.{x5.y2.xytab. {{x3.{ x2.lines_]:=Module[ {x1.8.f3.y5}}.y3.f3. and stacks the plot object information.pbq }= CBPOverQuad4[xyc. Graphics[Polygon[{xy1.10.xy2. thin= Graphics[AbsoluteThickness[1]].fmax.xyleg].-baselineskip*iv-dy}."+"}].xy4. baselineskip=10.{1.4.plab.xy3. Figure G.xf1}]].mv=2]. If [nvleg<=0. xytext=Offset[{ 80.xf1.Graphics[AbsoluteThickness[2]]. fmax=1/3000].10}.legspecs_.0}. Print["fmin. fs=PaddedForm[f.b-15}]. xy3=Offset[{ 8.color.{nvleg+1}].ip<=1.smax_]:=Module[ {fmin.{-1.smax]. which produces the six plots of Figure G. If [ip==6.xylinL.NumberSigns->{"-". a=b=imgsiz/2.mv.f.0]].xf4.xyleg. xf1=Offset[{-30. plab[[iv]]={color.{fmin. xy1=Offset[{-22. AspectRatio->Automatic.-baselineskip*iv+dy}. Graphics[Polygon[{xf1. preleg={thin. xy1={0.xyleg]. which is a tabular visualization of the value-to-color mapping. The module source code is listed in Figure G.2 CONTOUR BAND PLOTTER: MINI VERSION CBPLegend[frange_. nvleg=Min[Max[nvleg.9]]. xyleg={a-115.fmax}=frange. The module is invoked as { preleg. smax=1.mv=10].plab}]].fmax.iv++. xy2={imgsiz. xy4={0. fs=ScientificForm[f.xy3.plab }= CBPLegend[frange. xy4=Offset[{ 8.-baselineskip*iv-dy}.fb.xf2.xy4}]]. xy2=Offset[{-22.smax}].smax=".ip++.xyleg. -10-baselineskip*(nvleg+1)}.smax]. {fmin.xy2. §G. Module CBPLegend that builds a plot legend and returns it to the caller as a plot object. Figure G. For [iv=1.20].xy1.plab={}.1]].0]].nvleg.b+80}.fb]<=1000)&&(Min[fa. If [ip==5.xf3.11.plab}]].{xyleg.DisplayFunction->dfun].black.xytext.padOK}.white. fmax=100.xy3.mv. If [ip==4.Return[{preleg.xylinR.0.Abs[fmax]}. 10}.xyleg.0. If [padOK.fmax}. If [ip==3.xf4.0}]]}.smax=1/2].finc.0}.xf4}]]. Show[{Graphics[GrayLevel[0. If [ip==6.{fmin. black=Graphics[RGBColor[0.imgsiz}.10.fb]>=1/100).preleg. Build Plot Legend: CBPLegend Module CBPLegend generates a plot legend.4. For [ip=1. f=N[fmin+(iv-1)*finc].xyleg].xf3.12.xy1}]]}.xyleg].b+125}]. finc=(fmax-fmin)/nvleg. Graphics[Line[{xf1. dfun=Print].fb}={Abs[fmin]. dfun=$DisplayFunction. fmax=10000]. xf2=Offset[{85."+"}]].xy4. {preleg.1. color=CBPColorMap[f.mv}.xyleg].xyleg].5. dy=baselineskip/2. {fa. Test script for exercising CBPLegend.preleg.fmax}. Return[{preleg. Graphics[RGBColor[1.xyleg]. black.mv. If [ip==4.Graphics[Text[fs. xf3=Offset[{ 85.xy2.xytext.§G.NumberSigns->{"-". xf4=Offset[{-30.dy.xyleg]. Graphics[Text["LEGEND". {xyleg.imgsiz}.Graphics[Polygon[{xy1.plab}=CBPLegend[{fmin.0}.xf3. fmin=-fmax.smax] The arguments are G–11 (G.1].fmax.-baselineskip*iv}.2.iv<=nvleg+1. xy3={imgsiz. xyleg={a+50.xf2.xyleg].0}]]}].xf2.iv. If [$VersionNumber>=6. xyleg={a+50. Graphics[Line[{xy1.xyleg. plab=Table[{}. -10-baselineskip*(nvleg+1)}.xy4}]].0.Offset[{5. If [ip==2.xyleg]. imgsiz=300. mv=10.xy3.fs.xy2.5) . white=Graphics[RGBColor[1. ].-baselineskip*iv+dy}.fa. padOK=(Max[fa.nvleg}=legspecs. plab Graphic commands to show colors alongside function values. −60. × 103 −2. × 103 +1. +70. G–12 . mv=10.6 for details. −50.1/3000}. mv=10.230}. frange={−100. +40.333 × 10−4 −2.333 × 10−4 +2. smax=1 (d) (c) LEGEND −100. +90. +100.11. +30. −60. if mv=2 three values will appear in the legend table: fmin. +10. −70. xyleg={200. frange={−100. smax=1/2 frange={−100. mv=2. For example.100}. Normally 1. +60. smax=1 frange={−1/3000.100}. and fmax. +40. −40.fmax } of minimum and maximum function values. (The positioning logic is likely to be changed in the future.100}. which defines the plot range.2.333 × 10−4 −6. mv=10. −40. −10. smax=1 −100.275}. −40.135}. +50. LEGEND −100. −20. xyleg={200. −60.plab }. +0. +0. × 103 −4. +20. −30.ncint>0 smax Maximum saturation value in color specification returned by CBPColorMap. These graphic objects are inserted in the command plot stream by the driver program. respectively. xyleg={35. +100. −90. × 103 +4.333 × 10−4 Figure G.667 × 10−4 +3. +0. +6. Running the script produces the plots shown in Figure G. xyleg The {x.10000}. × 103 +8. +60. +60. +80. +20. −20. see §G.12. +100. (fmin+fmax)/2. +80. +0.12.230}. y} coordinates of a location that collocates the legend frame in the plot. −20. LEGEND frange={−100.230}.Appendix G: GRAPHIC UTILITIES (a) (b) LEGEND −100. × 103 +6. These can be used to visualize various effects and options. The legend module may be exercised by the plot script listed in Figure G. mv=20. The function returns { preleg. × 103 −6. smax=1/2 (e) (f) LEGEND −1. xyleg={200.) mv A positive integer that specifies the contour interval.667 × 10−5 +1.100}. +80. × 103 +0. +2.11 frange A list { fmin. See the source code for details. xyleg={200. xyleg={200. Note that mv is the same as the ncint input to the driver CBPOver2DMeshMini if texttt.667 × 10−4 −2. in which preleg Graphic commands to draw the legend table frame and title. values as (fmax-fmin)/mv. × 104 frange={−10000. smax=1 LEGEND −3.230}. mv=10. +40. × 10−4 −1. −80.667 × 10−5 +0. × 104 −8. × 10−4 +2. as it is currently confusing. Legend plots produced by the test script in Figure G. −80. +20. −80. +100. Color palettes produced by calling CBPColorMap over the range fmin=-100 through fmax=+100 at finc=+20 intervals.0.s. b=1 color value (b) smax=2/3.0]] ]].§G. +60. (* White if void range *) Return[Graphics[Hue[0. Figure G. b=1/2 color value -100. Hue and stauration are respectively set to h=0. and s=smax*(1+1/cs)(1-1/(1+cs*(1-2*fs)2 )) with cs=25.fmax } that defines the plot range. If [f>fmax || f<fmin. +20. +80.64*fs. respectively. -20. -40.13.0. +100. -60. if so it returns Graphics[Hue[0. §G. +80. +40. h=0.fmax] it returns [Hue[0. it computes the nondimensional function value fs=(fmax-f)/(fmax-fmin).14. (a) smax=1. +0. frange A list { fmin.14. On entry CBPColorMap checks for void function range: |fmax|≤0 or fmax≤fmin.1].b]]]]. +0.fs. Brightness is internally preset to b=1. -40. -20. -60. If f is outside the range [fmin. Return[Graphics[Hue[h.6. These extremes can be observed in the palette of Figure G. Figure G. The module is invoked by color = CBPColorMap[f. listed in Figure G. +40. (* Black if f outside range *) Return[Graphics[Hue[0.b=1.64. Brightness and saturation values as indicated in the Figure. G–13 . If [Abs[fmax]<=0 || fmin>=fmax.6) The arguments are: f Function value corresponding to color. {fmin. +0. +80.0. The effect of these choices is illustrated in the color palettes shown in Figure G. +80.2. which along with s=1 gives deep red.frange.smax_]:= Module[{fmin. b=1 color value (c) smax=1. normally 1 (see description below) The module returns the color specification in terms of the Hue built-in function: Graphics[Hue[h. -20. +40.s. -80. h. of the returned color. +60. -100.64*fs. +100. -60. +0. -60. -80. b=1/2 color value -100.14(a). -80.13. -20. +20. s=smax*(1+1/cs)*(1-1/(1+cs*(1-2*fs)^2)).0. -100. saturation and brightness. maps a function value associated with a band to a color through the mapping scheme described below. +60.1]] ]]. which is white. s and b specify the hue. h=0. If f=fmin so that fs=0. -80. Module CBPColorMap that maps a function value to a color defined through the built-in Hue graphics function. fs=(fmax-f)/(fmax-fmin).s.0]]. (d) smax=2/3. +20. If both checks are passed. +60.cs=25}.frange_. which varies from 0 for f=fmax to 1 for f=fmin. whereas if f reaches fmax so that fs=0. smax Maximum color saturation.b]] The triple h. -40. which is black. Map Value to Color: CBPColorMap Module CBPColorMap. +40. h=0. -40. +100.fmax}=frange.fmax. which with s=1 gives deep blue.smax] (G. +20.2 CONTOUR BAND PLOTTER: MINI VERSION CBPColorMap[f_. +100. overriding a default.numele=nx*ny.nx}]. enl[[++k]]={c1. enl[[++k]]={c2+1.c2}]. This is evident in the palette of Figure G.N2. numnod=(nx+1)*(ny+1). For this reason b=1 is internally set once and for all in the local variable list.c1+1}.yc3. k=0.{i. If [pat==1.ny_]:= Module[ {k=0.c2.c1+1.2. For [j=1.xc4. GenTrig3NodeNumbersOverTrapezoid[nx_.c2. enl[[++k]]={c1.j++.xi. eta=2*(j-1)/ny-1. enl[[++k]]={c2+1.c2. c1.y}.4.j.c1. enl[[++k]]={c2+1.{numele}]. Do [Do [ c1=(ny+1)*(i-1)+j.yc4}}=xycorn.i<=nx+1. as can be seen in the palettes of Figure G.{xc4.j<=ny. If [j<=ny/2.0.k.numele. The rational interpolation form and its coefficient cs were obtained by trial and error to get nice color variations in the vicinity of f=0. as can be observed in Figure G. If [pat==2. GenQuad4NodeNumbersOverTrapezoid[nx_. N2=(1+xi)*(1-eta)/4. one would like to get white. enl[[++k]]={c2+1.j<=ny+1.0}.c2. GenNodeCoordOverTrapezoid[xycorn_. enl[[++k]]={c1.c1}]. On the other hand. For [j=1.yc2.yc2}.c2.{xc2. Return[enl]].N1.14(a). For[i=1.yc1}.numele=({2. Figure G.c1+1. nodxyz=Table[0.j.ny_. N3=(1+xi)*(1+eta)/4.c2+1}.c1+1}. enl[[++k]]={c1.c2.1.i.Appendix G: GRAPHIC UTILITIES For the average function value f=(fmin+fmax)/2.c1}].c1+1.yc3}.i.numnod.ny}]. Return[nodxyz]]. If [pat==4. elenod=Table[{0.i<=nx. Setting the maximum saturation smax to less than 1 diffuses colors.c2+1.i++. nodxyz[[++k]]={x.c2.c1+1}. k=0. c2=c1+ny+1.0}.14(c. N1=(1-xi)*(1-eta)/4.yc4. the value of smax can be set to the contour plotter from outside.c2}.eta.elenod}. which is done by the s function stated above.c2. enl[[++k]]={c2+1. Since this diffusivity has some uses.xc3.{numnod}].y. elenod[[++k]]={c1.dy.d). If [pat==3.14(b). x=xc1*N1+xc2*N2+xc3*N3+xc4*N4. y=yc1*N1+yc2*N2+yc3*N3+yc4*N4.c1+1.2}[[pat]])*nx*ny. N4=(1-xi)*(1+eta)/4.{xc3.c1+1. G–14 .c2.0.i++.1. enl[[++k]]={c1.{numele}]. But white is not produced for any h as long as the saturation is nonzero The solution is to force the saturation to be zero if fs=1/2.nx_.x.yc1. enl[[++k]]={c1. enl[[++k]]={c2+1. {{xc1. moving brightness away from 1 is not a good idea since it mangles colors.c2+1}. whence fs=1/2.dx.j++. c2=c1+ny+1.ny_]:= Module[ {k. c1=(ny+1)*(i-1)+j. Mesh generation modules used by the CBPOver2DMeshMini tester listed in Figure G.0.c2+1}.c2}]]. enl=Table[{0. xc1.15. Return[elenod]].enl}.xc2.elenod}. For [i=1.numele. produced with smax=2/3.pat_]:= Module[{i.c1}.j. For fs=0 and fs=1 it yields s=smax as expected.N3.c1+1.c1+1} ]].16.N4. ]]. xi=2*(i-1)/nx-1. {j. "Bandplot over Cook's Wing"}. Module GenNodeCoordOverTrapezoid generates the node coordinates using an isoparametric mapping scheme.fmax.plotspecsleg]] Timing[CBPOver2DMeshMini[nodxyz.yn]].frain. {48.True.False.fn. The node coordinates and element nodelists are placed in nodxyz and elenod.eletyp.16.44}}.eletyp. instead of the average.False.eletyp.frain. in which fmax is the maximum absolute value. It is a flat trapezoid with the corner x-y coordinates { { 0.60 }.False. The G–15 .elenod.aspect.True.eletyp.0}.plotspecsleg]] Timing[CBPOver2DMeshMini[nodxyz.True.False.{0. y) = (x − 24)2 + (y − 30)2 − 200. fmax=Max[fn].True}. { 48.False.fn.False. For example.fn.True. numele=Length[elenod].60}.n++. Meshes of 3-node triangles and 4-node quadrilaterals are generated by modules GenTrig3NodeNumbersOverTrapezoid and GenQuad4NodeNumbersOverTrapezoid. ncint=15.ny. {False.{numnod}].True. fun[x_.True. {True.False. For[n=1. Meshes are generated with nx=ny=8.plotspecsnoleg]] Figure G. nodxyz=GenNodeCoordOverTrapezoid[{{0. Test script for CBPOver2DMeshMini.18}. Timing[CBPOver2DMeshMini[nodxyz. {False.elenod. respectively.fn.aspect. {True. plotspecsnoleg={{}.fn.fn.eletyp.True}.yn}=nodxyz[[n]].2.fmax.44 }. {True.1].fn."Bandplot over Cook's Wing"}.ny]. §G.False. respectively.1. Sometimes it is desirable to associate white with the zero value of the function.False}. plotspecsleg={{{28.nx.plotspecsnoleg]] elenod=GenQuad4NodeNumbersOverTrapezoid[nx. fmin=Min[fn].fn.frain. { 0.n<=numnod.elenod. Obviously the average is zero. suppose that the node function values span the range −85 to 26.False}.False. {False.§G.y_]:=N[(x-24)^2+(y-30)^2-200]*scale.True. numnod=Length[nodxyz]. { 48.16. specify the function range as -fmax. {False. elenod=GenTrig3NodeNumbersOverTrapezoid[nx. Timing[CBPOver2DMeshMini[nodxyz.eletyp.frain. The CBP tester script is listed in G.ny].6}.15.elenod.ncint}.True.eletyp.2 CONTOUR BAND PLOTTER: MINI VERSION Remark G.elenod.{48.elenod. These return the element nodelist array as function values. The function is evaluated at the nodes of the generated mesh and placed into the fn array. To do that.plotspecsnoleg]] Timing[CBPOver2DMeshMini[nodxyz.frain.False}. Testing the Contour Band Plotter The CBP plotter is exercised by a script that generates regular meshes of triangles and quadrilaterals over a planform known as “Cook’s wing” in the FEM literature.elenod. nx=ny=8.False. frain={fmin.plotspecsleg]] Timing[CBPOver2DMeshMini[nodxyz. scale=1.False.7.plotspecsleg]] Timing[CBPOver2DMeshMini[nodxyz.True.True}.False.True. The function to be plotted is the quadratic polynomial f (x.True. {xn. whose f = C lines are circles centered at x = 24 and y = 30. fn=Table[0. and returns that array as function value.eletyp. fn[[n]]=fun[xn.frain.plotspecsnoleg]] Timing[CBPOver2DMeshMini[nodxyz.frain.0 }.44 } } Regular meshes with nx elements in the x direction and ny in the y direction are constructed by the auxiliary modules listed in Figure G.False}.elenod.44}. aspect=60/48.True. Then set fmin=-85 and fmax=+85 in the inputs to the driver module.True}.frain. {True. to define the plot range.998  102 4.03  103 1.621  101 2.841  102 1. One unexpected feature is the appearance of the legend. Its frame looks much bigger in the figures than on the screen.18 for the 3-node triangle and the 4-node quadrilaterals.276  103 Figure G. plus legend.841  102 1. and no legend. (b) A CBP without contour lines.922  102 5. (The figures were created by saving Mathematica plot cells to EPS files and postprocessed through Illustrator. Four plots are generated for each mesh.922  102 5.18.922  102 5.276  103 Figure G.381  102 7. over an 8 × 8 mesh of 4-node quadrilaterals.841  102 1.621  101 2. These are shown in G. plus legend.621  101 2. and no legend. over an 8 × 8 mesh of 3-node triangles. (c) A CLP without colors (grey background).381  102 7.381  102 7.621  101 2.276  103 LEGEND 1.922  102 5. Plots produced by the tester script of Figure G.Appendix G: GRAPHIC UTILITIES (a) (b) (c) (d) Bandplot over Cook’s Wing Bandplot over Cook’s Wing Bandplot over Cook’s Wing Bandplot over Cook’s Wing LEGEND 1.) This unresolved anomaly may require some modification in the plot object creation logic.fmax }.17. Plots produced by the tester script of Figure G.03  103 1.841  102 1.16. respectively.998  102 4.16.03  103 1.998  102 4.03  103 1. (d) A mesh plot showing node locations and element sides (dashed lines). The plots are: (a) A CBP with contour lines drawn. minimum and maximum values are evaluated and placed into fmin.17 and G.998  102 4. G–16 .381  102 7. The number of contour intervals is ncint=15. respectively.276  103 LEGEND 1. (a) (b) (c) (d) Bandplot over Cook’s Wing Bandplot over Cook’s Wing Bandplot over Cook’s Wing Bandplot over Cook’s Wing LEGEND 1. introduced in 1959. A solenoid could lift the pen off the paper. which included color plotting as intrinsic feature.6 Over the following decades PSI6PL underwent drastic changes. Paper rolls were 120-foot long. During the 1970s that kind of machine independent plotters gained popularity because their output could be directed to a alphanumeric terminal such as DEC’s VT100 series. The arrangement allowed line drawings to be made under computer control. Once satisfactory results were obtained. when the emergence of pixel-display screens. Graphic output produced by batch jobs at high-end computers. finally allowed FEM graphics to become platform independent. 7 Fortran. PSI6PL was largely based on a similar program. IBM sold the Calcomp 565 as the IBM 1627 for use in with its low-end scientific computers. A pen was pressed by a spring against a paper scrolling over the drum. as well as the horizontal movement of a pen holder over the drum. The turning point was reached in the early 1980s. Genesis and Evolution of Plotting Utilities Graphic utilities presented in this Appendix had origins in Fortran code written over five decades ago. high prices and limited software kept them out of the mainstream. and laser printers brought high-quality graphics to a wider audience.01-in increments. was offloaded to tape and processed by the low-end one. It was the first fully automated FEM program based written in Fortran. but for obvious reasons there is no clear historical trace. 5 Wilson’s FEM thesis program was called PSI (developed 1959-63).5 The main extension for PSI6PL was to allow 6-node triangles. higher quality offline plots could be requested. meaning that contour lines were produced as segments drawn with a ink pen on a Calcomp plotter. personal computers. The tape was later processed as an offline job. never had platform independent graphics. PSI3PL was one of the original FEM graphics tools developed in an academic environment. The computer could control the rotation of an 11 inch wide drum within 0. G–17 .and 6-node triangles for membrane and plate bending. because the DSM solution process was iterative in nature. also under Ray Clough. Pictures of the Calcomp 565 (now in computer museums) may be seen in Google Images. It had to call machine-dependent libraries typically written in assembly language. Although vector-display. for Plane Stress Iteration.7 Successors of the original Fortran codes were written in Mathematica and used in FEM course development since the mid 1990s. popularized with the advent of minicomputers. An alphanumeric version called CONTPP in which the plot was done on a line printer (a “printer plot”) was developed while at Boeing [744]. 4 The Calcomp 565 drum plotter. digital fonts.3 GENESIS AND EVOLUTION OF PLOTTING UTILITIES §G. The appearance in the 1990s of high level languages such as Matlab and Mathematica. not long after FEM exploded beyond aerospace applications. usually overnight. PSI6PL was written in Fortran IV. interactive graphic terminals were available by the late 1960s. written in Fortran II by Ed Wilson after completing his 1963 thesis [800]. like all low-level languages. but liquid ink pens were also available for higher quality drawings.4 Plot files were generated by a mainframe computer (at the time. Loss of plot quality was compensated by human time saved. The standard pen was a ball point. such as the IBM 7094. A metal bar above the take-up reel allowed the paper to be torn off and removed. an IBM 7094 that served the entire Berkeley campus) and stored on magnetic tape.§G. 6 Such programs seem to have been written at aerospace companies in the late 1950s. called PSI3PL. A version called MESHPP that plotted a FEM mesh was published in 1972 [205]. They are described in various Sections throughout this Appendix. This one allowed triangular and quadrilateral elements with or without midside nodes. That thesis dealt with 3. The author developed in 1965 a FEM contour plotter called PSI6PL for thesis work at Berkeley [203] under Ray Clough. was one of the first computer graphic output devices sold.3. It was a classical ink-jet contour plotter. H An Outline of MSA History H–1 . . . . The Matrix CFM Takes Center Stage §H. . .6. . . .8. . . . H–3 H–4 H–6 H–6 H–6 H–7 H–8 H–8 H–8 H–8 H–9 H–10 H–11 H–12 H–13 H–13 H–13 H–14 H–15 H–16 H–16 . .6. . . .Answers: 1959-1970 §H. Epilogue . . . .10. . §H.Questions: 1956-1959 Act III . . . §H. . . . . .1.9.2. . . .6. . . . . . . . . The Source Papers .1. §H. . . . . §H. .WWII Blackout: 1938-1947 Act II .3. §H. .8. . INTRODUCTION Background and Terminology Prolog . . .Appendix H: AN OUTLINE OF MSA HISTORY TABLE OF CONTENTS Page §H. . . §H. . . . . . Two Paths Through the Forest .Victorian Artifacts: 1858-1930 Act I . . . . . . . .4.2. .6. .1. . . . . . . . . The Final Test . . The Fire Spreads . .5. .6. .4. . . . . Computers Become Machines . .1. . . .4. .8. . . . .6.5. . . .6. . §H. . The Delta Wing Challenge . . §H. Dubious Duality . . . . .8. .3. .Gestation and Birth: 1930-1938 §H. . §H. . . . . . .2. §H. . . . . . . . §H. §H. . . . Interlude I . . . The MSA Source Book . .4. . . .3. §H. Interlude II . . §H. . . . Reduction Fosters Complexity . . §H. . . .Revisiting the Past: 1970-date Concluding Remarks H–2 . . .2. . . §H.7.6.The Matrix Forest: 1947-1956 §H. A Path Outside the Forest . . . . and as yet unnamed. displacement method. USA Report CU-CAS-00-14.3] and the first book. The present paper is an expansion of the historical vignettes in Section 4 of [1]. Argyris and Turner. a town that has now become a suburb of greater London. in 1938 [4]. force method.§H. Felippa Department of Aerospace Engineering Sciences and Center for Aerospace Structures University of Colorado. Duncan. Boulder. Beginning in 1930 Collar and Duncan formulated discrete aeroelasticity in matrix form. Argyris. These contributions are lumped into three milestones: Creation. and Turner. A. this work systematized the concept of assembly of structural system equations from elemental components.1. Act II spans a period of confusion during which matrix methods assumed bewildering complexity in response to conflicting demands and restrictions. Act I describes the pre-WWII formative period. In 1959 Turner proposed [6] the Direct Stiffness Method (DSM) as an efficient and general computer implementation of the then embryonic. through which MSA completed morphing into the present implementation of the Finite Element Method.” Since then the writer has examined reports and publications of that time. direct stiffness method. The representation and terminology for discrete dynamical systems is essentially that used today. It outlines the major steps in the evolution of MSA by highlighting the fundamental contributions of four individuals: Collar. INTRODUCTION Who first wrote down a stiffness or flexibility matrix? The question was posed in a 1995 paper [1]. CO 80309-0429. To enliven the narrative the outline is configured as a three-act play. The educated guess was “somebody working in the aircraft industry of Britain or Germany. These trace the origins of Matrix Structural Analysis to the aeroelasticity group of the National Physics Laboratory (NPL) at Teddington. which shaped this evolution. Act III outlines the cleanup and consolidation driven by the appearance of the Direct Stiffness Method. In a series of journal articles appearing in 1954 and 1955 [5] Argyris presented a formal unification of Force and Displacement Methods using dual energy theorems. The first two journal papers on the topic appeared in 1934-35 [2. duality §H. submitted for publication in Computers & Structures Abstract The evolution of Matrix Structural Analysis (MSA) from 1930 through 1970 is outlined. history. Finite Element H–3 . Unification. June 2000. Although practical applications of the duality proved ephemeral.1 INTRODUCTION A Historical Outline of Matrix Structural Analysis: A Play in Three Acts C. Keywords: matrix structural analysis. Hightlighted are major contributions by Collar and Duncan. in the late 1920s or early 1930s. finite elements. FEMinization. couthored with Frazer. Readers familiar with the subject should skip to Section 3. as illustrated in Figure 2. naturally encompassed structural and continuum models. fully explained in a follow-up article [7]. Act II . Flowchart of model-based simulation (MBS) by computer. The following events feature a more international cast. as well as nonlinear. This technique.2. Act I. the young FEM begin to settle.K. Its basic components have not changed since 1970. as well as most of the Prologue. and become the dominant implementation in production-level FEM programs. Act I .Questions: 1956–1959. stability and dynamic simulations. Interlude II . into the configuration shown on the right of Figure 2. For mechanical systems such as structures the Finite Element Method (FEM) is the most widely used discretization and solution technique.Victorian Artifacts: 1858–1930. two interludes and a closing epilogue. The morphing of the MSA from the pre-computer era — as described for example in the first book [4] — into the first programmable computers took place.Answers: 1959–1970. Historically the ancestor of FEM is MSA. To enliven and focus the exposition these will be organized as three acts of a play. this Section offers some general background and explains historical terminology. These milestones help dividing MSA history into three periods. Method. Here is the program: Prologue . Act III .WWII Blackout: 1938–1947. §H. takes place in the U.Appendix H: AN OUTLINE OF MSA HISTORY IDEALIZATION Physical system SOLUTION DISCRETIZATION Discrete model Mathematical model Discrete solution Solution error Discretization + solution error Modeling + discretization + solution error VERIFICATION & VALIDATION Figure 1.The Matrix Forest: 1947–1956.Gestation and Birth: 1930–1938. Interlude I . in wobbly gyrations. during the early 1960s. The overall schematics of model-based simulation (MBS) by computer is flowcharted in Figure 1. Background and Terminology Before departing for the theater. during the transition period herein called Act II. Following a confusing interlude. Epilogue . properly supplemented with a “matrix overture” prologue.Revisiting the Past: 1970-date. H–4 . By 1970 DSM had brought about the demise of the Classical Force Method (CFM). 11] with the precise statement of compatibility and completeness requirements for FEM. and finalized by Melosh [9] and Irons [10. Martin and Topp [8]. which select for example stress function values or Lagrange multipliers as unknowns. tended to use spatially discrete energy forms from the start.2 BACKGROUND AND TERMINOLOGY Discrete Mathematical Models Continuum Mathematical Models MSA FEM Various Matrix Formulations Human Computers DSM Matrix Formulation Programmable Digital Computers Figure 2. The most noticeable advance is that pre-1955 MSA. These names are not used in the historical outline. (The qualifier “classical” is important because there are other versions of the Force Method. It began as a simple displacement method in Act I. following classical Lagrangian mechanics. This means that the primary unknowns are of the same type of the adjoint variables of the governing functional. adjoint method. Clough. Appropriate mathematical names for the DM are range-space method or primal method. and computing tools to do the numerical work. The FEM configuration shown on the right settled by the mid 1960s. but are useful in placing more recent developments. Morphing of the pre-computer MSA (before 1950) into the present FEM. On the left “human computer” means computations under direct human control.) There are additional methods that involve combinations of displacements. The “human computers” of the 1930s and 1940s morphed by stages into programmable computers of analog and digital type. which in structural mechanics are forces. The terms Stiffness Method and Flexibility Method are more diffuse names for the Displacement and H–5 . forces and/or deformations as primary unknowns. Appropriate names for the CFM are null-space method.§H. MSA and FEM stand on three legs: mathematical models. Unidimensional structural models have changed little: a 1930 beam is still the same beam. The use of space-continuum forms as basis for multidimensional element derivation was pioneered by Argyris [5]. or dual method. as well as nonstructural FEM applications. possibly with the help of analog devices (slide rule) or digital devices (desk calculator). The matrix formulation moved like a pendulum. In the Displacement Method (DM) these are physical or generalized displacements. successfully applied to triangular geometries by Turner. This means that the primary unknowns are the same type as the primary variables of the governing functional. but these have no practical importance in the pre-1970 period covered here. These are those solved for by the human or digital computer to determine the system state. In the Classical Force Method (CFM) these are amplitudes of redundant force (or stress) patterns. reached bewildering complexity in Act II and went back to conceptual simplicity in Act III. matrix formulation of the discrete equations. within a general framework. Of the three legs the latter is the one that has undergone the most dramatic changes. Matrix formulations for MSA and FEM have been traditionally classified by the choice of primary unknows. Collar joined Frazer and Duncan to provide more help with theoretical investigations. The situation began to change with the advent of electronic desk calculators. Biplanes disappeared by 1930. By the early 1900s the essential developments were complete. are important part of the modeling and solution process. A readable historical account is given by Timoshenko [16]. Matrix algebra and matrix calculus were developed primarily in the U.Victorian Artifacts: 1858-1930 Matrices — or “determinants” as they were initially called — were invented in 1858 by Cayley at Cambridge. and we recognized that we could only advance by breaking the blade into. along with Heaviside. respectively. Generally speaking these apply when stiffness and flexibility matrices. because matrix notation provided a convenient way to organize complex calculation sequences. 10 segments and treating it as having 10 degrees H–6 . and Germany.3. §H. The non-matrix formulation of Discrete Structural Mechanics can be traced back to the 1860s. a ternary flutter problem in terms of matrices was neat and compendious. R. J. Compared to vector and tensor calculus. from which the following summary is extracted. Act I . Frazer. Prolog .4. the term “matrix” never appears in this book. In the 1920s aeroelastic research began in an international scale. §H. Pertinent developments at the National Physical Laboratory (NPL) are well chronicled in a 1978 historical review article by Collar [17]. Aeroelastic equations were tedious and error prone to work out in long hand.1. The Source Papers The aeroelastic work at the Aerodynamics Division of NPL was initiated in 1925 by R.K. In January 1930 A. For a history of these early developments the monograph by Muir [12] is unsurpassed. although Gibbs (the co-inventor. He was. Duncan and I were in search of numerical results for the vibration characteristics of airscrew blades. say. although technically it involved infinite matrices. in August 1928.4.Appendix H: AN OUTLINE OF MSA HISTORY Force Methods. It laid out the principles on which flutter investigations have been based since. Two years later. however. of vector calculus) claimed priority for the German mathematician Grassmann. respectively. they published a monograph on flutter [18]. This evolution meant lower drag and faster speeds but also increased disposition to flutter. Heisenberg’s 1925 matrix version of quantum mechanics was a notable exception. more concerned with formal manipulation and transformation to other coordinates than with numerical results. §H. and he recognized that the statement of. Here are Collar’s own words [17. Duncan.Gestation and Birth: 1930-1938 In the decade of World War I aircraft technology begin moving toward monoplanes. On the other hand. for example. Aeroelasticity was a natural application because the stability analysis is naturally posed in terms of determinants of matrices that depend on a speed parameter. Interestingly enough. Several comprehensive treatises in matrix algebra appeared in the late 1920s and early 1930s [13–15]. He was joined in the following year by W. Its original use was to provide a compact language to support investigations in mathematical topics such as the theory of invariants and the solution of algebraic and differential equations. A. matrices had relatively few applications in science and technology before 1930. which came to be known as “The Flutter Bible” because of its completeness. page 17] on the motivation for introducing matrices: “Frazer had studied matrices as a branch of applied mathematics under Grace at Cambridge. in 1935. respectively. As befit the focus on dynamics. Despite these flaws its direct and indirect influence during the next two decades was significant. which are not coherently interweaved. respectively. flexibility. damping and stiffness are usually denoted by A. We published our method in two papers in Phil. The first 245 pages are spent on linear algebra and ODE-solution methods that are now standard part of engineering and science curricula. in more agreement with the modern style. The concept of structural element is primitive: take a shaft or a cantilever and divide it into segments. No wonder that the authors were not happy about the book. oriented to desk calculators. and dynamical matrices. That leaves the modeling and application examples. It has been reprinted many times. This clean decomposition does not hold for flexibility matrices because the inverse of a sum is not the sum H–7 . but apparently the traditional publication vehicles were not viewed as suitable for description of the new methods. The source of damping is usually aerodynamic. A general inertia matrix is called [a].3]. stills sells in hundreds of copies a year — mostly paperback. the “father” of relaxation methods] suggested that the authors of the various papers should be asked to incorporate them into a book. Duncan had gone to his Chair at Hull. the displacement method is used. rudders or ailerons. pre-WWII aircraft were overdesigned for strength and typically failed by aerodynamic or propulsion effects. Readers are reminded that in aeroelastic analysis stiffness matrices are generally unsymmetric. it was the book we were instructed to write. [c] and [D] = [c]−1 [m] = [ f ][m]. treating damped systems. and the matrix iteration procedure was born. in 1934 and the second. being the sum of a a symmetric elastic stiffness and an unsymmetric aerodynamic stiffness. No changes other than minor fixes are apparent. They do not feel outdated. The matrix symbols used are [m]. Mag. Pointmass displacement degrees of freedom are collected in a vector {x} and corresponding forces in vector {P}. The numerical methods. rather than the one we would have liked to write. are obsolete. The assembled mass. The interesting thing is that the authors did not regard it as particularly good.§H. Familiar names appear: mass. §H. B and C.GESTATION AND BIRTH: 1930-1938 of freedom. stiffness or flexibility is given directly. stiffness. dealing with conservative systems. There is no static stress analysis.4.” The writer has copies of the 1938 and 1963 printings. and this was agreed. These are amazing documents: clean and to the point. [2. The notation was changed in the book [4] discussed below. for example mass. By the time this had appeared. F.” The aforementioned papers appear to be the earliest journal publications of MSA. The MSA Source Book Several papers on matrices followed.4 ACT I . Then we found that if we put an approximate mode into one side of the equation. The result was the appearance in November 1938 of “Elementary Matrices” published by Cambridge University Press [4]. At that stage Collar notes [17. In particular matrices are identified in [4] by capital letters without surrounding brackets. the first. respectively. K and D in common use today. it was the first book to treat matrices as a branch of applied mathematics. and readily expressed numerically. instead of the M. we calculated a better approximation on the other. [ f ]. page 18] that “Southwell [Sir Richard Southwell. The book focuses on dynamics of a complete airplane and integrated components such as wings. These are called [q] and [Q].2.3] the book feels dated. This approach also was more conveniently formulated in matrix terms. and translated into several languages. Unlike the source papers [2. when translated to generalized coordinates. Being first excuses imperfections. and even now after nearly 40 years. They had followed Southwell’s “merge” suggestion too literally. But the focus has shifted from dynamics to statics. a scientific-computation oriented machine built by ERA. Precise accounts of MSA work in aerospace are difficult to trace because of publication restrictions. R&D groups restaffed. Punched-card computers and relay-calculators were increasingly used. propulsion. T. Act II . By 1956 structural engineers were still likely to be using their slides rules. §H. manufactured by a division of Remington-Rand.5. This was the first computer with a drum memory. Flexibilities were often measured experimentally by static load tests. who soon formed computer centers allocating and prioritizing cycles. §H. On reading the survey articles by Collar [17. The six initial machines were delivered to US government agencies [21]. fracture and fatigue analysis. In response to these multiple demands aircraft companies staffed specialized groups: stress. and especially stress. combat maneuvers. The treatment of [4] includes the now called load-dependent stiffness terms.6. Marchants and punched card equipment. A multilevel management structure with well defined territories emerged. page 17]. Failsafe design gained importance. Turbines. appeared during summer 1951.19] one cannot help being impressed by the lack of pretension.1. aerodynamics. Aeroelastic research continued. founder of IBM. It was joined in 1952 by the Univac 1103. driven by two of the legs supporting MSA: new computing resources and new mathematical models. Computers Become Machines The first electronic commercial computer: Univac I. the traditional flexibilitybased methods such as CFM were appropriate. The Comet disasters forced attention on stress concentration and crack propagation effects due to cyclic cabin pressurization. Turning around from that prediction. The matrix formulation merely reacts. For the beam-like skeletal configurations of the time. and journal pipelines refilled. avionics.Appendix H: AN OUTLINE OF MSA HISTORY of inverses. Only after the 1957 appearance of the first high level language (Fortran I. J. The NPL team members shared a common interest: to troubleshoot problems by understanding the physics. which represent another first. The behemoths had to be programmed in machine or assembly code by specialists. But this did not mean immediate access for everybody. and structural damage survival increased interest in stress analysis. supersonic flight and rocket propulsion brought forth thermomechanical effects. With Duncan he had created a tool for future generations of engineers to expand and improve upon. had been once quoted as saying that six electronic computers would satisfy the needs of the planet. IBM launched the competing 701 model in 1953. §H. buckling. H–8 . New demands posed by high strength materials. Yet he appears almost apologetic: “I will complete the matrix story as briefly as possible” [17. offered on the IBM 704) were engineers and scientists able (and allowed) to write their own programs. The transition illustrated in Figure 2 starts. Watson Sr. and analog devices relied upon to solve ODEs in guidance and ballistics.WWII Blackout: 1938-1947 Interlude I is a “silent period” taken to extend from the book [4] to the first journal publication on the matrix Force Method for aircraft [20]. and fitted into the calculations.The Matrix Forest: 1947-1956 As Act II starts MSA work is still mainly confined to the aerospace community. a R-R acquisition. and so on. The blackout was followed by a 2-3 year hiatus until those restrictions were gradually lifted. and viewed numerical methods simply as helpers. Interlude I . aeroelasticity.6.. Big aircraft companies began purchasing or leasing these expensive wonders by 1954. higher speeds. 6. circumventing the difficulties of twodimensional elasticity.THE MATRIX FOREST: 1947-1956 θB θA MA wB wA VA A B VB MB Integrate governing ODEs from A to B wB θB VB MB Transition = matrix wA θA VA MA Rearrange & part-invert Remove RBMs. which focused on sweptback wing analysis. Panels were modeled conservatively as inplane shear-force carriers. is by Levy [20]. over the member to relate end forces and displacements.5.” Likewise. general form discovered recently. Transition. The development culminates in the article series of Argyris [5] discussed in Section 6. Civil and Mechanical Engineering students. It was routinely taught to Aerospace. followed by publications of Rand [22]. Wehle and Lansing [24] and Denke[25]. flexibility and stiffness matrices for unidimensional linear structural elements.2. such as the plane beam depicted here. The first journal article on the matrix CFM. The structures of pre1950 aircraft were a fairly regular lattice of ribs. see text) θA θB (RBMs = rigid body modes of the element. rearrange & part-invert θA θB = Deformational Flexibility Matrix MA VA MA VB MB = Free-free Stiffness Matrix Remove RBMs Invert MA = MB MB wA θA wB θB ??? Expand with RBMs Deformational Stiffness Matrix wA θA wB θB = Free-free Flexibility Matrix VA MA VB MB (Not believed to exist. The method provides directly the internal forces. H–9 . spars and panels. The Matrix CFM Takes Center Stage In static analysis the non-matrix version of the Classical Force Method (CFM) had enjoyed a distinguished reputation since the source contributions by Maxwell. sweptback wings of high aspect ratio were eventually fitted into these models. Langefors [23]. A matrix framework was found convenient to organize the calculations. the success of CFM depends crucially on the selection of good redundant force patterns. can be obtained by integrating the governing differential equations. If the panels are ignored.§H. It offers considerable scope of ingenuity to experienced structural engineers through clever selection of redundant force systems. analytically or numerically. §H.6 ACT II . such as including intermediate supports or elastic foundations. forming beam-like configurations. Clever things were done with this “method of lines” approach. two for the example) Invert Figure 3. the selection of appropriate redundants was well understood. With some adjustments and experimental validations. Success in hand-computation dynamics depends on “a few good modes. which are of paramount interest in stress-driven design. Mohr and Castigliano. Most humans cannot comfortably solve by hand linear systems of more than 5 or 6 unknowns by direct elimination methods.6. Reduction Fosters Complexity For efficient digital computation on present computers. is secondary. Clearly solving a full system of 100 equations was still a major challenge. The landmark contribution of Turner. although as noted above this was often done by groups separated from stress and buckling analysis. is mentioned for fun in the label of Figure 4. this was only partly successful but was able to illuminate the advantages of the stiffness approach. up to certain computer-dependent bounds. the second being the DSM discussed later. This rekindled interest in stiffness methods. The article series by Argyris [5] contains the derivation of the 8 × 8 free-free stiffness of a flat rectangular panel using bilinear displacement interpolation in Cartesian coordinates. In static analysis reduction was H–10 . from one end to the other. A general closed-form expression for this matrix as a Moore-Penrose generalized stiffness inverse was not found until recently [26. This well known technique has the virtue of reducing the number of unknowns since the integration process can absorb structural details that are handled in the present FEM with multiple elements. Using simple algebraic manipulations three more matrices shown in Figure 3 can be obtained: deformational flexibility. Clough [29] observes that this paper represents the delayed publication of 1952-53 work at Boeing. (One particularly bizarre proposal. This was not believed to exist since it is the inverse of the free-free stiffness. But that geometry was obviously inadequate to model delta wings. The first attempt in this direction is by Levy [28]. §H. Modeling delta wing configurations required two-dimensional panel elements of arbitrary geometry.) This motivated efforts to construct the stiffness matrix of the panel directly.4. Efforts to follow the ODE-integration approach lead to failure. and exerted noticeable influence until the early 1970s. Because of the larger number of unknowns compared to CFM.Appendix H: AN OUTLINE OF MSA HISTORY §H. Clough. which is singular. vectorization and parallelism) is of primary concern whereas raw problem size.27]. but were memory strapped. 2048 36-bit words. It should come as no surprise that problem reduction techniques were paramount throughout this period. for solving exactly the wrong problem. For example the Univac I had 1000 45-bit words and the IBM 701.6. and 5–10 times that through problemoriented “relaxation” methods. Notably absent from the scheme of Figure 3 is the free-free flexibility. The governing differential equations are integrated. Martin and Topp [8] finally succeeded in directly deriving the stiffness of a triangular panel. A new modeling challenge entered in the early 1950s: delta wing structures. is the simplest and most versatile. data organization (in terms of fast access as well as exploitation of sparseness. The first-generation digital computers improved speed and reliability. competitive use of the DM in stress analysis had necessarily to wait until computers become sufficiently powerful to handle hundreds of simultaneous equations. The traditional approach to obtain flexibility and stiffness matrices of unidimensional structural members such as bars and shafts is illustrated in Figure 3. But for hand calculations minimal problem size is a key aspect. of which the triangular shape. grouping forces and displacements. are thereby connected by a transition matrix. deformational stiffness and free-free stiffness. It is recognized as one of the two sources of present FEM implementations. The Delta Wing Challenge The Displacement Method (DM) continued to be used for vibration and aeroelastic analysis.3. illustrated in Figure 4. analytically or numerically. The end quantities. H–11 .” Matrix formulation evolved so that the unknowns were the force redundants y in the CFM and the displacement redundants z in the DM. but problems persisted. among them “kinematically indeterminate displacements” and “kinematic deficiencies. that is. The DSM master equations can be assembled without functional labels.§H. The puzzle was first solved in [8] by lumping edge tractions to node forces on the way to the free-free stiffness matrix. have been given many names. Boundary conditions are applied on the fly by the solver. Partitioning matrices in accordance to (H. achieved by elaborated functional groupings of static and kinematic variables. nonzero applied displacements were clearly differentiated from zero-displacements arising from support conditions because the latter can be thrown out while the former must be retained. To a present day FEM programmer familiar with the DSM. which are the counterpart of redundant forces.1) fostered exuberant growth culminating in the matrix forest that characterizes works of this period. Those quantities “live” on different places. Similarly.1)   applied displacements u a    primary redundant displacements z generalized displacements   condensable displacements uc   secondary support conditions us = 0 Here applied forces are those acting with nonzero values. Modeling delta wing configurations required panel elements of arbitrary geometry such as the triangles depicted here. In reduction-oriented thinking zero forces on unloaded degrees of freedom are classified as condensable because they can be removed through static condensation techniques. Interior fields assumptions were inevitable. The traditional ODE-based approach of Figure 3 was tried by some researchers who (seriously) proposed finding the corner displacements in (a) produced by the concentrated corner forces in (b) on a supported triangle from the elasticity equations solved by numerical integration! Bad news: those displacements are infinite.THE MATRIX FOREST: 1947-1956 fy3 uy3 (a) 3 (b) 3 ux3 (c) fx3 fy2 uy2 2 uy1 1 ux1 ux2 2 fy1 1 fx1 fx2 tn2 3 tn1 ts1 2 ts2 1 ts3 tn3 Figure 4. A linear inplane displacement field is naturally specified by corner displacements. But the computing limitations of the time must be kept in mind to see the method in the madness. the ones visibly drawn as arrows by an engineer or instructor. Redundant displacements. the complexity of the matrix forest would strike as madness. whereas a constant membrane force field is naturally defined by edge tractions (c).6 ACT II . Most schemes of the time can be understood in terms of the following classification:   applied forces fa    primary redundant forces y generalized forces   condensable forces fc = 0   secondary support reactions fs (H. in which both methods are presented side by side with simply an exchange of symbols and appropriate rewording.” This section credits Ostenfeld [30] with being the first to draw attention to the parallel development. Still in print (by Dover) is the book by Przemieniecki [32]. a technique not fully developed until the mid 1960s. This unification exerted significant influence over the next decade. with kinematic deficiencies taken to be the condensable displacements: z ≡ uc . (H. The exposition of the Force Method for wing structures reaches a level of detail unequaled for the time.Appendix H: AN OUTLINE OF MSA HISTORY §H. shows clearly that parallel to the analysis of structures with forces as unknowns there must be a corresponding theory with deformations as unknowns. Part I. The DM coverage is strongly influenced. This book covers both paths. An excellent textbook exposition is that of Pestel and Leckie [31]. §H. The vector symbols on the right reflect a particular choice of the force-displacement decomposition (H.6. These chapters are highly recommended to understand the organization of numeric and symbolic hand computations in vogue at that time. In 1960 the articles were collected in a book. eventually able to write Fortran programs. The side by side presentation of Table II of [5] tried to show that CFM and DM were going through exactly the same sequence of steps. g = A0 ua + A1 z. The Displacement Method is then introduced by duality — called “analogy” in this work: “The analogy between the developments for the flexibilities and stiffnesses . H–12 . These can be formulated from the total potential energy principle via shape functions.6. whereas Part II. Part I carefully merges classical contributions in energy and work methods with matrix methods of discrete structural systems. are “to generalize. The coverage is methodical. H. in Chapters 9 and 10. during 1954 and 1955 collectively represents the second major milestone in MSA. Although done with good intentions this approach did not anticipate the direct development of continuum-based finite elements through stiffness methods.” The first objective succeeds well.1). which covers additional material on thermal analysis and torsion. using 83 pages and about 200 equations. The steps are based on the following decomposition of internal deformation states g and force patterns p: p = B0 fa + B1 y.5. reprints the four articles. stated in the Preface. sub-entitled General Theory. The duality is exhibited in a striking Form in Table II. Both authors are listed as affiliated with the Aerospace Department of the Imperial College at London. Some engineers. Two Paths Through the Forest A series of articles published by J. The dual objectives of the work.. with numerous illustrative examples. which describes the DM and CFM paths in two Chapters: 6 and 8. entitled “Energy Theorems and Structural Analysis” [5]. but it is out of print.. and represents a key contribution toward the development of continuum-based models. following Argyris’ framework. by the DSM. however. extend and unify the fundamental energy principles of elastic structures” and “to describe in detail practical methods of analysis of complex structures — in particular for aeronautical applications.2) Here the Bi and Ai denote system equilibrium and compatibility matrices. particularly on the European community. thus duality is only superficially used. respectively.6. Dubious Duality A key application of the duality in [5] was to introduce the DM by analogy to the then better known CFM. is co-authored by Argyris and Kelsey. Argyris in four issues of Aircraft Engrg. On 6 November 1959. Interlude II .” The DSM is explained in six text lines and three equations: “For an individual element e the generalized nodal force increments {X e } required to maintain a set of nodal displacement increments {u} are given by a matrix equation {X e } = K e {u} H–13 (H. It is also noted there that (H. And that was before the DSM.8 ACT III . which had sponsored workshops and lectureships since 1952.2) is not a particularly useful state decomposition. the first satellites. Turner. appeared. the year of the first DSM paper. Arguments and counter-arguments raised by the foregoing questions will linger. Fortran.) §H.8. M. which has no dual counterpart under the decomposition (H. tools and applications is now on the table. §H. which appeared in an AGARDograph volume published by Pergamon in 1964 [7]. Characteristic of Turner’s style.Answers: 1959-1970 The curtain of Act III lifts in Aachen.2).ANSWERS: 1959-1970 concluded that the methods had similar capabilities and selecting one or the other was a matter of taste. including the DSM. (Most structures groups. So many options. The paradox is explained in Section 4 of [1]. whereby the stiffness matrix for a composite structure is generated by direct addition of matrices associated with the elements of the structure. Nonetheless it must have produced a strong impression since published contributions to the next (1962) panel meeting kept referring to it. presented the first paper on the Direct Stiffness Method to an AGARD Structures and Materials Panel meeting [6]. A Path Outside the Forest No written record of [6] seem to exist. Bound proceedings or reports are called AGARDographs. upholding tradition. the essential features of a system for numerical analysis of structures. to be derived for skeletal structures as well as for a subset of continuum models.Questions: 1956-1959 Interlude I was a silent period dominated by the war blackout. In July 1962 Turner. Interlude II is more vocal: a time of questions. An array of methods. that one permits all known methods of Classical MSA. Martin and Weikel presented an expanded version of the 1959 paper. were described.3) . J. Stiffness or flexibility? Forces or displacements? Do transition matrix methods have a future? Is the CFM-DM duality a precursor to general-purpose programs that will simulate everything? Will engineers be allowed to write those programs? As convenient milestone this outline takes 1959. ICBMs.7. Act III . models. Germany.1. §H. as the beginning of Act III. opted for the CFM. A better choice is studied in Section 2 of that paper. termed the direct-stiffness method. Solid-state computers. the Introduction goes directly to the point: “In a paper presented at the 1959 meeting of the AGARD Structures and Material Panel in Aachen. The characteristic feature of this particular version of the displacement method is the assembly procedure.8.§H. and growing. however. (AGARD is NATO’s Advisory Group for Aeronautical Research and Development. By 1960 the method had been applied to nonlinear problems [33] using incremental techniques. head of the Structural Dynamics Unit at Boeing and an expert in aeroelasticity. for two more decades into diminishing circles of the aerospace community.) But the few engineers who tried implementing both noticed a big difference. 3)-(H. It is essential that the basic program be able to acommodate arbitrary additions to the collection of subroutines as new elements are encountered. A more suggestive notation used in present DSM  expositions is K = (L e )T K e L e . they remain unchanged throughout the analysis. Resultant nodal force increments acting on the complete structure are {X } =  {X e } = K {u} (H. Some computational aspects are missing from this paper. It also provides a convenient mechanism for introducing local structural modifications into the analysis. To do buckling one adds a geometric stiffness and solves the stability eigenproblem. This permits the utilization and evaluation of new element representations which have not yet been programmed. Problems involving nonuniform heating of redundant structures and/or large deflections are solved in a sequence of linearized steps. Provision should also be made for the introduction of numerical stiffness matrices directly into the program.6) The vector {u} ¯ denotes the resultant displacements relative to a local reference system which is attached to the element.4) wherein K . To do dynamics and vibration one adds mass and damping terms. The latter were first addressed in Wilson’s thesis work [34. . as outlined in the next paragraph: “For the solution of linear problems involving small deflections of a structure at constant uniform temperature which is initially stress-free in the absence of external loads. is given by the summation K =  Ke (H.5) to be correct matrix equations..” Knowledgeable readers will note a notational glitch. It work the same way for a 2-node bar. For (H. Stiffness matrices are revised at the beginning of each step to account for charges in internal loads. or a 64-node hexahedron. including the first ever mention of user-defined elements: “Stiffness matrices are generally derived in local reference systems associated with the elements (as prescribed by a set of subroutines) and then transformed to the basic reference system. temperatures and geometric configurations. Note also the use of  in front of u and X and their identification as “increments. notably the treatment of simple displacement boundary conditions.” Next are given some computer implementation details.35]. the matrices K e are defined in terms of initial geometry and elastic properties of the materials comprising the elements..3)-(H. a technique first explained in [33]. a step that is computationally unnecessary. in which L e are Boolean localization matrices. To do nonlinear analysis one modifies the stiffness in each incremental step.5) which provides the basis for the matrix assembly procedure noted earlier.5) is insensitive to element type.Appendix H: AN OUTLINE OF MSA HISTORY in which K e denotes the stiffness matrix of the individual element. To apply multipoint constraints the paper [7] advocates a master-slave reduction method. H–14 . K e must be an element stiffness fully expanded to global (in that paper: “basic reference”) coordinates. and the use of sparse matrix assembly and solution techniques. the stiffness of the complete structure.” This simplifies the extension to nonlinear analysis. Associated with these are a set of subroutines for generation of stress matrices S e relating matrices of stress components σ e in the local reference system of nodal displacements: {σ e } = S e {u} ¯ (H.” The assembly rule (H. Eventually the development of the Force version was cancelled in 1969. including dynamics and buckling. at Swansea. only Boeing and Bell (influenced by Turner and Gallagher. These codes were freely disseminated into the non-aerospace world since 1963. to MSC and Martin.ANSWERS: 1959-1970 §H. Computers of the early 1960s were finally able to solve hundreds of equations. to be used at many aerospace companies. The Fire Spreads DSM is a paragon of elegance and simplicity. In an ideal world. Among academia the Civil Engineering Department at Berkeley become a DSM evangelist through Clough. makes no mention of force methods. The matrix formulation returned to the crispness of the source papers [2. we outlived them.8. fluids. electromagnetics. Substantial effort was spent in those “structural cutters” during the 1960s [32.8 ACT III .) had begun.8.” Structural engineers hired in the 1940s and 1950s were often in managerial positions in the 1960s.3. . The split reminds one of Einstein’s answer when he was asked about the reaction of the old-guard school to the new physics: “we did not convince them. The first textbook on FEM [37]. respectively) had made major investments in DSM by 1965. who made his students — including the writer — use DSM in their thesis work.38]. structural engineers should have quickly razed the forest and embraced DSM. The 1965 NASA request-for-proposal to build the NASTRAN finite element system called for the simultaneous development of Displacement and Force versions [39]. How can duality fail? All that is needed are algorithms for having the computer select good redundants automatically. The following year may be taken as closing the transition depicted in Figure 2. A widely referenced MSA correlation study by Gallagher [36] helped dissemination. which appeared in 1967.3]. Each version was supposed to have identical modeling and solution capabilities.2. It did not happen that way. Through this path the old MSA and the young FEM achieved smooth confluence. and as marking the end of the Force Method as a serious contender for general-purpose FEM programs. however. The world of aerospace structures split. §H. influenced by Clough. The writer is able to teach the essentials of the method in three lectures to graduate and undergraduate students alike. They were set in their ways. DSM advanced first by word of mouth. H–15 . That tenacity was eventually put to a severe test. Two separate contracts... were awarded accordingly. Martin established similar traditions at Washington University.§H. By then the application to non-structural field problems (thermal. and Zienkiewicz. Among the aerospace companies. The Final Test Legacy CFM codes continued. and again the DSM scaled well into the brave new world. Second. a resurrection of the CFM is unlikely. An example is the resurgence of flexibility methods in massively parallel processing. Acknowledgements The present work has been supported by the National Science Foundation under award ECS-9725504. First. the potential of this idea remains largely unexplored. Finite Elem. A. 45–74. Des. Anal. That research appears to have been abandoned by 1990. Furthermore there is only spotty coverage of the history of FEM itself as well as its computer implementation. which by now are truly “1960 heritage” codes. A more modest revival involves the use of non-CFM flexibility methods for multilevel analysis. rather than a recital of events. pp. rather than displacements and forces. H–16 . barring unexpected breakthroughs. the sweeping victory of DSM over the befuddling complexity of the “matrix forest” period illustrates the virtue of Occam’s proscription against multiplying entities: when in doubt chose simplicity. Pertinent references and a historical sketch may be found in a recent article [47] that presents a hybrid variational formulation for this combined approach.9. Felippa. this is the topic of an article under preparation for Applied Mechanics Reviews. Concluding Remarks The patient reader who has reached this final section may have noticed that this essay is a critical overview of MSA history. Section 2 of [26] elaborates on why. This was discovered by Fraeijs de Veubeke in the 1970s [48]. was the subject of a speculative technical note by the writer [40]. 1995. Although extendible beyond structures. matrix methods now in disfavor may come back in response to new circumstances. This outline can be hopefully instructive in two respects. Feedback suggestions from early draft reviewers will be acknowledged in the final version. now under the wider umbrella of FEM. Another set of applications include inverse problems such as system identification and damage detection. such as optimization. The true duality for structural mechanics is now known to involve displacements and stress functions. Resurrection of the CFM for special uses. It reflects personal interpretations and opinions. each of which is processed by DSM. This was motivated by efforts of numerical analysts to develop sparse null-space methods [41–45]. 21.Revisiting the Past: 1970-date Has MSA. Epilogue . §H. Parametrized unification of matrix structural analysis: classical formulation and d-connected elements.10. This dictum is relevant to the present confused state of computational mechanics. References [1] C. The structure is partitioned into subdomains or substructures. attained a final form? This seems the case for general-purpose FEM programs.Appendix H: AN OUTLINE OF MSA HISTORY §H.. A general awareness of the older literature helps. Thanks are due to the librarians of the Royal Aeronautical Society at London for facilitating access to archival copies of pre-WWII reports and papers. Only what are regarded as major milestones are covered in some detail. A key driving application is massively parallel processing in which subdomains are mapped on distributedmemory processors and the force-based interface subproblem solved iteratively by FETI methods [46]. but the subdomains are connected by Lagrange multipliers that physically represent node forces. There is no attempt at completeness. 1959. P. Computation of influence coefficients for aircraft structures with discontinuities and sweepback. Melosh. Sci. London. Aero. January 1959. Berlin. 1951. pp. Lansing. Sci. Energy Theorems and Structural Analysis. W. 1. pp. London. Butterworths. Part I reprinted from Aircraft Engrg. 1st ed. [18] R. Ceruzzi. J. Turner. Turnbull. Cambridge. 4. 805–824. History of Strength of Materials. The first fifty years of aeroelasticity. Structural and Materials Panel Paper. 577. Fraeijs de Veubeke.. Argyris and S. Analysis of elastic structures by matrix coefficients. Greens & Co. pp. by B. p. [7] M. 1631–1637. 23. AIAA J. Sci. J. J. M. pp. 63. MacMillan. [8] M. 1928. 1966. 1934. Co. Press. J.10 CONCLUDING REMARKS [2] W. [24] L. A. Aeroelasticity. [22] T. Collar. 26. R. and L. 203–266. [5] J. AGARD Meeting. J. Elementary Matrices.. 1953 (Dover edition 1983). 19. Timoshenko. pp. C. and some Applications to Dynamics and Differential Equations. Turner. Irons. Matrices applied to the motions of damped systems. Stiffness and deflection analysis of complex structures. Blackie & Sons Ltd. Aeronautical Research Committee.. Turner. July 1962. ed. reprinted by Dover Pubs. MacDuffee. [17] A. [23] B. W. Irons. Mag. Comments on ‘Matrices for the direct stiffness method’ by R. [19] A.. McGraw-Hill.. Aero.. The direct stiffness method of structural analysis. Royal Aeronautical Society. The Theory of Matrices. J. [6] M. Reports & Memoranda 1155. J. [14] C. Duncan. Martin. AGARD Structures and Materials Panel.. H. Phil. Aachen. [21] P. J. An approximate method for computation of stresses in sweptback wings. Cambridge Univ. A Treatise on the Theory of Determinants. C. 1929. AIAA J. [13] H. 1946. Metzler. [16] S. France. retrospect and prospects. Topp. 1998. Duncan and A. [15] T. Levy. Kelsey. Clough. Mag. pp. E. Series 7. The History of Determinants in the Historical Order of Development. A History of Modern Computing. MA. Phil. J. [3] W. 1956. Series 7. Duncan and A. 61–63. W. Aerospace. 547–560. R. 1–17. 19. A. Collar. Bases for the derivation of matrices for the direct stiffness method. New York. AIAA J. J. The Theory of Determinants. Martin and R. 1947. 7th (paperback) printing 1963. Oxford. London and New York. 403. [12] T. Langefors. Springer. in AGARDograph 72: Matrix Methods of Structural Analysis. February 1978. 18. Vols I-IV. with special regard to semimonocoque structures. Aero. J. M. 865. The MIT Press. Melosh. pp. M.§H. Chelsea Pub. pp. pp. Germany. 1933. [11] B. A method for the solution of oscillations problems by matrices. London. 1906–1923.. Aero... pp. H. Oct-Nov 1954 and 27. Weikel. R. Collar. B. Matrices and Invariants. 1963. J.. H. Duncan and A. 197. R. 2. C.. The Flutter of Airplane Wings. Paris. A method for reducing the analysis of complex redundant structures to a routine procedure. April-May 1955. [20] S. Muir and W. Frazer and W. 1952. 2035– 2037. Wehle and W. J. 677-684. 1964. Pergamon Press. 1938. [4] R. 451–458. 1960. H–17 .. Further development and applications of the stiffness method. Muir. Collar. [10] B. Aero. 1960. C. J. R. [9] R. No. 1933. pp. Frazer. J. Engineering application of numerical integration in stiffness methods. R. 17. J. 19. 1964. Sci. 14. Collar. 12–20. Rand. Longmans. London. Sci. 1952. J. pp. New York. 1935.. Dill. Wiley. 8. [31] E. Ward.. Theory of Matrix Structural Analysis. C. No. pp. Martin and R. Stress function approach. Trondheim. Automation of the finite element method — a historical view. The Netherlands. Kaneko and R. J. 68. Park and M. Clough. reprinted in B. I. October 1975. pp. Robinson.Appendix H: AN OUTLINE OF MSA HISTORY [25] P. Felippa. A Correlation Study of Methods of Matrix Structural Anslysis. Park. The finite element method – a personal view of its original formulation. Will the force method come back?. Bell. New York. 89–100. R. 1997. Levy. [43] J. 1. [41] M. [39] R. SIAM J. pp. C. C.. Aero. England. Matrix Methods in Elastomechanics. Turner. Gilbert and M. University of California at Berkeley. H. 1966. 677–684. W. Denke. C. pp. Plemmons. K. A direct flexibility method. 2nd U.S. Justino F. H. W. Kaneko.. 1960. K. 20. Numer. ASCE. 1. McGraw-Hill. Heath. Berry. Alg. Proc. [33] M. Heath. CA. Sitthoff & Noordhoff. pp. 1994. White. Natl. T. Matrix Anal. 1–22. J. New York. Int. Przemieniecki. by M. L. Plemmons and R. 1994. SIAM J. Meth. Appl. Department of Civil Engineering. H. Algorithms. [26] C. [46] C. 1987. H–18 . Pergamon. 1964. An algorithm to compute a sparse basis of the null space. Plemmons and R. Minimum norm solutions to linear elastic analysis problems. 395–418. Cong. 411–418. Computing a sparse basis for the null space. Gardner Litograph.. 1998. Felippa. 446–459. [37] O. 97-107. 544–563. Finite element analysis of two-dimensional structures. The MacNeal Schwendler Corporation: The First Twenty Years. Geradin. Leckie. Des. 1980. pp. Pestel and F. J. F. 1963. on Finite Element Methods. Sci. S. J. Springer. 20. Meth. 1954. The Finite Element Method in Structural and Soild Mechanics. Numer.. A. 54. T. 2.. M. Substructuring methods for computing the nullspace of equilibrium matrices. Int. Disc. [30] A. McGraw-Hill.. A. 1926. R. Large deflection analysis of complex structures subjected to heating and external loads. Implicit Parallel Processing in Structural Mechanics. Fraeijs de Veubeke Memorial Volume of Selected Papers. J. Lawo. [42] I. in From Finite Elements to the Troll Platform . [48] B. pp. [27] C. J. ed. Cheung. pp. Alg. The null space problem: II. [35] E. 149. Appl. 27. Meth. 663–715. M. Structural analysis and influence coefficients for delta wings. pp. Anal. A matrix method of structural analysis. Oxford. Melosh. Computers & Structures. London. E. Math. pp. C. pp. J. SIAM J. by K. Buena Park. Engrg. Park and C. Fraeijs de Veubeke. 8. Comp. J. 1963. 1990. [29] R.the Ivar Holand 70th Anniversary Volume. C. [34] E. 47. Appl. Ostenfeld. H. [36] R. E. Meths. M. 47. Die Deformationmethode. Meth. McGraw Hill. 1987.. Computational Mechanics Advances. 1993.. Mech. X. 1967. Norway. D. C. The construction of free-free flexibility matrices as generalized stiffness inverses. A. M. Proc. Zienkiewicz and Y. 1985. 1953. [32] J. 319–337. Dissertation. 483–504. Farhat and F. pp. 2000. Finite Elem. Roux. 1–124. R. J. Pothen.. [45] R. Mech. J. Felippa and K. Gallaguer. Felippa. L. Disc. 728–729. 445-457. Sci. Numer. Engrg. Alphen aan den Rijn. Berlin. [40] C. 1984. 1987. pp. Engrg. ed. A variational principle for the formulation of partitioned structural systems. 983–998. Woodlands. H. 13. A.. Wilson. [44] T. [38] J. Tapir. 91–104. [28] S. Appl. Aero. Mech.. Coleman and A. Wilson. World Congr. [47] K. pp. Structural Matrix Analysis for the Engineer. A. 1988. 1968 (Dover edition 1986). Ph. MacNeal. M Converting IOMoDE to FOMoDE M–1 . . *A More Advanced Derivation . .1. Example 3: IOMoDE with Even and Odd Derivatives §M. §M. . . M–2 M–3 M–3 M–3 M–4 M–5 M–6 . . .1. .4. Introduction A Fourier First Example 2: IOMoDE with Even Derivatives §M. §M. . .4. .1. .2. . . §M.3. . . . Example 3: IOMoDE with All Derivatives .Appendix M: CONVERTING IOMODE TO FOMODE TABLE OF CONTENTS Page §M.3. 2) so the FOMoDE (M. (M. infinite-order ODE f (x) = u(x) − 1 1  u (x) + 4 u  (x) + . By inspection (M. 77]. is not so kind: “Fourier proved it [the fundamental theorem for expansion in trigonometric series] through a mass of divergent gobbledegook which every competent mathematician of his own day rejected. Joseph Fourier used the transformation (M. p.2) is  f (x) = C cos nx + D sin nx + n sin nx x  u(t) cos nt dt − n cos nx 0 x u(t) sin nt dt.1) provides a simple example of infinite-to-finite reduction. 2012. M–3 . But in taking the hard way Fourier became apparently the first person to use an ODE of infinite order. Euler had effortlessly found the same result 70 years earlier through term-by-term integration.2).1)→(M. n2 (M. but allows the introduction of a historical curiosity.10]. §M. pp. Introduction This Appendix summarizes transformations that find application in the method of Modified Differential Equations or MoDE.2. The ratio of Google hits for Fourier to those for Truesdell is 65:1 on June 4. §2. Truesdell. .§M. Here as usual (.) is an abbreviation for d(.” [753. technically the most difficult operation is passing from an Infinite Order MoDE (IOMoDE) to a Finite Order MoDE (FOMoDE). 2 n n (M. The reduction is immediate. This easy result is not relevant to modification methods.)/d x while n is a nonzero constant. It is assumed that u(x) ∈ C ∞ for any finite x whereas f (x) ∈ C 2 . Nonetheless there are some forms which recur in application problems and which may be processed in closed form. on the way to finding a formula for the coefficients of what are now called Fourier series [270. If u(x) is given. a gentle spirit.1) satisfies u(x) = f (x) + 1  f (x). Hardy [339.1. Such forms are collected here as a hub for references from other chapters. Case by case is the rule.2) is of zero order. in which n is an integer.3) 0 From this Fourier’s famous formula emerges after a few more gyrations. There is no general method because involves the process involves identification of series. . 1 1 Of course Fourier could retort that his name is well known in sciences and mathematics after two centuries. . even-derivative. A Fourier First The inhomogeneous.3 EXAMPLE 2: IOMODE WITH EVEN DERIVATIVES §M. the general solution of (M. a stickler for mathematical orthodoxy. 187ff]. beningly observes than Fourier’s laborious derivations rely on divergent series in passim but that his final result turned out to be correct. .a[n]. 1/3150.6) u = 20160 + 5040λ + 252λ2 + λ3 12 90 where λ = a 2 χ 2 φ. The reduction to finite order can be obtained by a variant of Warming and Hyett’s [783] derivative elimination procedure. Truncate to the same level in χ. which produces the sequence {1. . Print[g]. 2a 2 2! 4! 6! a > 0.3. Solving (M. u. . (M. .λ]. Increasing n. the coefficients of the power series in λ are found to be generated by the recursion c1 = 1. −1/16632. 2. and set up a linear system in the even derivatives u  . which is a characteristic problem dimension. n ≥ 1. . .{ λ. This can be solved for u  to yield a truncated FOMoDE. Differentiate (M. cn+1 = − 12 n 2 cn /[(n + 1)(2n + 1)].5)    =  . even-derivative. To verify the answer do Print[Series[g. φ = 0. u  . = 0. has dimension of length. . g=GeneratingFunction[ a[n+1]==-n*n/(2*(n+1)*(2*n+1))*a[n]. Example 2: IOMoDE with Even Derivatives As first nontrivial example consider the homogeneous. 1 −2 2 2   0 − 2 φa 1/2! a χ /4! u 0 u  0 1/2! 0 0 − 12 φa −2 The coefficient matrix of this system is Toeplitz and Hessenberg but not Hermitian. −1/560.4) Here φ and χ are dimensionless real parameters whereas a.Appendix M: CONVERTING IOMODE TO FOMODE §M.0.) with respect to x while discarding all odd derivatives. The generating function [?] can be found by Mathematica’s package RSolve by entering <<DiscreteMath‘RSolve‘. .5) and expanding in Taylor series gives 56φ(360 + 60λ + λ2 ) u 1 1 2  = φ 1 − λ + λ + .8 }].4) 2(n − 1) times (n = 1. (M.}. .. . infinite-order ODE: − 1  a 2 χ 2  a 4 χ 4  φ u(x) + (x) + (x) + u u u (x) + . −1/12.a[1]==1.n. . . 0 < χ ≤ 1. 1/90. The configuration of the elimination system is illustrated for n = 4:   1/2! a 2 χ 2 /4! a 4 χ 4 /6! a 6 χ 6 /8!  u    12 a −2 φ u   − 12 φa −2 1/2! a 2 χ 2 /4! a 4 χ 4 /6!  0  u       (M. The result is √ . . 7) arcsinh λ 2 12 90 560 3150 16632 84084 411840 This yields the second-order FOMoDE √ .2 λ λ2 λ3 λ4 λ5 λ6 λ7 λ 4 =1− + − + − + − + . . (M. . For nodal exactness. a χ 2 a χ 2 (M. solving for it gives  √ √ 2 2 cosh(χ w) − 1 χ w 4 = . (M.9) φ = 2 sinh χ 2 χ2 In this analysis no term of model equation is assumed to be small. The procedure for handling a forcing term f (x) follows the same technique.4) comes is u  = √ 2 (w/a 2 )u. where w > 0 is constant. w = (4/χ 2 ) arcsinh( 12 χ φ .2 √ 2 4 4 λ χ φ  u = 2 2 arcsinh u = 2 2 arcsinh u. M–4 .8) To give an example of matching suppose that the original ODE from which (M. If φ is the free parameter. but it is restricted to Toeplitz matrices. Note that this method bypasses determinant expansions and series identification.8) has a heuristic flavor: it relies on recognizing a series.1. Proceeding as above one forms the elimination system. with Cn = An−1 /An . If the series (M.3. A2 =  1 −2 1/2!  − 2 φa  1/2!  0 − 12 φa −2 (M. §M.10) has radius of convergence R. . This is obtained by solving g(R) = 0 or cosh(aχ R) = 1 + 12 φχ 2 . A3 =  − 12 φa −2 A1 = | 1/2! | . which for φ > 0 is equivalent to R = 4a −2 χ −2 arcsinh( 12 φχ) . .14) Here φ and χ are dimensionless real parameters whereas a. a2  a0  a1 (M. (M. 2 √ This leads to the same solution: u  = Ru = 4a −2 χ −2 arcsinh( 12 φχ) found before. The method relies on the following determinant theorem [501. 2a 2! 3! 4! a > 0. *A More Advanced Derivation The foregoing construction of (M. A 3 0  a0 a1   0    a1 a3    a a2  .13) The n th approximation to the FOMoDE (n > 1) is u  = Cn u. . But the radius of convergnce of 1/g(x) is the distance from x = 0 to the closest pole.4.. Now the determinants that appear in the foregoing FOMoDE derivation have the form      1/2! a 2 χ 2 /4! a 4 χ 4 /6!  2 2   1/2!  a χ /4!  1/2! a 2 χ 2 /4!  .12) Identifying to (M. whence √ 2 √ aχ R = arccosh(1 + 12 φχ 2 ). A more direct derivation. then Cn → 1/R as n → ∞. φ = 0.4 EXAMPLE 3: IOMODE WITH EVEN AND ODD DERIVATIVES §M. M–5 . 704]. the closest zero of g(x). is presented here. . 0 < χ ≤ 1.11) with A0 = 1/a0 .11) one obtains by inspection   −1 −2  a1 A 1 = a0 | a1 | . which is a characteristic problem dimension.§M. or what√is the the same.10) then the Toeplitz determinants formed with the ai coefficients satisfy  a4  a2  a3  a1 . a0 = 0. Given the formal series expansion 1 1 = = A0 − A1 x + A2 x 2 − A3 x 3 + . A 2 = a0  a0    a1  a2  −3  = a .. . 2 3 g(x) a0 + a1 x + a2 x + a3 x + . = 0..10) and (M. . . which however requires more advanced mathematical tools. has dimension of length. (M. Example 3: IOMoDE with Even and Odd Derivatives As second example consider the homogeneous infinite-order ODE: − φ a a 2 χ 2  a 3 χ 3  u(x)+u  (x)+ u  (x)+ u (x)+ u (x)+. p. A4 = a0−4  0  0 a1  0 √ a 2 χ 2 g(x) = cosh(aχ x) − (1 + 12 φχ 2 ) a2 a1 a0 0 a3 a2 a1 a0 (M. . The procedure for handling a forcing term f (x) follows the same technique. where j is an arbitrary integer. y R = π j/(aχ). 2! 3! M–6 (M. so the quickest procedure is the determinant theorem.1.18) . aχgi = exp(axχ) sin(ayχ).16) for {φ = e − 1.16) The radius of convergence of the 1/g(z) series is obtained by solving g(R) = 0 for a complex g(z). (M. . a = χ = 1 so x R = 1. §M. (M. drawn for φ = e − 1.1. The real and imaginary parts of g(z) are aχgr = exp(axχ) cos(ayχ) − (1 + φχ). Plot of the modulus gr2 + gi2 of generating function (M. illustrated for n = 4:  1 1  − 2 φ/a   0 0 aχ/2! 1 1 − 2 φ/a 0  a 2 χ 2 /3! a 3 χ 3 /4!  u    12 φ u/a  aχ/2! a 2 χ 2 /3!  u    0   . . =  1 aχ/2!  u  0 u  0 1 − 12 φ/a (M.1. By inspection aχ g(x) = exp(aχ x) − (1 + φχ).17) u = aχ In this analysis no term of model equation is assumed to be small. Solving gr = gi = 0 gives the solutions x R = log(1 + φχ)/(aχ ). showing zeros on line x = x R = 1 and convergence radius.Appendix M: CONVERTING IOMODE TO FOMODE 10 5 R 4 2 0 0−1 -10 -5 −5 0 0 5 −10 −1 10 1 0 1  Figure M. and the FOMoDE is log(1 + φχ) u. z = x + yi. = λ u(t).4. a = χ = 1}. The zero closest to the origin corresponds to y R = 0 whence the radius of convergence is R = x R = log(1 + φχ)/(aχ).15) This is a Toeplitz matrix. This is pictured in Figure M. Thus all zeros lies on the x = x R line. Example 3: IOMoDE with All Derivatives u  (t) + h  h2 u (t) + u  (t) + . M–7 . which confirms the consistency of Forward Euler. which can be confirmed by increasing n. taking care to obtain a square coefficient matrix. u (M. For example.  u 0 −λ 1 h/2! 0 u  0 0 −λ 1 0 Solving produces h 2 λ3 h 3 λ4 29h 4 λ5 4λ(6 + 6hλ + h 2 λ2 ) hλ2 u = + − + − . differentiate repeatedly with respect to t truncating after the same order in h. differentaiting 3 times gives       u λu 1 h/2! h 2 /3! h 3 /4! 1 h/2! h 2 /3!   u    0   −λ (M.4 EXAMPLE 3: IOMODE WITH EVEN AND ODD DERIVATIVES To derive the FOMoDE. .20) = λ− 24 + 36hλ + 14h 2 λ2 + h 3 λ3 2 3 4 144  The series on the right looks like that of log(1 + hλ). Therefore the FOMoDE has the explicit form u = log(1 + hλ) u h (M.21) The explicit solution of this equation under the initial condition u(0) = u 0 is of course u(t/ h) = u 0 (1 + hλ)(t/ h) .19)     =  . As h → 0 this approaches u 0 eλt .§M. . O The Origins of the Finite Element Method O–1 . 3. . . . . . . . Who Invented Finite Elements? §O.1. . . . . . . . .6.1. O–3 O–3 O–3 O–4 O–4 O–5 O–5 . . . . . Precursors .4. . . . . . §O. . .1. . . . §O. . . .1. . . . §O.2. . . . . . . G3: Consolidation . . . . . . . O–2 . . . §O.Appendix O: THE ORIGINS OF THE FINITE ELEMENT METHOD TABLE OF CONTENTS Page §O. .1. Introduction §O. . . . . . . G1: The Pioneers . . . . . G4: Back to Basics . .1.5. . . .1. . . . .1. . . . . . G2: The Golden Age . . . . . . . . . . . Martin. was convinced in 1964 by Clough to try FEM. To Argyris goes the credit of being the first in constructing a displacement-assumed continuum element [22. He went on to write the first textbook on the subject [821] and to organize another important Civil Engineering research group in the University of Wales at Swansea.§O. p. inventor of isoparametric models. R. During 1952–53 he oversaw the development of the first continuum based finite elements. and E. In addition to Turner. Clough and Martin. structural “finitelementology” may be divided into four generations that span 10 to 15 years each. as this historical sketch will make clear.2. L.1. and weaved the material into his influencial 1954 serial [22]. one of which is digital computation.1. But if the question is tweaked to: who created the FEM in everyday use? there is no question in the writer’s mind: M.1. and forcefully got Boeing to commit resources to it while other aerospace companies were mired in the Force Method. W. Berkeley and U. Who were the popularizers? Four academicians: J. Wilson. henceforth abbreviated to TCMT.C. who recognized the Rayleigh-Ritz link and systematized the variational derivation of stiffness elements. C. Washington. Irons. Olek Zienkiewicz. H. All of these pioneers were in the aerospace industry at least during part of their careers. and O.1 INTRODUCTION §O. Clough. who developed the first open source (and widely imitated and distributed) FEM software. as used in the overwhelming majority of commercial O–3 . Clough. then junior professors at U. C. The result of this seminal collaboration was a celebrated paper [758]. Zienkiewicz are largely responsible for the “technology transfer” from the aerospace industry to a wider range of engineering applications during the 1950s and 1960s. This was the subject of a separate essay [238]. (Jon) Turner at Boeing over the period 1950–1962. 62]. J. shape functions. Melosh. widely considered the start of the present FEM. And only large industrial companies (as well as some government agencies) were able to afford mainframe computers during the 1950s. G1: The Pioneers The 1956 paper by Turner. For exposition convenience. It functions as a hub for chapter-dispersed historical references. Clough baptized the method in 1960 [136] and went on to form at Berkeley the first research group to propel the idea into Civil Engineering applications. the patch test and frontal solvers. received reports from Turner’s group. Martin and Topp [758]. The first three learned the method from Turner directly or indirectly. spent “faculty internship” summers at Turner’s group during 1952 and 1953. is recognized as the start of the current FEM. §O. respectively. Introduction This Appendix summarizes the history of structural finite elements since 1950 to date. §O. Argyris. FEM is the confluence of three ingredients. a Force Method expert then at Imperial College. J. which is also given in Appendix H.1. originally an expert in finite difference methods who learned the trade from Southwell. That is not coincidence. Who Invented Finite Elements? Not just one individual. but noticeable change of emphasis. H. He generalized and perfected the Direct Stiffness Method. M. Argyris. There are no sharp intergenerational breaks. R. The following summary does not cover the conjoint evolution of Matrix Structural Analysis into the Direct Stiffness Method from 1934 through 1970. As a consultant to Boeing in the early 1950s. major contributors to current practice include: B. G3: Consolidation The post-Vietnam economic doldrums are mirrored during this post-1972 period. G1 workers thought of finite elements as idealizations of structural components. Assumed strain formulations O–4 . From 1962 onward a two-step interpretation emerges: discrete elements approximate continuum models.596]. Although the Classical Force Method dominated stress analysis during the 1950s [238]. A panoramic picture of this period is available in two textbooks [572. fitted natural coordinates. The pioneers were structural engineers. The first book devoted to FEM appears in 1967 [821].723] and equilibrium models [275] emerged. §O. and were treated in some depth by Martin and Carey [470].1. This “element as force transducer” was the standard view in pre-computer structural analysis.4. stiffeners and panels. spars.484]. The survey by Gallagher [288] was influential at the time but is now difficult to access outside libraries. Other variational formulations. Reading Fraeijs de Veubeke’s famous article [275] side by side with TCMT [758] one can sense the ongoing change in perspective opened up by the variational framework. Along with Argyris’ serial [22] they prototype the first generation. stiffness methods were kept alive by use in dynamics and vibration. Przemieniecki’s text is still reprinted by Dover. the aircraft industry.145] and had been baptized [136. §O. patch test) by Irons and coworkers [394. It is not coincidence that Turner was a world-class expert in aeroelasticity. mixed [353.138]. Thus there was a frenzy to develop higher order elements. G2: The Golden Age The next period spans the golden age of FEM: 1962–1972. This is the “variational generation. They followed a century of tradition in regarding structural elements as a device to transmit forces. Applications to nonstructural problems had started in 1965 [820]. the first book to focus on the mathematical foundations. This was given a big boost by the invention of the isoparametric formulation and related tools (numerical integration.Appendix O: THE ORIGINS OF THE FINITE ELEMENT METHOD codes. notably hybrids [573. and early ideas of interelement compatibility as basis for error bounding and convergence [274. This is consolidation time.578]. This influential paper marks the confluence of three lines of research: Argyris’ dual formulation of energy methods [22]. shape functions. ribs. (As noted above. Element developers worked in.) Accordingly they focused on thin structures built up with bars. From 1962 onwards the displacement formulation dominates. the Direct Stiffness Method (DSM) of Turner [759. which spans 1950 through 1962. or interacted closely with. but later justified.” Melosh showed [485] that conforming displacement models are a form of Rayleigh-Ritz based on the minimum potential energy principle. Hybrid and mixed formulations record steady progress [39]. It explains the use of flux assumptions to derive stiffness equations in TCMT.3. schooled in classical mechanics. Substantial effort is put into improving the stock of G2 displacement elements by tools initially labeled “variational crimes” [697]. Textbooks by Hughes [385] and Bathe [54] reflect the technology of this period. G2 can be viewed as closed by the monograph of Strang and Fix [698]. Gone is the youthful exuberance of the golden age. which in turn approximate real structures.397].761]. By the early 1960s FEM begins to expand into Civil Engineering through Clough’s Boeing-Berkeley connection [144.1. Low order displacement models often exhibit disappointing performance. only large aerospace companies were then able to afford mainframe computers. Although technically diverse the G4 approaches share two common objectives: (i) Elements must fit into DSM-based programs since that includes the vast majority of production codes. And variational approximation schemes akin to those of modern FEM were proposed before digital computers. one may argue that the volume (area. lengths and volumes of geometrical objects by dividing them into simpler ones and adding their contributions.1 and canned recipes for running commercial software on the physical side. O–5 . They provide a reality check on what works in the real world and what doesn’t.599]. but on the community split noted in the book Preface.” said Pascal.1. By now FEM looks like an aggregate of largely disconnected methods and recipes.691].461]. variational approximation theory. §O. Indeed. A trend back toward simplicity starts [457.492].1 INTRODUCTION appear [455]. But for Archimedes to reach modern FEM “long is the way. notably the Free Formulation [82. stress hybrid models in natural coordinates [576. The reader should not think. MSA came on the scene in the mid 1930s when desk calculators became popular. Precursors As used today. Assumed Natural Strain methods [57. (ii) Elements are kept simple but should provide answers of engineering accuracy with relatively coarse meshes. By the mid-1980s there was gathering evidence that complex and high order elements were commercial flops. length) measure of an object is a scalar functional of its geometry. These were collectively labeled “high performance elements” in 1989 [219]. G4: Back to Basics The fourth generation begins by the early 1980s. and hard. FEM represents the confluence of three ingredients: Matrix Structural Analysis (MSA). Two more recent trends can be noted: increased abstraction on the mathematical side. and the digital computer. you run out of oxygen. A booming activity in error estimation and mesh adaptivity is fostered by better understanding of the mathematical foundations [714]. Where does “variational approximation” come in? Well. Commercial FEM codes gradually gain importance. as well as variants and derivatives of those approaches: ANDES [225. passing to the limit as necessary.” since physical energy calculations require derivatives and Calculus would not be invented for 20 centuries. Indeed he calculated areas. Complexity is particularly dangerous in nonlinear and dynamic analyses conducted by novice users.§O. “If you go too far up.1. §O. however. The blame should not be placed on the method itself. Three examples: • 1 The historical sketch of [470] says that “Archimedes used finite elements in determining the volume of solids.6. as narrated in Appendix H. EAS [671. commercial or otherwise.86].672] and others. abstraction-wise.” The alleged linkage is tenuous. More approaches come on the scene.5. that they simultaneouly appeared on the table through some alchemy. “Things are always at their best in the beginning. Transmute “measure” into “energy” and “simpler objects” into “elements” and you capture one of the FEM tenets: the energy of the system is the sum of element energies. orthogonal hourglass control [264]. These came together in the early 1950.” (Joel Spolsky). Exotic gadgetry interweaved amidst millions of lines of code easily breaks down in new releases. 7. defined by end values [434. both have “delta wings” in the title. which affluent aerospace companies were able to afford amidst Cold War paranoia. 2 That would have preceded the invention of direct variational methods (Rayleigh-Ritz) for over one century. Euler divided the interval of definition of a one-dimensional functional into finite intervals and assumed a linear variation over each. Without computers FEM would be a curiosity.” Precursors prior to 1950 had no influence on the rapid developments of Generation 1 outlined in §O. (Only the former is available as a journal article.3 • The seminal paper by Turner et al [758] cites two immediate DSM precursors. Passing to the limit he obtained what is now called the Euler-Lagrange differential equation of variational calculus. O–6 . are done by hand via relaxation methods. Can you imagine defense funds pouring into hypercircles or Courant’s triangles? Once all pieces were in place. to obtain an approximate value of the functional. synergy transformed the method into a product. while representing also the first FEM-style calculation. Two crucial pieces were missing. He used piecewise linear interpolation over each triangle as Rayleigh-Ritz trial functions. 3 Curiously this book does not mention. by Levy [443] and Schuerch [657]. The stiffness matrix for the entire structure is computed by simple summation of of the stiffness matrices of the elements of the structure. p. . however. and most important. both dated 1953. and FEM took off.” • A direct variational approach similar to Courant’s was continued by Synge and Prager in the context of functional analysis [592] and exposed in Synge’s book [712] as the “hypercircle” method. First. He did not use those functions. even in passing. The Appendix of this article contains the first FEM-style calculations on a triangular net for determining the torsional stiffness of a hollow shaft. A near miss indeed. Matrix procedures had to be moved from desk calculators and punched-tape accounting machines to digital computers. The few numerical examples. all in 2D. was the programmable digital computer.) From [758]. out of the hat. Also missing was a driving application that could get the long-term attention of scientists and engineers as well as industrial resources to fund R&D work. the use of digital computers that had already been commercially available for several years. an ODE with second derivatives. p. 806: “In a recent paper Levy has presented a method of analysis for highly redundant structures that is particularly suited to the use of high-speed digital computing machines. 53]. Thus Euler deserves credit for being the first to use a piecewise linear function with discontinuous derivatives at nodes to produce. Aerospace structural mechanics provided the driver because the necessary implementation apparatus of MSA was available since the late 1930s [282]. worth perhaps a footnote in an arcane book. .2.Appendix O: THE ORIGINS OF THE FINITE ELEMENT METHOD • In his studies leading to the creation of variational calculus. and called his idea “generalized finite differences.2 • In the early 1940s Courant wrote an expository article [153] advocating the variational treatment of partial differential equations. . P Partitioned Matrices and the Schur Complement P–1 . 8. .1. §P. §P. .9.7. . . . §P. §P.4. . . §P. P–2 P–3 P–3 P–3 P–3 P–4 P–4 P–5 P–5 P–6 P–6 P–6 . . . §P.5. . . .10. . Partitioned Matrix Schur Complements Block Diagonalization Determinant Formulas Partitioned Inversion Solution of Partitioned Linear System Rank Additivity Inertia Additivity The Quotient Property Generalized Schur Complements Notes and Bibliography . .2. . . §P. .6. . . §P. §P. .Appendix P: PARTITIONED MATRICES AND THE SCHUR COMPLEMENT TABLE OF CONTENTS Page §P. .3. §P. 1. 0 I C D −D−1 C I 0 D       M/D 0 I 0 A B I B D−1 . C D 0 I 0 M/A −C A−1 I (P. the Schur complement of M with respect to D is defined as M/D = A − B D−1 C.2) If D is nonsingular. Entries are generally assumed to be complex. §P. See Notes and Bibliography for other notations in common use. respectively. P–3 (P. §P.3.5) . These equivalent statements are sometimes preferable. = 0 M/A 0 I C D C A−1 I whereas if D is nonsingular       A B I 0 M/D 0 I −B D−1 = .3) are also called the Schur complement of A in M and the Schur complement of D in M. A and D are square matrices. §P.1) (n+m)×(n+m) C D m×n m×m The dimensions of A.       A B I −A−1 B A 0 I 0 = . = 0 I 0 D D−1 C I C D All of these can be directly verified by matrix multiplication.2. is partitioned into four submatrix blocks as   B A = n×n n×m M (P.2) and (P. Schur Complements If A is nonsingular. Partitioned Matrix Suppose that the square matrix M dimensioned (n+m) × (n+m). Block Diagonalization The following block diagonalization forms.§P. the Schur complement of M with respect to A is defined as M/A = D − C A−1 B. see §P. clearly display the Schur complement role. If A is nonsingular.4)       A 0 I A−1 B A B I 0 . This Appendix collects some basic material on the subject. def (P.4 DETERMINANT FORMULAS Partitioned matrices often appear in the exposition of Finite Element Methods.3) Matrices (P. def (P. B. but B and C are not square unless n = m. If both diagonal blocks are singular. This is the name given in the linear algebra literature to matrix objects obtained through the condensation (partial elimination) process discussed in Chapter 10. C and D are as shown in the block display. Emphasis is placed on results involving the Schur complement. due to Aitken.10. equating the top left hand block of (P. P–4 . (A − B D−1 C)−1 = A−1 + A−1 B (D − C A−1 B)−1 C A−1 .5.4. T−1 . C and D are all square. one obtains the Sherman-Morrison inverse-update formula also presented in that Appendix. leads to the Woodbury formula presented in Appendix D.Appendix P: PARTITIONED MATRICES AND THE SCHUR COMPLEMENT §P.1) is nonsingular.4) yields        I A   I A−1 B   A  0 0 0   =  = det(A).7) It follows that the determinant is multiplicative in the Schur complement.12) M = (M/C)−1 (M/A)−1 Replacing −D by the inverse of a matrix. Then the inverse of M in partitioned form may be expressed in several ways that involve (P. say. Extensions to the case in which A or D are singular. (P. from the second of (P.6) since the determinant of unit triangular matrices is one.4) one gets det(M) = det(D).11) When n = m so that A. Determinant Formulas Taking determinants on both sides of the second of (P. Partitioned Inversion Suppose that the upper diagonal block A in (P.8)   −1   −1 0 A B A + (M/A)−1 [ −C A−1 I ] = 0 0 I   −1 A + A−1 B (M/A)−1 C A−1 −A−1 B (M/A)−1 = −(M/A)−1 C A−1 (M/A)−1 Suppose next that the lower diagonal block D in (P.10) or explicitly in terms of the original blocks. and all of them are nonsingular.9) = M = −D−1 C (M/D)−1 D−1 + D−1 C (M/D)−1 B D−1 C D If both A and D are nonsingular.1) is nonsingular. If B and C are column and row vectors. det(M/D). respectively.2):   −1    −1  A B I −A−1 B A 0 I 0 −1 = M = C D 0 I 0 (M/A)−1 −C A−1 I     0 I −A−1 B (M/A)−1 A−1 = 0 (M/A)−1 −C A−1 I (P. (P.8) gives Duncan’s inversion formula (M/D)−1 = A−1 + A−1 B (M/A)−1 C A−1 .9) to that of the last form of (P. and its historical connection to Schur’s paper [658] are discussed in [817]. §P. B. one obtains the elegant formula due to Aitken:   (M/D)−1 (M/B)−1 −1 (P. Then the form corresponding to the last one above reads   −1  −(M/D)−1 B A−1 A B (M/D)−1 −1 (P. vectors and D a scalar. det(M) =  −1 CA I   0 M/A   0 I   0 M/A  (P. det(M/A). (P. Similarly. B → Kbi . and so it the inertia of a Hermitian matrix.14) is precisely the process of elimination of internal degrees of freedom of a superelement.§P.7. (P.8 INERTIA ADDITIVITY §P. in which the given coefficient matrix M is partitioned as in (P. (P. (P. in connection with superelement analysis. In this case M becomes the superelement stiffness matrix K.1).14) Similarly if A is nonsingular. and y → ui . explicitly in term of the original blocks  rank A C B D  = rank(A) + rank(D − B A−1 C) = rank(D) + rank(A − C D−1 B). Suppose that we have the linear system M z = r. which is symmetric. while the RHS of (P. as considered next. while z = [ x y ]T is unknown.16) or.15) Readers familiar with the process of static condensation in FEM will notice that (P. p → fb . eliminating y and solving for x yields x = (A − B D−1 C)−1 (p − B D−1 q) = (M/D)−1 (p − B D−1 q).14) is the condensed condensed stiffness matrix K ii −1 ˜ force vector fb = fb − Kbi Kii fi .5) we immediately obtain the rank additivity formulas rank(M) = rank(A) + rank(M/A) = rank(D) + rank(M/D). Consequently the rank is additive in the Schur complement. Rank Additivity From (P. q → fi . (P. (P. notation of that Chapter. P–5 . Solution of Partitioned Linear System An important use of Schur complements is the partitioned solution of linear systems.17) assuming that the indicated inverses exist.6. C x + D y = q. as discussed in Chapter 10. the appropriate block mapping is A → Kbb . The Schur complement M/D → K/Kii is the ˜ bb = Kbb − Kbi K−1 Kib .4) or (P. x → ub . In the T . eliminating x and solving for y yields y = (D − C A−1 B)−1 (q − C A−1 p) = (M/A)−1 (q − C A−1 p).13) If D is nonsingular. §P. The RHS r = [ p q ]T is given. In fact this is the most important application in FEM. C → Kib = Kbi D → Kii . The system is equivalent to the matrix equation pair A x + B y = p. Appendix P: PARTITIONED MATRICES AND THE SCHUR COMPLEMENT §P. .. Inertia Additivity Consider the (generally complex) partitioned Hermitian matrix   A11 A12 . and zero eigenvalues of A. respectively.23) §P.19) in which n + = n + (A). Matrix M need not be square.. (P. If M is square and nonsingular. . n − . and its nullity n 0 (A). Generalized Schur Complements If both diagonal blocks A and D of M in (P.. (Recall that all eigenvalues of a Hermitian matrix are real.21) D in which both A and A11 are nonsingular. n 0 }. §P. It follows that if A11 is positive definite..  B1   B2  . negative. (P. the notion of Schur complement may be generalized by replacing the conventional inverse with the Moore-Penrose generalized inverse. On the RHS of (P.. its rank is n + (A) + n − (A). The Quotient Property Consider the partitioned matrix   A M= C    B A =  21 D  .22) M/A = (M/A11 )/(A/A11 ).. (P.20) In(A) = In(A11 ) + In(A/A11 ).) Since A is Hermitian. The quotient property of nested Schur complements is (P.18) Here A11 is assumed nonsingular. (Note that n 0 is the dimension of the kernel of A and also its corank. P–6 . .. and A/A11 is positive (nonnegative) definite. is (P.8. and n 0 = n 0 (A) give the number of positive. A= A∗12 A22 (P.10. . . and A∗12 denotes the conjugate transpose of A12 ... ..) The inertia additivity formula in terms of the Schur complement of A11 in A. then A is positive (nonnegative) definite..  . Also A and A/A11 have the same nullity.9. The inertia of A is a list of three nonnegative integers In(A) = {n + . A12 C1 C2 A11 A22 . n − = n − (A).22) we see that the “denominator” matrix A11 “cancels out” as if the expressions were scalar fractions. Further developments of this fairly advanced topic may be found in Chapters 1 and 6 of [817]. .1) are singular. then taking determinants and aplying the determinant formula we obtain det(M/A) = det(M/A11 )/ det(A/A11 ). • The inertia additivity formula (P. Duncan and Collar [282]. in addition B and C were required to commute.6) and (P.16) first published in 1946 [322]. • The Duncan inversion formula (P. and M A . It appeared one year later (independently derived) in the classical monograph by Frazer.347.534] • From the Duncan inversion formula follows directly the Guttman rank additivity formula (P. • The Aitken block diagonalization formulas (P.10) appeared in 1944 [192]. in which n = m so all block matrices in (P. rank and inertia determinations that involve block partitioned matrices.346]. See §0.§P.20) as well as the quotient property (P.3) was introduced by Haynsworth in 1968 [345. P–7 . The name was motivated by the seminal “determinant lemma” by Schur published in 1917 in his studies of stability polynomials [658]. he actually proved only a special case. cited in Appendix H as one of the early sources for Matrix Structural Analysis.4) and (P.346]. e. as well as the already cited inertia additivity formula for Hermitian matrices (P. Earlier implicit manifestations of this idea starting with Laplace in 1812 are described in the Historical Introduction chapter of [817]. see also [156.g.8) was first published in 1937 by Banachievicz [44]. The effect of these assumptions is that the formula can be extended to singular diagonal blocks.2) and (P. The latter has visualization problems if matrix blocks are subscripted.22) are due to Haynsworth and coworkers [345. (M|A).20).3 of [817] for details. M|A. This edited book gives a comprehensive and up-to-date coverage of the Schur’s complement and its use as a basic tool in linear algebra. compare (M/A22 )−1 versus the more compact M−1 A22 . The name “Schur complement” for the matrices defined in (P. It is a follow up to the inversion methods of [282]. Although (P. which appeared much later [345. Others are (M/A). Notes and Bibliography Notes and Bibliography Most of the following historical remarks are extracted from the Historical Introduction chapter of [817]. A drawback of the slash (and vertical bar) notation is that enclosing parentheses are necessary if one takes a transpose or inverse.7) are now commonly referred to as Schur determinant formulas in the literature. The notation M/A for D − C A−1 B is now commonly used in linear algebra.533. The Schur complement appears naturally in the inversion. for example M A22 is clumsier to read than M/A22 or M|A22 . Among the most seminal formulas are: • The last of the partitioned inversion formulas (P.1) are square..5) appear in another classic book from the same period [7].346]. linear-equation solving. Q Miscellaneous FEM Formulation Topics Q–1 . . . . .1.2. . . . . . . *Plane Stress Quadrilaterals . . . . . . . . . .1. . . . . . . .2. . . .2. . .3. . . §Q. . . §Q. The Stiffness Matrix . . .2. .3.2.1. . . . §Q. . . .2. . .3. . .1. . . . . . . Geometric Properties of Plane Curves . . . .5. . .2. . Q–2 . . . . . . . . *Natural Strains and Stresses §Q. . . §Q. .2. §Q. *The Six Node Triangle. . .2. . .3. . . . §Q. . .3. . . . . . . . . *Element Description . *Equation Nesting and Node Dropping . . . . . §Q.3. . . .1.Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS TABLE OF CONTENTS Page §Q. §Q. . §Q. . . . *Internal Node Injection . *Hierarchical Shape Functions §Q. *Three Dimensional Bricks . . . . Revisited . . . . . . *Hierarchical Interpolation . . .4. . . .3. . . . . *Why Is the Stiffness Matrix Rank Deficient? Exercises . . . . . . *Straight Line Elements . . . . *A 3-Node Curved Bar Element §Q.1. . . . . . . *Hierarchical Stiffness Matrix and Load Vector §Q.4. . .3. . .1. . . . Q–3 Q–3 Q–4 Q–4 Q–5 Q–5 Q–6 Q–8 Q–9 Q–10 Q–12 Q–13 Q–16 Q–19 Q–20 Q–23 . . . . . §Q. . §Q. . . η} in quadrilaterals. The natural strain eξ ξ is defined by eξ ξ = d x du = J uξ dξ dξ (Q. ζ3 } in triangles and {ξ. Second. This material is not intended to be covered in an introductory course. related to “lack of uniqueness” in the definition of natural strains. expressed in terms of Cartesian coordinate components. This is no accident. Furthermore. for example d x/dξ = xξ and u ξ = du/dξ . the definitions vary accordining to element geometry: line. For example {ζ1 . tetrahedron. and so on. The three topics are: natural strains and stresses. however.1. triangle. hierarchical shape functions. and curved bar elements. natural strains and stresses are introduced as objects deserving study on their own. There is an exposition problem. quadrilateral. Obviously this does not lead to a simple physical interpretation. This is to be expected since the natural coordinates vary with the geometry. eξ ξ has dimension of length squared. §Q. shape functions have been developed in natural coordinates. The following subsections present natural strains and stresses only for two configurations in which there is reasonable agreement in the literature.1 *NATURAL STRAINS AND STRESSES This Chapter concludes Part II with miscellaneous topics in finite element formulation. The advantages of doing so become apparent when one goes beyond the pure displacement formulations and assumes also strains and/or stress patterns.§Q. definitions are often author dependent because the topic is unsettled. It connects seemlessly with the elasticity formulations engineers are familiar with. area. the constitutive properties are often expressed with reference to Cartesian coordinates.3) . where J = d x/dξ = xξ is the 1D Jacobian. The Cartesian strain is e = du/d x = (du/dξ )(dξ/d x) = J −1 u ξ .1) where ξ is a dimensionless natural coordinate that varies from −1 to +1.2) Because ξ is dimensionless.1. For brevity these are called natural strains and natural stresses. brick. Strains and stresses are. ζ2 . What is the relation between e and eξ ξ ? This is easily obtained by performing some Jacobian manipulations: e= d x du dξ du du = J −1 J = J −1 = J −1 eξ ξ J −1 = J −2 eξ ξ dx dx dξ dξ d x Q–3 (Q. §Q. Since this book does not go that far.1. that is. u = u(ξ ) (Q. and express also strains and stresses in terms of natural coordinate components. *Straight Line Elements Suppose that a straight one-dimensional bar element is defined in terms of the local axis x and axial displacement u in the isoparametric form x = x(ξ ). Derivatives with respect to ξ will be denoted by a subscript. as is the case with Cartesian strains. First. however. natural strains natural stresses respectively. In advanced FEM formulations it is often convenient to proceed further. It provide sources for term projects and take-home exams as well as serving as a bridge to more advanced courses. *Natural Strains and Stresses In the element formulations of Chapters 12–19. In this section we restrict the exposition to plane quadrilaterals in plane stress referred to a Cartesian system {x. ∂ξ ∂η eηξ =  ∂ x ∂ u · .1. unlike Cartesian strains. Evidently E ξ ξ = σξ ξ /eξ ξ = (J 2 σ )/(J −2 e) = J 4 E.4 works out how to express the transformations as a matrix-vector product. *Plane Stress Quadrilaterals The foregoing derivation for line elements looks like empty formalism. The natural stress σξ ξ may be defined in several ways. (Q.3. This “natural modulus” has dimensions of force times area. Note that σξ ξ has dimensions of force and not of force per unit area. J −2 restores the expected non-dimensionality of e. The power of the ANS method comes in two and three dimensions.1. The implications are explored in Exercise Q. To effect a transformation to Cartesian strains. We list here only the pertinent definitions and results. J and G denote the indicated matrices (J is the Jacobian matrix introduced in Chapter 17). η. It is easily verified that     ∂u x ∂u y e e x x yx −1 −T ∂ x ∂ x = . ∂x ∂y eηξ eηη ∂η ∂η ∂ξ ∂η where eξ η . y}. The natural stresses are defined as the energy conjugates of the natural strains. for example the value at the element midpoint ξ = 0. ∂η ∂η eξ η =  ∂ x ∂ u · . If σ = E e. §Q. consequently γξ η = 2eξ η and γξ η = 2eηξ .4) where · denotes the vector dot product.2). ∂η ∂ξ γξ η = eξ η + eηξ .Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS Since J has dimension of length. Then Collect coordinates {x. (Q. one assumes directly a form for eξ ξ as a simplification of the expression (Q. the last step is to define a natural constitutive relation σξ ξ = E ξ ξ eξ ξ . §Q. *Three Dimensional Bricks The extension to three dimensions for brick elements is straightforward.2. it is convenient to go back to a tensor-like arrangement   ∂u  ∂u x    ∂x ∂y x e eξ η ∂η    ∂ξ eξ η = ξ ξ =  ∂ξ ∂ξ (Q. the shear strains eξ η and eηξ are generally different. ∂ξ ∂ξ eηη =  ∂ x ∂ u · . And indeed it does not help much. The natural constitutive equation follows. One common simplification is to take an average Jacobian J0 instead of the variable Jacobian J = xξ . y} in a 2-vector x and the inplane displacement field into a 2-vector u the natural strains are defined as eξ ξ =  ∂ x ∂ u · .5) ∂u y ∂u y = J G. Hence σξ ξ = (e/eξ ξ )σ = J −2 σ and σξ ξ = J 2 σ . Exercise Q.6) J eξ η J =  ∂u x ∂u y ex y e yy ∂y ∂y from which the Cartesian components may be extracted and rearranged as a 3-vector. ζ } and the Cartesian coordinates Q–4 . In the Assumed Natural Strain (ANS) formulation of finite element. The most straightforward definition uses the invariance of strain energy density: σ e = σξ ξ eξ ξ .  . The natural coordinates are {ξ.1. Note that. (2) Implementation of p-convergence. (Q. which is pictured in Figure Q. learning the topic helps. (3) Advanced Element Formulations Some advanced formulations rely on hierachical “splitting” of the element response. Revisited Consider (again) the six-node quadratic triangle. the natural strains are defined as   ∂u  ∂u x ∂u x  ∂ x ∂ y ∂z x  ∂η ∂ζ  eξ ξ eξ η eξ η  ∂ξ ∂ξ ∂ξ   ∂ξ  ∂ x ∂ y ∂z   ∂u y ∂u y ∂u y  = J G. relies on hierarchical elements implemented in a multilevel manner.1. eξ ηζ = eηξ eηη eηζ =  ∂η ∂η ∂η   ∂η ∂ζ    ∂ξ   eζ ξ eζ η eζ ζ ∂u z ∂u z ∂u z ∂ x ∂ y ∂z ∂ξ ∂η ∂ζ ∂ζ ∂ζ ∂ζ where J is the Jacobian matrix for bricks.7) (Q. In what follows we shall emphasize only the first application. as covered in Chapters 15–19.8) §Q. In particular transition elements are easily produced. The isoparametric definition of this element is repeated here for convenience:  (e)   N1(e)    1 1 1 1 1 1 N  1 2  x2 x3 x4 x5 x6   (e)   x   x1  N     3  . This adaptive-discretization technique. Hierarchical shape functions express differences from a set of simpler shape functions. Going directly to matrix-tensor form. To pass to Cartesian strains use  ∂u x ∂u y ∂u z  ∂x ∂x ∂ x   ex x e yx ezx  ∂u x ∂u y ∂u z  = e J−1 eξ ηζ J−T =  e yy ezy . *The Six Node Triangle.9) y2 y3 y4 y5 y6    y  =  y1 N4(e)        u x1 u x2 u x3 u x4 u x5 u x6  (e)  ux N5 uy u y1 u y2 u y3 u y4 u y5 u y6 N6(e) Q–5 . express total displacements from a reference state. (Q.2.§Q. y. Elements derived with hierarchical shape functions are called hierarchical elements. xy  ∂y ∂y ∂y  e e yz ezz xz ∂u x ∂u y ∂u z ∂z ∂z ∂z from which the 6-vector of Cartesian strains is easily extracted. §Q.2. *Hierarchical Shape Functions Conventional shape functions. which relies on systematic use of higher polynomial orders. Although the split may not necessarily be done with shape functions.1.2 *HIERARCHICAL SHAPE FUNCTIONS {x. z}. This concept finds applications in the following areas: hierarchical shape functions hierarchical elements (1) Element Specialization Hierarchical formulations simplify the derivation of special elements generated from a “parent” element by removing or transforming freedoms.  . w4 = 12 (w3 + w1 ) + w˜ 6 .11)  . interpolated with the shape functions (Q. w˜ 5 and w˜ 6 are called hierarchical values. See Figure Q. w5 = 12 (w2 + w3 ) + w˜ 5 . w. *Hierarchical Interpolation To “go hierarchical” the key step is to express the values of w at the midnodes 4.12) These “deviations from linearity” w˜ 4 .. The six-node quadratic triangle (once more) with the shape functions N1(e) = ζ1 (2ζ1 − 1). They have a straightforward geometric interpretation if w is plotted normal to the plane of the triangle.12) into (Q. 5 and 6 as deviations from the linear interpolation: w4 = 12 (w1 + w2 ) + w˜ 4 . u x or u y in the isoparametric representation (Q. (Q. Figure Q.11) we get the hierarchical interpolation formula   ζ1  ζ2     ζ  w = [ w1 w2 w3 w˜ 4 w˜ 5 w˜ 6 ]  3  ..  4ζ1 ζ2    4ζ2 ζ3 4ζ3 ζ1 Q–6 (Q.2(b) illustrates the meaning of the hierarchical value w˜ 4 at midnode 4. N6 Symbol w may represent x. N5(e) = 4ζ2 ζ3 N3(e) = ζ3 (2ζ3 − 1). N4(e) = 4ζ1 ζ2 N2(e) = ζ2 (2ζ2 − 1).10) For use below consider a generic scalar function. y. temperature. etc.2. §Q.1. or other elementvarying quantities such as thickness.2(a). If we insert (Q.10):   N1 N  2  w = [ w1 w2 w3 w4 w5 w6 ]  (Q.10).Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS 3 5 6 2 4 1 Figure Q.13) . For example. N6(e) = 4ζ3 ζ1 (Q.2. 2 and 3) have become the shape functions of the linear triangle.13) with the conventional interpolation two points become evident: 1. for we have expressed the new (hierarchical) midnodes values as corrections from the expansion of the linear triangle. The shape functions for the three corner nodes (1. We thus arrive at the hierarchical isoparametric representation of the six noded triangle:    1 1  x   x1     y  =  y1    ux u x1 uy u y1 1 x2 y2 u x2 u y2 1 x3 y3 u x3 u y3 0 x˜4 y˜4 u˜ x4 u˜ y4 0 x˜5 y˜5 u˜ x5 u˜ y5  N˜ (e)  1 0  N˜ (e)  2  x˜6   (e) ˜    N3  . 2.15) . N˜ 5(e) = N5(e) = 4ζ2 ζ3 . (Q.1) by making w ≡ x. As for the first row. Interpretation of hierarchical midnode value w˜ 4 . On comparing (Q. but are measured from the linear shape functions.5) into rows 2 through 4 of (Q.c) for N˜ 4(e) = 4ζ1 ζ2 . These results are not surprising.§Q.2. Q–7 = N6(e) = 4ζ3 ζ1 . u x and u y in turn. 5 and 6) stay the same.2(b. The shape functions for the three midnodes (4.14) where only the first three shape functions are different: N˜ 1(e) = ζ1 . N˜ 4(e) = N4(e) = 4ζ1 ζ2 . Insert now the hierarchical interpolation formula (Q. as illustrated in Figure Q. y˜6   ˜ (e)   N4   u˜ x6   N˜ (e)  5 u˜ y6 N˜ 6(e)  (Q. its last three entries vanish because the hierarchical deviation from a constant (the number 1) is zero. y. N˜ 3(e) N˜ 6(e) = ζ3 . N˜ 2(e) = ζ2 . The midnode hierarchical shape functions have the same form.2 (a) *HIERARCHICAL SHAPE FUNCTIONS (b) ~ w 4 w4 5 6 1 2 4 atic w1 w2 1 ar ne Li 3 N4(e) (c) 2 4 (w1 +w2 )/2 ~ w 4 dr Qua ar Line Figure Q. . .   x    .  u˜ x4    u˜ x5 u˜ x6 (Q..17) We would like to transform these equations to the hierarchical form ˜ (e) u˜ (e) = ˜f(e) . y = Ty u (Q..   uy   Quadratic . observe that       u˜ x1 u˜ x1 u x1     u˜ x2 u˜ x2     u x2         u˜ x3 u˜ x3     u x3    =  1 (u + u ) + u˜  =  1 (u˜ + u˜ ) + u˜  .20) Let T˜ x and T˜ y denote the 6 × 6 transformation matrices that relate the non-hierarchical to the hierarchical displacement components along x and y.. . K (Q. u˜ = u˜ (e) y where u˜ x and u˜ y denote the 6 × 1 vectors   u˜ x1  u˜ x2     u˜ x3  (e) u˜ x =  .  u˜ y4    u˜ y5 u˜ y6 (Q.   .16) §Q.18) The nodal displacement vector may be partitioned as  (e)  u˜ x (e) .  y  =  Linear ..Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS The linear and quadratic parts of the element are now neatly separated:   ..3.    . x = Tx u ˜ ˜ (e) u(e) y . ..2..21) To construct these transformation matrices.22) . .   . (Q. (Q.      Linear  1 .        .      .   2 x1  u x4   2 x1 x2 x4  x2 x4   1   1  u x5  2 (u x2 + u x3 ) + u˜ x5   2 (u˜ x2 + u˜ x3 ) + u˜ x5  u x6 1 1 (u + u ) + u˜ (u˜ + u˜ ) + u˜ 2 x3 x1 x6 Q–8 2 x3 x1 x6 (Q... respectively: ˜ ˜ (e) u(e) x . ux       .. Quadratic       . *Hierarchical Stiffness Matrix and Load Vector The element stiffness equations for the conventional (non-hierarchical) shape function form are K(e) u(e) = f(e) ..19)  u˜ (e) y  u˜ y1  u˜ y2     u˜ y3  = . §Q.         Quadratic Quadratic Q–9 (Q.27) to [ u˜ x1 u˜ y1 u˜ x2 u˜ y2 u˜ x3 u˜ y3 u˜ x4 u˜ y4 u˜ x5 u˜ y5 u˜ x6 u˜ y6 ] . T˜ y (Q.22) in matrix form with   1 0 0 0 0 0 0 1 0 0 0 0   0 0 1 0 0 0   (Q. in which Inserting (Q. it is convenient to order the hierarchical element equations so that all corner degrees of freedom come first. the transformation equations are useful for checking element derivations and computer programs.28) .2 *HIERARCHICAL SHAPE FUNCTIONS with exactly the same relation holding for u y . the hierarchical stiffness equations of the six-node triangle take the nested form            Linear Quadratic   Linear   Linear          =    . we pass from the ordering [ u˜ x1 u˜ x2 u˜ x3 u˜ x4 u˜ x5 u˜ x6 u˜ y1 u˜ y2 u˜ y3 u˜ y4 u˜ y5 u˜ y6 ] (Q. That is.23) T˜ x = T˜ y =  1 1 0 1 0 0  . (Q. However.9) and premultiplying by T T ˜ (e) = T˜ T K(e) T˜ K ˜f(e) = T˜ T f(e) (e) .  2 2    0 12 12 0 1 0  1 2 1 2 0 0 0 1 Combining the two matrix equations in one: u(e) = T˜ u˜ (e) where T˜ is the 12 × 12 transformation matrix  ˜ ˜T = Tx 0 (Q.6.2. §Q.24)  0 .25) ˜ we obtain (Q.10). They are formed directly instead. *Equation Nesting and Node Dropping To take full advantage of the “node dropping” feature described in §Q. With this rearrangement of nodal freedoms.4.26) (e) ˜ and ˜f are not computed by forming the conventional stiffness In practice the entries of K matrices and force vectors and applying the preceding transformation equations.17) into (Q. We can present (Q. We would like to form the sequence of transition triangles illustrated in Figure Q. Finally. Q–10 .3 by simply “dropping” or “deleting” nodes in a simple and systematic way. The technique used for handling internal nodes is illustrated here on the two elements shown in Figure Q. the task is simple. *Internal Node Injection The hierarchical representation can also be applied to internal nodes. Dropping node 5 through a similar procedure we get the four-node transition element (n = 4) shown in Figure Q.4: a conventional eight-node quadrilateral (A). We are left with 10 equations.29) u˜ x6 = u˜ y6 = 0.4.4. dropping node 4 we reduce the element to the three-node linear triangle. we simply say that (Q. §Q. and treat this boundary condition as a zero-displacement constraint. Transition triangular elements η (A) 4 8 1 η 3 9 3 (B) 7 4 6 ξ 7 6 8 5 1 2 ξ 5 2 Figure Q. To get rid of node 6. With the hierarchical stiffness equations in nested form. and have effectively formed the five-node transition element (n = 5) shown in Figure Q.Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS 3 3 3 3 5 5 6 2 2 4 4 1 2 2 4 1 1 1 Figure Q. Conventional eight-node quadrilateral (A) and nine-node quadrilateral (B) with hierarchical internal node.3. in which labels “Linear” and “Quadratic” refer to the association of the equations and degrees of freedom with the linear triangle and quadratic corrections thereto.5. dropping equations 11 and 12 from the nested-form of the element stiffness equations. respectively. and a nine-node quadrilateral (B) with hierarchical internal node 9.4.2. The algebra is more elaborate because all external nodes participate in the definition of hierarchical value.  N5   (e)   N6   (e)  N  7 N8(e) (Q. 0) = − 14 (w1 + w2 + w3 + w4 ) + 12 (w5 + w6 + w7 + w8 ). which gives w9A (0. we express the value at 9 as the sum of the interpolated center value in (A).§Q. N6(e) = 12 (1 − η2 )(1 + ξ ) N3(e) = − 14 (1 + ξ )(1 + η)(1 − ξ − η). 0) + w˜ 9 (Q. This is roughly the inverse of node dropping procedure used in §Q. N5(e) = 12 (1 − ξ 2 )(1 − η) N2(e) = − 14 (1 + ξ )(1 − η)(1 − ξ + η).24) at ξ = η = 0. N8(e) = 12 (1 − η2 )(1 − ξ ) . The procedure followed in this example illustrates the node injection technique: from a simpler element we build a more complex one by inserting one or more nodes in a hierarchical manner.32) To construct (B) with 9 as a hierarchical node at the quadrilateral center (ξ = η = 0). Q–11 (Q. (Q.31) Express a generic quantity w over element (A) as  w A = [ w1 w2 w3 w4 w5 w6 w7  N1(e)  N2(e)   (e)  N   3   N (e)    w8 ]  4(e)  .2 *HIERARCHICAL SHAPE FUNCTIONS It should be emphasized that the midnodes of the two example elements are not hierarchical. plus a correction: w9 = w9A (0. but such “hierarchical nesting” would obscure the presentation that follows.33) The center value is obtained by evaluating (Q. in practice they would be. N7(e) = 12 (1 − ξ 2 )(1 + η) N4(e) = − 14 (1 − ξ )(1 + η)(1 + ξ − η).30) 7 N8(e) with the shape functions N1(e) = − 14 (1 − ξ )(1 − η)(1 + ξ + η).34) .6 to build transition elements. The isoparametric representation of (A) is    1 1  x   x1     y  =  y1    u x1 ux uy u y1  1 x2 y2 u x2 u y2 1 x3 y3 u x3 u y3 1 x4 y4 u x4 u y4 1 x5 y5 u x5 u y5 1 x6 y6 u x6 u y6 1 x7 y7 u x7 u y7  N1(e)  (e)    N2(e)  1 N   3  x8   (e)   N  y8   4(e)  .  N  u x8  5(e)    u y8  N6  (e) N  (Q. etc.36) and (Q. (Q.38) where the shape functions are (Q.25) is w9 = − 14 (w1 + w2 + w3 + w4 ) + 12 (w5 + w6 + w7 + w8 ) + w˜ 9 .39) .Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS so that the full form of (Q.37) With these results the generic interpolation formula for (B) becomes  N (e)  1 w B = [ w1 w2 w3 w4 w5 w6 w7 w8  N2(e)   (e)  N   3   N (e)   4    w˜ 9 ]  N5(e)  .   (e)  u˜ x9  N6    u˜ y9  N (e)  7    N (e)  8 N9(e) (Q. y.36)  w5  =  0      0 0 0 0 1 0 0 0   w˜ 6   w6   0      0 0 0 0 0 1 0 0   w˜ 7   w7   0    0 0 0 0 0 0 0 1 0   w˜ 8  w8 w9 w˜ 9 − 14 − 14 − 14 − 14 12 12 12 12 1 The shape function associated with the internal node is the bubble function N9(e) = (1 − ξ 2 )(1 − η2 ) (Q. because none of these functions changes in going from (A) to (B).  (e)   N6   (e)  N   7   N (e)  8 N9(e) (Q.35) The transformation between non-hierarchical and hierarchical values may be expressed in matrix form:    1 0 0 0 0 0 0 0 0   w˜ 1  w1 1 0 0 0 0 0 0 0   w˜ 2   w2   0      0 1 0 0 0 0 0 0   w˜ 3   w3   0      0 0 1 0 0 0 0 0   w˜ 4   w4   0      0 0 0 1 0 0 0 0   w˜ 5  . (Q.37). [No tildes on the N ’s are necessary. we obtain the isoparametric representation of element (B):  N (e)  1   1 1  x   x1     y  =  y1    u x1 ux uy u y1  1 x2 y2 u x2 u y2 1 x3 y3 u x3 u y3 1 x4 y4 u x4 u y4 1 x5 y5 u x5 u y5 1 x6 y6 u x6 u y6 Q–12 1 x7 y7 u x7 u y7 1 x8 y8 u x8 u y8  N2(e)      (e)  0  N3   (e)  x˜9   N4    y˜9   N5(e)  .] Finally. on specializing this relation to x. The Cartesian displacement vector at generic point P is u = [ u x u y ]T .6(b). It has constant elastic modulus E and cross section area A. the expression of which is derived in §Q. namely. 2 If the bar is straight.y) 2 (ξ=1) 1 (ξ=−1) Figure Q.3 (a) 3(x3. The normal vector n is at 90◦ CCW from t. respectively. This element has six degrees of freedom and can only transmit an axial force N = E Ae.6. Additional geometric details are given in Figure Q. y1) x x (b) θ=angle(t. *A 3-Node Curved Bar Element This section formulates a curved curved bar element 3-node bar isoparametric element in which node 3 is allowed to be off alignment from 1 and 2.6(a). At an arbitrary point P(x. positive CCW. *Element Description The element moves in the {x. The arclength coordinate is s. as depicted in Figure Q. The derivation provides a first glimpse of techniques used in advanced FEM expositions to develop curved beam and shell elements. The angle formed by t and x is θ. the displacements u xn and u yn at nodes n = 1. §Q. It has six degrees of freedom.§Q.3. and can transmit only an axial force N = E A e.x) E and A constant y 3 (ξ=0) y Arbitrary point P(x. κ = 0 and e = du t /ds.1. The corrective term κu n is known as the hoop strain in the theory of curved bars and rods. The displacement components in the directions t and n are the tangential displacement u t = uT t = tT u and the normal displacement u n = uT n = nT u.2 1 “Unit vectors” means they have unit length: tT t = 1 and nT n = 1. where ds 2 = d x 2 + dy 2 . Q–13 . where e is the axial strain. 2. Figure Q.40) where κ is the inplane bar curvature. If then x is taken along the bar axis. 3.3.3. Figure (a) shows a 3-node curved bar element with constant modulus E and area A. y3) parabola in ξ *A 3-NODE CURVED BAR ELEMENT ut un t n 2(x2. The axial strain is defined as e= du t − κu n ds (Q.6(b) depicts geometric details covered in the text. §Q. y2) s=s(ξ) 1(x1.1 The positive sense of t corresponds to traversing along from 1 to 2. y) of the element one defines the tangential and normal directions by the unit vectors t and n. y} plane. s ≡ x and e = du x /d x.3. which is the well known axial strain used in Chapter 12. Choice of Cartesian local axes to simplify derivations.42) are the shape functions defined in terms of an isoparametric coordinate ξ that takes the value −1. N3 = 1 − ξ 2 (Q.Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS 3 Midpoint between nodes 1 and 2 y 1 x 2 e  =L Figure Q.41) Here N1 = − 12 ξ(1 − ξ ). Derivatives taken with respect to coordinate ξ will be denoted by a prime. N2 = 12 ξ(1 + ξ ). respectively. thus x  = d x/dξ . The isoparametric definition of this element is3    1 1 1 x2  x   x1    y2  y  =  y1    u x1 u x2 ux uy u y1 u y2  1  x 3  N1  y3  N2  u x3 N3 u y3 (Q. etc. 1 and 0 at nodes 1. 2 and 3. The strain energy taken up by the element is .7. 1 . . uy u y1 u y2 u y3 N3 3 4 Supercript (e) is omitted for brevity. Q–14 . y} as shown in Figure Q.44) in which J = s  = ds/dξ is the curved-bar Jacobian. and  is the 1-2 distance.45) u= N2 . The role of the deviation parameters α and β is similar to the device used in Exercises 16. with origin at the midpoint of nodes 1 and 2. from the curved rod theory outlined in §Q.3.5 to study the effect of moving node 3 away from the midpoint. 1 (e) 2 2 1 1 1 E A e ds = 2 E A e J dξ = 2 E A e2 J dξ. J = ds/dξ = s  . The overbars are omitted to avoid cluttering.7.3. dξ ds (Q. Take x3 = α and y3 = β where α and β are dimensionless parameters that characterize the deviation of node 3 from the 1-2 midpoint.7 are actually the local axes called x¯ and y¯ in Chapters 2-3. The values of u and u can be calculated from the last two rows of the isoparametric definition:   N1    u x1 u x2 u x3 ux = (Q. is T du n dt d(uT t) du e= t + uT − κu n = − κu n = − κu n ds ds ds ds T du dξ = t + uT (κn) − κu n = J −1 tT u + κ u n − κ u n = J −1 tT u .4 and 16. U =2 arclength −1 −1 (Q.8. and the replacement of dt/ds by κn comes from the first Fr´enet formula given in §Q.3. y} in Figure Q. they are reintroduced in Figure Q.4 The axial strain e.43) To simplify the analytical derivations that follow. Axes {x.3. we orient {x. 46) Collecting terms and replacing the expression of t given in §Q.) Q–15 2βξ 2 ] .3 *A 3-NODE CURVED BAR ELEMENT Noting that N1 = d N1 /dξ = ξ − 12 . we get u =  u x u y   = u x1 u y1 u x2 u y2   N1  u x1 u x3 N2 = u y3 u y1 N3 u x2 u y2   ξ− 1 2 1 2  u x3  ξ + . because it bypasses the hard-to-simplify square root. (Q.ell]. is not needed here but it will be used in the stiffness matrix formation in Question 2. Item (b).47) y  N2 x  N3 y  N3 ] . . J 2 = 2 ( 12 − 2αξ )2 .alpha_. (The uniform strain test on a curved bar is far trickier and is not required in the test. whence y  = y1 N1 + y2 N2 + y3 N3 = −2βξ . It is follow by a uniform-strain test on a straight bar: α = 0.alpha. β and .3: e = B u(e) . (Q. (Q.ell_]:=ell^2* ((1/2-2*alpha*xi)^2+4*beta^2*xi^2). Following is the verification that B predicts zero strains under the three two-dimensional rigid body modes (RBMs) for arbitrary α.beta_. N2 = d N2 /dξ = ξ + 12 .49)    2  2 J = (x ) + (y ) =  ( 12 − 2αξ )2 + 4β 2 ξ 2 .beta_. N3 = d N3 /dξ = −2ξ . this separate definition is important for symbolic work. Function J. 4*beta*xi^2}}*ell/JJ[xi. Here is an implementation of the foregoing B in Mathematica 2. JJ[xi_.3. -2*beta*xi*(xi+1/2). B = J −2 [ x  N1 y  N1 x  N2 (Q.50) Finally. J = ( 12 − 2αξ ).ell_]:={{(1/2-2*alpha*xi)*(xi-1/2).ell_]:=ell*Sqrt[(1/2-2*alpha*xi)^2+4*beta^2*xi^2].§Q. which returns the Jacobian J . (1/2-2*alpha*xi)*(xi+1/2). as a function that returns a 1 × 6 matrix: B [xi_. J [xi_. (Q. -2*beta*xi*(xi-1/2).alpha_. and B reduces to B= ( 12 1 [ξ − − 2αξ ) 1 2 0 ξ+ 1 2 0 −2ξ 0].beta. s ≡ x.48) The derivatives x  = d x/dξ and y  = dy/dξ are obtained from rows 2-3 of the isoparametric element definition: x  = x1 N1 + x2 N2 + x3 N3 = ( 12 − 2αξ ).52) The Jacobian coincides with the expression derived in Chapter 19 for the straight 3-bar element. u y3 −2ξ (Q.beta_.alpha_. B=  [ ( 1 − 2αξ )(ξ − 12 ) J2 2 2βξ(ξ − 12 ) ( 12 − 2αξ )(ξ + 12 ) −2βξ(ξ + 12 ) −2( 12 − 2αξ )ξ (Q.51) If the element is straight (β = 0). β = 0 but arbitrary .-(1/2-2*alpha*xi)*(2*xi).2. The function JJ above returns the squared Jacobian J 2 . -alpha*ell}. rm2={0.8.xm.0. The Stiffness Matrix Here is an implementation of the element stiffness matrix as module Stiffness3NodePlaneCurvedBar that returns a 6 × 6 matrix: Stiffness3NodePlaneCurvedBar[ncoor_.y3.x2.2.1.JJ. alpha=Simplify[ ( (x3-xm)*x21+(y3-ym)*y21)/ell2].0.beta.A.0. {{x1.3.ell.1.J.alpha_.y21.-(1/2-2*alpha*xi)*(2*xi).ell_]:=ell*Sqrt[(1/2-2*alpha*xi)^2+4*beta^2*xi^2]. {Em}=mprop.beta_.beta.0.alpha. Em. B [xi_.x3.0.rm2]].0.opt_]:= Module[{x1.alpha.y21}={x2-x1.alpha.1.ym}={x1+x2. {x21.y1}.Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS ClearAll[alpha.ell].Kebar.y *) rm3={0.ell_]:={{(1/2-2*alpha*xi)*(xi-1/2). ell2=x21^2+y21^2.x21.1.T.0. -2*beta*xi*(xi+1/2). (1/2-2*alpha*xi)*(xi+1/2).beta.beta. Print["Check unif strain for straight bar=".alpha_. {xm. but there is some error-prone algebra involved. -2*beta*xi*(xi-1/2). Q–16 .Simplify[B[xi.ell_]:=ell^2*((1/2-2*alpha*xi)^2+4*beta^2*xi^2).beta_.y2-y1}.ell/2.ell2.mprop_.y2.0}.{x3.1/2. Global and local axes for the transformations used in forming the global stiffness matrix.-ell/2.ell].rm3]].ue]].alpha.ell].1}.Simplify[B[xi. §Q.B.num.Simplify[B[xi.beta. JJ[xi_.Simplify[B[xi.alpha.alpha_.0}. ell=PowerExpand[Sqrt[ell2]].ym. J[xi_.y1.0. Print["Check zero strain for z-RBM=". Print["Check zero strain for y-RBM=". (* rotation about z *) Print["Check zero strain for x-RBM=".ell]. rm1={1. (* translations along x.ell.beta*ell.beta.y2}.fprop_.beta_.Ke}.y3}}=ncoor.{x2. A=fprop. num=opt.y1+y2}/2. Running this gives Check zero strain for x-RBM={0} Check zero strain for y-RBM={0} Check zero strain for z-RBM={0} 1 Check unif strain for straight bar={---} ell These checks can also be done by hand.rm1]].0.0. 3 -y 2 -x y local axes (see Figure 7) 1 x global axes Figure Q.ell]. 4*beta*xi^2}}*ell/JJ[xi. ue={-1/2.xi]. if True it forces floating-point computation.{0. are function evaluations at the Gauss points of the 2-point rule.beta.alpha.0.0}. referred to the global axes {x.{-y21. The ¯ (e) is Kebar= Em*A*(J1*Transpose[B1].J1. Local Geometry Analysis. J1.0.0.alpha. {0. J and JJ discussed in Question 1 are incorporated inside the body of Stiffness3NodePlaneCurvedBar.x21.  = +  . ¯ y¯ ) are related by the transformations x¯ = (x − xm ) c + (y − ym ) s.ell]. B2=B[ Sqrt[3]/3. T={{x21. The node coordinates supplied to Stiffness3NodePlaneCurvedBar in ncoor are global.ell].0. c = cos φ = x21 / and s = sin φ = y21 /.beta.3 *A 3-NODE CURVED BAR ELEMENT beta= Simplify[ (-(x3-xm)*y21+(y3-ym)*x21)/ell2].0.x21.0. β = y¯3 / =  2 The last expressions for α and β avoid square roots and are those implemented in the module.0}.55) K(e) = TT K   0 0 −s c 0 0    0 0 0 0 c s 0 0 0 0 −s c Q–17 .0}.Kebar.{alpha.ell].y21}. = α = x¯3 / =  2 (Q.x21. To connect these two systems begin by computing x21 = x2 −x1 . √ 2 2 2 2 y21 = y2 − y1 .B1+J2*Transpose[B2]. fprop Fabrication properties supplied as the cross-section area A. which is taken as origin of the local system as shown in Figure Q.y21. Whence (x3 − xm ) c + (y3 − ym ) s (x3 − xm ) x21 + (y3 − ym ) y21 . that is. Internal Functions. J1=J[-Sqrt[3]/3.0.. etc.0. The module has four arguments: ncoor Global node coordinates arranged as { { x1. opt Processing option: contains logical flag numer.beta.J2}]].53) in which xm = 12 (x1 + x2 ) and ym = 12 (y1 + y2 ) are the global coordinates of the midpoint between 1 and 2.0.beta.x21}}.8. and their names made local to the module. Arguments.B2). y) ≡ P(x. This is just a precaution against name clashing when the module is incorporated in a larger FEM code.alpha. (* avoids taking Sqrt[ell2] *) Return[Ke] ]. Functions B. {B1. Kebar=Em*A*(J1*Transpose[B1].0}.beta}]. If [num..B2.alpha. y¯ = −(x − xm ) s + (y − ym ) c y = x¯ s + y¯ c + ym . x21. x = x¯ c − y¯ s + xm . J2=J[ Sqrt[3]/3.{ x2.B2. (Q. y}. local stiffness matrix K where B1. which is the elastic modulus E. The local system {x. where T =  (Q.y1 }.0.B1+J2*Transpose[B2].8. {0. mprop Material properties supplied as { Em }.{0. the global stiffness matrix is given by   c s 0 0 0 0  −s c 0 0 0 0     0 0 c s 0 0 ¯ (e) T.ell].beta in Stiffness3NodePlaneCurvedBar=". Local and global coordinates of arbitrary points P(x. y21.-y21.54) −(x3 − xm ) y21 + (y3 − ym ) x21 −(x3 − xm ) s + (y3 − ym ) c = .J1.-y21.y2 }.0.0. From inspection.0.J2}=N[{B1.0.§Q.0. Print["alpha. B1=B[-Sqrt[3]/3. ¯ y¯ } is defined through the scheme depicted in Figure Q.  = x21 + y21 .{ x3.B2. Ke=(Transpose[T].T)/ell2.y3 } }.0. Ke=Simplify[Ke].True].{Em}.98748.1.beta*ell. rm2={0.24142 -0.954187 1. -} 5 3 Ke for Em=A=ell=1. . Ke=Stiffness3NodePlaneCurvedBar[ncoor.24142 -0.31358 -0. Print["Ke for Em=A=ell=1.rm2]]. and tested for rank and rigid body modes (RBMs): Em=A=1.0417379 0.rm2={0.rm2=".25761 .0}.-ell/2.531528 -0.0.Ke//MatrixForm]. Ke=Stiffness3NodePlaneCurvedBar[ncoor.0}}.141101 0.0417379 0. Chop[Eigenvalues[N[Ke]]]]. α = 1/5.1576 1. ell=1.0}.0. alpha=1/5. a curved bar stiffness is formed numerically with E = A =  = 1. The results are: 1 1 alpha.0. 0.1. Print["Ke.19933 -1.137226 -0.A.A.Chop[Ke.0}.xi].0417379 0.rm1]]. 0. beta=1/3. 0. 0.Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS 2 2 Since c = x21 / and s = y21 /. β = 1/5. alpha=1/5 and beta=1/5= 1.alpha.rm1=".954187 1. The following statements form K(e) for the straight bar with node 3 at the midpoint (α = β = 0) while keeping E. 0} Ke. 0.573266 0.573266 0. rm3={0.80293 -0.1576 -0. 0. Print["Ke. 0.1042 0. 0  0 −y21 x21 0  0    0 0 0 0 x21 y21 0 0 0 0 −y21 x21 ˆ is called This is the transformation implemented in Stiffness3NodePlaneCurvedBar.A. 0. ncoor={{-ell/2.{ell/2.beta in Stiffness3NodePlaneCurvedBar={-. 0.531528 -0.rm3=".1. Print["Ke. The result is the stiffness matrix listed in Exercise 16.0417379 0.beta}*ell}.667806 -0.ell/2. 0} Q–18 -1.ell.0}.141101 -1. A and  symbolic: ClearAll[Em.Chop[Ke.0}.531528 -0.0.{alpha. 0} Ke. ncoor={{-ell/2.0.beta.rm3]].19933 2. in which T T. Verification.rm1={0. Several tests on the element stiffness are performed now.56) K = 2 T K T.454681 1.531528 -0.454681 1. 0.-alpha*ell}.816961 -1.1. Print["eigs of Ke=".{0.137226 -0. taking square roots of 2 = x21 + y21 can be avoided by slightly rearranging the foregoing transformation as follows:   x21 y21 0 0 0 0 0 0 0   −y21 x21 0   T 1 (e) 0  0 x21 y21 0  0 (e) ˆ ¯ ˆ ˆ where T =  (Q. 2. Print["Check Ke for straight bar with 3 at midpoint:"] Print[Ke//MatrixForm].False].66183 -1.36231. rm1={1. 0.19933 -0.Chop[Ke.1.19561 -0.80293 eigs of Ke={5.19933 -1. {Em}.1}. alpha=1/5 and beta=1/5=". Next.{ell/2.667806 2. 57) The arclength s is also a function s = s(ξ ) of the coordinate ξ .58442 -0. a local-to-global invariance test is performed by rotating this element by 30◦ about z and displacing it by 6 and -4 along x and y. Figure Q.41008 0.4. Q–19 . {Em}.11168 0. y1=xbar1*s+ybar1*c+ym. Print["eigs of Ke=".58442 -0.y3}}.ybar2}. However. one more that 6−3 = 3).{xbar3. ym=-4. J = s = x  ds ds 5 D.606433 -2. y3=xbar3*s+ybar3*c+ym. -} 5 3 Ke for 30-deg rotated & translated bar: 0. Geometric Properties of Plane Curves The following geometric properties of plane curves are collected to help in the analytical derivations of §Q. 2nd ed. xm=6.78945 -0.0225469 0.967183 -0. Chop[Eigenvalues[N[Ke]]]].y2}. c=Cos[phi]. x2=xbar2*c-ybar2*s+xm. ncoor={{x1.606433 -1. 1961. x1=xbar1*c-ybar1*s+xm.0077 -0.03069 -0.552089 -0.3 *A 3-NODE CURVED BAR ELEMENT Ke.3.20503 0.62898 0.20503 0. phi=Pi/6. y = y(ξ ).103986 -0. 0} The eigenvalue distribution show a rank deficiency of 1 (4 zero eigenvalues.3.1. The RBM checks work fine.y1}. 0. Lectures on Classical Differential Geometry.98748.36075 1.rm3={0. Finally.True]. Ke=Stiffness3NodePlaneCurvedBar[ncoor.5 Consider a smooth plane curve given in parametric form x = x(ξ ).{x3.{x2. differential geometry such as the well known textbook by Struik.0225469 0.36075 -0.62898 1. the eigenvalues are not changed because T is orthogonal. First we need the Jacobian J = s  = ds/dξ . s=Sin[phi].11168 0. 0.17434 -0.3. Addison-Wexley.58) + y = x  cos θ + y  sin θ = (x  )2 + (y  )2 .A.967183 -0.beta in Stiffness3NodePlaneCurvedBar={-.66377 Note that K(e) has changed completely.967183 -0.Ke//MatrixForm]. y2=xbar2*s+ybar2*c+ym.552089 eigs of Ke={5. 0. New York.3. §Q. x3=xbar3*c-ybar3*s+xm.606433 -2. 2. The global coordinates are recomputed and the new K(e) formed: {{xbar1.606433 -1. Running the test gives: 1 1 alpha.103986 0. Furthermore α and β are also preserved because they are intrinsic geometric properties. whence  dx dy (Q. J.967183 2.0225469 2.ybar3}}=ncoor. The quickest way to get it is to differentiate both sides of the identity ds 2 = d x 2 + dy 2 with respect to ξ : 2ds s  = 2d x x  + 2dy y  . They can be found in any book on differential geometry. respectively.944636 0.§Q.17434 -0. This property is explained in §Q. cf.448104 -0. 0. Ke=N[Ke].ybar1}. as can be expected.. (Q. Print["Ke for 30-deg rotated & translated bar:". 0.36231.{xbar2.0225469 0.6. 0. 0.944636 -0. 0} -0. Struik. hence the qualifier “inextensional.” The IZEM produces a rank deficiency of one.{rm3}.62) §Q.0.2 is used. It would be required. κ= J3 (Q. The curvature is given by x  y  − x  y  .61) Expression (Q.3. But three of the eigenvectors of the associated invariant subspace are known: the RBMs. Running this gives the IZEM eigenvector: zero energy mode={0. To get an idea of what the IZEM looks like.{rm2}+ Transpose[{rm3}].194949. rm3 were generated by the Mathematica statements shown previously.70251. This leaves one zero eigenvalue. In the following.Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS where θ is the angle formed by the tangent vector t (directed along increasing s) with the x axis.171158.165054. rm2. for a curved beam element as in Exercise Q.360003} These six numbers can be physically interpreted by using a graphic display. Ke. ds (Q. This mode is now easily captured by an eigenvector analysis.-0. Using a “spectral inflation” technique the three RBMs are separated by raising their eigenvalues to nonzero values.4. for Gauss rules of 2 or more points. rm1. from t. Q–20 . which is the IZEM. The derivative of t with respect to the arclength s is given by the first Fr´enet formula dt = κ n. however. α = 1/5 and β = 1/5 previously treated in §Q.3.59) (Q.61) is not needed for a bar element.Chop[Eigenvectors[Ke][[6]] ]].531352.60) Here n has been taken to be at +90◦ = +π/2 radians.8. Ke=Ke+Transpose[{rm1}].{rm1}+Transpose[{rm2}].6 The IZEM is a bending-like motion of the element that is not a rigid body mode (RBM) but produces no axial stretching or contraction.-0. *Why Is the Stiffness Matrix Rank Deficient? The rank deficiency is due to the presence of an inextensional zero energy mode or IZEM. The eigenvector analysis of its stiffness K(e) would not show the IZEM because the zero eigenvalue has multiplicity 4. no matter how exact the integration rule is. (* Spectrally separate RBMs to isolate 0-energy mode *) Print["zero energy mode=". The tangent t and normal n at a point are unit length vectors defined by       d x/ds cos θ −1 x t= = =J y dy/ds sin θ        −dy/ds − sin θ −1 −y n= = =J d x/ds cos θ x (Q. see Figure 1(b). Here is a plotting module and the driving program: 6 These are also called “kinematic mechanisms” in the FEM literature.-0.0. the bar element with E = A =  = 1. 0.y3+a*uy3}.ux1.1}].m.yold.uy3.Graphics[Circle[{x2+a*ux2. after some reformatting and labeling.0.0.y. AppendTo[p.0}.y}}]]].171158.uy3}=N[ue].y2+a*uy2}. it has arbitrary amplitude.02]]]. -0.x2.02]]]. {{x1.0.1 0 3 1 -0.{alpha.{2.y2}. N3[xi_]:=1-xi^2.Graphics[RGBColor[1. The plot produced by this code.2 0. If [Length[th ]==0.02]]].yold}.y1+amp*uy1}. beta=1/3.2 undeformed element 0. k<=nsub. The dashed curves therein depict the deformed element moving in the IZEM (being an eigenvector. AppendTo[p. xi=-1. x=(x1+a*ux1)*N1[xi]+(x2+a*ux2)*N2[xi]+(x3+a*ux3)*N3[xi].x21.N2.Frame->True.x.N3.02]]].Graphics[Disk[{x1+a*ux1. xi=N[xi+2/nsub]. two amplitudes of opposite signs are shown.02]]]. yold=y].p={}}.ux3. PlotBar3Shape[ncoor_.Graphics[RGBColor[0.70251.y21.Graphics[Circle[{x3+a*ux3.-0. alpha=1/5.y1+a*uy1}.ux2.1. AppendTo[p. -0.ttab={th}.0. AppendTo[p.amp_.2 0 0.02]]].194949.nsub_.yold}={x1+a*ux1. AppendTo[p.y1. AppendTo[p.360003}.xold. N1[xi_]:=-(1-xi)*xi/2. is shown in Figure Q. ncoor={{-ell/2. xold=x.uy2. For [k=1.y3}}=N[ncoor]. AppendTo[p.ux3.atab=amp].15.ttab.0]]].AspectRatio->Automatic].N1. {xold.9. y=(y1+a*uy1)*N1[xi]+(y2+a*uy2)*N2[xi]+(y3+a*uy3)*N3[xi].ux2.y3+a*uy3}.beta}*ell}.16.0.0]]].y2+a*uy2}. If [Length[amp]==0.y1+a*uy1}.165054.y1}.{0.yold}={x1+amp*ux1. 0.th_]:=Module[ {x1.a.uy1. Depicted for an element with  = 1.uy2.15}. ue={0.4 0.m<=Length[atab].FrameTicks->Automatic.6 -0. The inextensional zero-energy mode (IZEM) of a 3-node curved bar.9.{x. k. ttab=th ].Graphics[Disk[{x3+a*ux3.y2.m++. ]. Return[p].) Note that the midline does Q–21 . Show[p.atab={amp}. N2[xi_]:=(1+xi)*xi/2.{x2.y3.ue_.{ell/2. xi=-1.x3. For [m=1.531352.. ell=1.uy1.0. ].atab.4 -0.1.6 Figure Q. -0.Graphics[Line[{{xold. α = 1/5 and β = 1/3.{x3. AppendTo[p.y1+a*uy1}.Graphics[Disk[{x2+a*ux2. p=PlotBar3Shape[ncoor.ue. k++.3 0.Graphics[Circle[{x1+a*ux1.4 2 0. a=atab[[m]].3 *A 3-NODE CURVED BAR ELEMENT 0. AppendTo[p. {ux1. 0.Graphics[AbsoluteThickness[ttab[[m]] ]]].0}.§Q.xi. AppendTo[p. {xold. however. and thus takes no axial strain energy.Appendix Q: MISCELLANEOUS FEM FORMULATION TOPICS not change length (in the linear approximation). the element becomes rank-sufficient. If bending energy is taking into account. Q–22 . 7 [A:25] Construct the hierarchical version of the 9-node biquadratic quadrilateral.1. EXERCISE Q. Add the six node points 4 through 9 as cubic deviations from the linear shape functions of the three-node triangle. The results for this stage should be again a formula such as (Q. The results for this stage should be a formula such as (Q. Verify that rigid body motions and constant strain states are preserved. and a 10 × 10 transformation matrix.3. Q–23 . Investigate the rank of the numerically integrated stiffness matrix. EXERCISE Q.3.23) but with 10 matrix columns.Exercises Homework Exercises for Chapter Q Miscellaneous FEM Formulation Topics EXERCISE Q.6).23) with 9 matrix columns plus a list of the shape functions for nodes 1–9.2 [A:35] As above. EXERCISE Q. EXERCISE Q. Element has 8 degrees of freedom: three at the end nodes 1-2 (add the rotation θz to the freedoms of the curved bar element) and two at the midnode 3 (same as in the bar element).3 [A:30] Develop a theory of natural strains and stresses for the 3-node curved bar element formulated in §Q. but for the 3D case discussed in §Q.4 [A:20] Prove the transformation (Q. Explain how you would construct the strain-displacement matrix (this is not a trivial problem).6 [A:25] Construct the hierarchical version of the 10-node triangular element of Exercise 17. but for a two-dimensional isoparametric element. Discuss the implications of this assumption as regards compatibilty and completeness requirements. Inject the interior node point 10 as a hierarchical function. EXERCISE Q. Compare those hierarchical shape functions for these nodes with those found in Exercise 17. curved. Verify that rigid body motions and constant strain states are preserved Second stage. plane bar-beam element with parabolic midline geometry defined by three nodes.1 [A:30] An assumed-strain 1D bar element is developed by making a simplifying assumption on eξ ξ : the jacobian J is taken constant and equal to an average value J0 .8 [A:35] Develop a 3-node. EXERCISE Q. Verify that rigid body motions and constant strain states are preserved.5 [A:25] As in the previous Exercise. Assumed uniform flexural rigidity E I decoupled from the bar-axial constitutive relation. Proceed in two stages as outlined in the previous exercise.1. Then express it as a matrix vector product e = Te enat where e = [ ex x e yy 2ex y ]T and enat = [ exiξ eηη γξ η ]T .1 proceeding in two stages: First stage. EXERCISE Q. S Spatial Applications of Matrices S–1 . §S.Appendix S: SPATIAL APPLICATIONS OF MATRICES TABLE OF CONTENTS Page §S. Points. Planes Lines S–3 S–3 S–2 .1.2. or xT a = 0 The plane A is thus defined by the 4-vector a. A.. Indexed homogeneous Cartesian coordinates1 {x0 . p = [ p0 p1 p2 p3 ]T . divide x1 . etc.2) aT x = 0. A. P. etc. x3 /x0 . Q.4) r = (aT q)p − (aT p)q. Planes Points in 3D space will de identified by X .§S. page 150.7) 1 These coordinates were independently invented in 1827 by Møbius and Feuerbach.1. To pass to physical coordinates. Example S.5) is called the coordinate matrix of the line. If x0 = 0 the physical coordinates are at infinity. Absorbing a suitable multiplier into the coordinates of R we obtain its vector in the form (S. Y . Maxwell at Cambridge.6) is called the dual coordinate matrix of line L. cit. x2 . Find the coordinates of the point where line joining points P and Q intersects plane A. It can be shown that L determines the line L to within a scale factor. It can be shown that2 L∗ L = 0. S–3 .1) Planes in 3D space will be identified by A.2 LINES In this Appendix we summarize some geometric applications of matrices in 3D space. The 4 × 4 antisymmetric matrix L = xyT − yxT (S. etc (S. loc. 1951. x3 } are used. and further developed in 1946 by E. Let A and B be two planes through L. x1 . Their coordinates are put in the 4-vectors x = [ x 0 x 1 x 2 x 3 ]T . Cambridge University Press. C. (S. Maxwell. x2 /x0 . Maxwell. A. B.1. then aT x = 0 so that λaT p+µaT q = 0. See E. General Homogeneous Coordinates in Space of Three Dimensions. The equation of plane A is written a0 x0 + a1 x1 + a2 x2 + a3 x3 = 0 or (S. x2 and x3 by x0 : {x1 /x0 . §S. The 4 × 4 antisymmetric matrix L∗ = abT − baT (S. §S. Solution.3) If R is on plane A. Points. Any point of P Q is R where r = λp + µq (S. y = [ y0 y1 y2 y3 ]T . Lines Let x and y be the coordinates of points X and Y on a given line L.2. 2 See E. (ii) Line L passes through the point X if L∗ x = 0. cit.4. (S.3. Find the plane A that joins line L to a point X . aT La = 0 so that aT p = 0.9) ∗ where L is the dual of L. page 154. Moreover since L is antisymmetrical.2. ˜ 1 and L ˜ 2 . The demonstration is trivial.10) . Solution. Any of the four equivalent conditions L1 L∗2 L1 = 0. Find Consider two lines L 1 and L 2 with coordinate matrices L1 . A. Solution. S–4 L∗2 L1 L∗2 = 0. Maxwell. Solution. Consider the vector p = La = (xyT − yxT )a = (yT a)x − (xT a)y (S. For the proof see E. loc. Example S. L2 L∗1 L2 = 0. Find where line L defined by two points X and Y meets a plane A. respectively. Example S.Appendix S: SPATIAL APPLICATIONS OF MATRICES Example S. L2 and dual matrices L the conditions for the lines to intersect. a = L∗ x (S. Thus P is the intersection of line L and plane A.8) From the last form the point P of coordinates p must lie on the line that joins X and Y . L∗1 L2 L∗1 = 0. Two immediate corollaries: (i) Line L lies in the plane A if La = 0. R References (in progress) R–1 . . R–2 R–3 R–3 . . . . . . .Appendix R: REFERENCES (IN PROGRESS) TABLE OF CONTENTS Page §R. . . . . . . . . . . . . . . . . . . . . . .1 §R. . . . . Reference Database .2 Foreword . . . . . . Berkeley. of Civil Engineering. D.. Elsevier Sci. Dissertation. A.. 4. 1942–56. NFEM Margin letters are to facilitate sort. Such files cannot be downloaded or printed. [5] Ackoff.com: click on the “search for used books” link. U. of California. abbrv.. As a consequence. An efficient algorithm for the determination of certain bifurcation points. and Zienkiewicz. Berkeley.. L. Standards. master-elective and doctoral level. Int. Greenwood Press. 1981. 2. Appl. [3] Abu-Gazaleh.). 419–451. R. Comput. IFEM Nonlinear Finite Element Methods. 17. 1964. Ph. 1993. J. Dissertation. abbrv. but does link to online reviews. and Stegun. will be removed on completion. Irons. A. abbrv. Oliver and Boyd. 9th edition. master-elective and doctoral level. Engrg. Wave Propagation in Elastic Solids. 22. 1965. C.§R. abbrv. 1967. Numer. Analysis of shell structures by the finite element method. 1970. of Civil Engineering. Foreword Collected references for most Chapters (except those in progress) for books Advanced Finite Element Methods. R–3 . 8th reprint 1999. Dept. 661–671. Determinants and Matrices. reset and reprinted. M. Management Sciences. Department of Commerce.1. [Since about 2008. senior-elective and master level. Edinburgh and London. L. 1961. B. CA. N. O.S. MFEMD Introduction to Finite Element Methods.. (eds. 1939 (2nd-9th editions. free of charge if the useful pages happen to be displayed.” (After all this is TEX. Bur. usually once per year. senior-elective and master level. Graphs and Mathematical Tables. Math.] Note 2. D.C.2 REFERENCE DATABASE §R..com has also a search engine. abbrv. Washington. Ph. Amsterdam. University of California. P. AFEM Advanced Variational Methods in Mechanics. Univ. J. Natl. 1983. 19–27.. confusing and full of unnecessary hype.. 28–85. doctoral level. 1973. AVMM Fluid Structure Interaction.2. Westport CN. Amazon.) §R.. B. abbrv. MFEMS Matrix Finite Element Methods in Dynamics. master-elective and doctoral level. old scanned books posted online on Google are an additional potential source. A. Reference Database A [1] Abbott. Analysis of plate-type prismatic structures. [2] Abramowitz..addall. Simplicial and continuation methods for approximating fixed points and solutions to systems of equations. D. senior-elective and master level. M. The advent of the Internet has meant that it is easier to surf for used books across the world without moving from your desk. [6] Adini. abbrv.. J.. L. S. citations numbers in a book Chapter might be off target until the Chapter is “recompiled.. CA.. [8] Aitken. Towards a system of systems concept.. IAST Matrix Finite Element Methods in Statics. Pubs. Analysis of thick and thin shell structures by curved finite elements. junior undergraduate level. [7] Ahmad. abbrv. [4] Achenbach. E. 1980. Meth. D. Applied Mathematics Series 55. reprinted by Wiley. FSI Introduction to Aerospace Structures. J. Reference numbers change as the bibliographical database is updated and resorted. 1971. in which Chapters are just programs. Note 1: Many books listed below are out of print. Dept. There is a fast search “metaengine” for comparing prices at URL http://www. C.) [9] Allgower. Handbook of Mathematical Functions with Formulas. which is poorly organized. pp. SIAM Review. [17] Almroth. 1978. Royal Aero. K. Korte (eds. 1991. R–4 . Allgower.. The NASTRAN Programmer’s Manual. L.. H. J. Glashoff and H. Peitgen (eds.. Berlin.. 499–539. W. and Brogan. M. 163–187. 26. F. 1965. 1965. Saczalski and H. 1974. K. 10. Numer. Springer-Verlag. M. R. Theory of Anisotropic Plates: Strength... K. C. Int. Berlin 15–55. 1970. 1–164.. Finite Elem. Meth. J. [25] Argyris. IUTAM Conf.. and Felippa. 105– 136.. Berlin. Hemisphere Pubs.). 633–636. H. A. Nonlinear Partial Differential Equations in Engineering. VA. and Moore. Li`ege. 1990. Automated choice of global shape functions in structural analysis.. 2645–2655.. Continua and discontinua. AIAA J. Evaluation of the constant strain triangle with drilling rotations. H. B. Schaeffer (eds. Kelsey. [13] Allman. Membrane triangles with corner drilling freedoms: I.. and Vibrations. A. Numerical Solution of Nonlinear Equations. AIAA J. and Kelsey. [15] Almroth. J. NASA SP-223. M. Soc. S.. Pilkey. Bader et. F. L. and Brogan. [16] Almroth. The NASTRAN Theoretical Manual. 26. 1972. NASA SP-221. The NASTRAN User’s Manual. O. H. Springer-Verlag. H. AGARDograph 72. B. [19] Ambartsumyan. Part I reprinted from Aircr. P. Proceedings 1st Conference on Matrix Methods in Structural Mechanics. London... Engrg.. D.. 1966. Butterworth. Fraeijs de Veubeke (ed. 121–140. F. B. Bifurcation buckling as an approximation to the collapse load for general shells. al. 11–189.. Pergamon Press. 1964. Des. P. de la Fuente. Belgium. [12] Allgower. [24] Argyris.). New York. Math. O. D. 69.. A survey of homotopy methods for smooth mappings. J. Lecture Notes in Mathematics 878. Springer-Verlag. 476–501. 1981. Soc. M. H. J. J. Engrg. Gr¨ostschel and B. [23] Argyris. Charlottesville. 1992. April-May 1955. J. and Georg.A.. 13. S. J. in E.. Appl. The EFF element. [21] Anonymous. Proc. 1970. in: W. University Press of Virginia.. Structural Analysis Computer Programs: Surveys. and Kamel.. and Felippa. Elasto-plastic matrix displacement analysis of three-dimensional continua. L. E. Anal. Air Force Institute of Technology. Structural stability.. Triangular finite elements for plate bending with constant and linearly varying bending moments. Matrix Methods of Structural Analysis: A Pr´ecis of Recent Developments. Russian translation.. in: B. 1988. Dayton..). Predictor-corrector and simplicial methods for approximating fixed points and zero points of nonlinear mappings. 1970. H. Oct-Nov 1954 and27.). Bachem. Haugen.. Corp. E. in: A. NASA SP-222. [20] Ames. Matrix Methods of Structural Analysis.-O. J.Appendix R: REFERENCES (IN PROGRESS) [10] Allgower. H. B. Triangular elements with linearly varying strain for the Matrix Displacement Method. 69. K. J.). An extension of the Newton-Kantorovich method for solving nonlinear equations with an application to elasticity. H. 1983. Stern. Stability. Mathematical Programming: The State of the Art. The NASTRAN Demonstration Problem Manual... O. [22] Anselone. Anal. Assessments and Availability. [11] Allgower. 12. C. [27] Argyris. E. 711–713. [18] Alvin. A. L. Numerical Continuation Methods: An Introduction. [14] Allman. J. AFFDL-TR-66-80. in R. on High Speed Computing of Elastic Structures. (eds. 525-528.. Energy Theorems and Structural Analysis. Academic Press. Ohio. 16. 1960. 1965. 1970. [26] Argyris. Royal Aero. NASA SP-223. Oxford.. 1970. 1966. S. [42] Avila. [46] Banerjee. J. R–5 . 1977. [32] Argyris. N. Mech. 161–178. al. Engrg. 3. and Mlejnek. N. S. Zur Berechnung der Determinanten. 3rd Int. E. 1986. AICA. . The natural factor formulation of the stiffness matrix displacement method. Assumptions. Acta Astronomica Series C. Taylor and Francis. wie auch der Inversen.. 85–155. N.. P. 102–120. 1982. R..). models.). Finite Elements for Thin Shells and Curved Members.. Vieweg. Mir Publishers. al. 5.. 45–51. 32. et.. J. [35] Archer. 1966. 1975.. Vol.. 10–170. H. Comput. H. and Zienkiewicz.. Comp. 97–119. 1937. 1983. H.. On the formulation of variational theorems involving volume constraints. and Schelkle. Ohio. in: R. 1965.). (eds. Mechanics. H. J. [29] Argyris. Consistent mass matrix formulation for structural analysis using finite element techniques. 41–97. B. Consistent mass matrix for distributed mass systems. 1975. and R. 1989.2 REFERENCE DATABASE [28] Argyris. Engrg. FL. Anal.. Vichnevetsky (ed. Air Force Institute of Technology. S. [36] Archer. 337–344.. and Reissner. Numer. Gallagher. Appl. H. Engrg. FENOMECH 1984. Proceedings 1st Conference on Matrix Methods in Structural Mechanics. New York. Engrg. Magazine Online. S. Meths. H. in R. I–III. Advances in Computer Methods for Partial Differential Equations.. J. Hybrid and Mixed Finite Element Methods. Conf. Meths. [34] Argyris. Die Methode der Finiten Elemente. G. H.. (eds. 2011. A simple triangular facet shell element with applications to linear and nonlinear equilibrium and elastic stability problems.. 161–174. E. J. Mech. The feasibility of continuation methods for nonlinear equations. J.-P. (eds.. und zur darauf basierten Aufl¨osung der Systeme linearer Gleichungen. [41] Atluri. A. Wiley.. E. Meths.). T. 11. R. J. C. Div. [37] Armen. Mech. [33] Argyris. Bader et. 1987 and 1988. Continua and discontinua... Comp. J. J. ASCE Struct. Rutgers University. AIAA J. SIAM J. Braunschweig. An Introduction to Metamaterials and Waves in Composites. AIAA J. 1979. The Da Vinci-Bernoulli-Euler beam theory?. Numerical Methods. 1963. J. . 2003. An excursion into large rotations. 1976.. 1910–1918. Appl. AFFDL-TR-66-80. Matrix analysis of three-dimensional elastic media: small and large displacements. H. H. 89. N.. Malejannakis. N. Available from http://memagazine. 10.§R. Boca Raton.html [44] Bakhvalov. [38] Ashwell. 1974. [40] Atluri. H. S.. 3. [30] Argyris. New York. 1965. and computational methods for plasticity. Mech. Comp. H. Wiley. 346– 356. on Finite Elements in Nonlinear B [43] Ballarini. Computers & Structures. and Bronlund. H. H. 5. G.. Moscow. Dunne. 3. O.. Dayton. O. R. Appl.. C. [31] Argyris.. 1975.. S. (eds).org/contents/current/webonly/webex418.. Stuttgart. Mech. On “hybrid” finite-element models in solid mechanics. 1984.11.. Gallagher. 215–247. [39] Atluri. J. [45] Banachiewicz. 367–383. New light on the Nayak alpha technique. Z. J.... AFFDL-TR-66-80. J. 1983. A study of three-node triangular plate bending elements.. A. Engrg.. Math. 1966. [67] Becker. L. Co-rotational beam elements with warping effects in instability problems. and Ho.. E. J. K. 243–251. Cambridge. [51] Bathe.. O. Inelastic. Engrg. Engrg. [50] Basu. [53] Bathe. 191. Int. Stability of Structures: Elastic. 1976.. A solution method for planar and axisymmetric contact problems.-J. Engrg. Meths. 1985. J... Die Knicklast des eiseiting eigenspannen.. 7. Singapore. M. J. Z. NJ. Engrg. Meth.. Cheung. 1951. 152–153. On the automatic solution of nonlinear finite element equations. 3. K. Computers & Structures. J. Numer. 2002. Meth. 1985. Numer. Englewood Cliffs. 2nd ed. Formulation and Computational Algorithms in Finite Element Analysis. Proceedings 1st Conference on Matrix Methods in Structural Mechanics. Numer. Triangular elements in plate bending – conforming and nonconforming solutions. 1973. Int. Stat. Cambridge. M. [55] Bathe.. (eds. 547–576. 22. [54] Bathe. Engrg. Oden.. Dayton. K. Fracture and Damage Theories. Engrg... and Dvorkin. [56] Bathe. NJ. J.. 1977. Bader et. Comp. [61] Batoz. Meth. 28. Finite Element Procedures in Engineering Analysis. 1952. J. No. Int.. MIT Press. J. 871–879. Int. Math. Angew.. J. Meths. 255–271. K. Ann. tangential gedr¨uckten Stabes. Int.. Engrg.. [65] Bazeley. N. 1979. 22. Prentice Hall. Irons. 1982.-J. K.. [60] Batoz. Numer. R–6 . K. J. Meth. al. 3. T. [62] Battini... J. J. L. 1980. 1487–1504. Meths. J..-J. 2010. 1989. [48] Barlow. C. 18.-J. M. 1973. Prentice-Hall. and Chaudhary. L. 59–85. and Cedolin. Engrg. K. S. Comp. Int. Mech. Meth. E.. MIT Press. 1077–1089. 15..). Phys.. 10. G. 2002.-W.. [52] Bathe. Numer. Numer. and Zienkiewicz.. 1755–1789. Finite element formulations for large deformation dynamic analysis. 1980. C. in: R. Meth. [57] Bathe. Numer. A. Engrg. Y. M. Meth. Int. [59] Batoz. World Scientific. element distortions and error estimation. and W. 191. and A. K. [64] Bazant.. G. Engrg. P. Meth. Comp. The Principles and Applications of Variational Methods.. 5811–5831. Englewood Cliffs. and Wilson. and Dhatt.. 14. Some practical procedures for the solution of nonlinear finite element equations. L. and Pacoste. Incremental displacement algorithms for nonlinear problems. 1982. Cimento. J. 107–111. [63] Battini. 6. E. Appl. 65–88. L. Ramm E.). K.. Bathe. J. Int... Appl. Air Force Institute of Technology. Optimal stress locations in finite element models. An inverse matrix adjustment arising in discriminant analysis. Appl. Mech. 17. J..-M. 1976.-M. K.. J.Appendix R: REFERENCES (IN PROGRESS) [47] Barlow. and Pacoste. and Dvorkin. Mech. Numerical Methods for Finite Element Analysis. 21. L. 21.. More on stress-points reduced integration. Engrg. Meth. L. J. P. 1964. Numer.. C.. Ohio. An explicit formulation for an efficient triangular plate-bending element.-J. 1262–1267. First edition 1988. and Wilson. K.. 1771–1812. J. Int. E. [66] Beck. [49] Bartlett. [58] Bathe. Plastic instability of beam structures using co-rotational elements. Wunderlich (eds. A four-node plate bending element based on Mindlin-Reissner plate theory and a mixed interpolation.. Numer. J. B. 51. Engrg. and Engelmann. Generalized Inverses: Theory and Applications Springer-Verlag. in: W. 221–258. (eds. G. Computational Methods for Transient Analysis. F. On dispersive properties of finite element solutions. G. Appl.. [78] Belytschko.. B. P.. Finite elements with increased freedom in choosing shape functions. Horrigmoe. Computers & Structures. K.. 1978. Carpenter. 787–802. Innovative Methods for Nonlinear Problems. Perturbation Techniques in Mathematics. [72] Belytschko. Numer. T. Application of higher order corotational stretch theories to nonlinear finite element analysis. 1976. Elsevier Sci. A. 483–497. Int. R. J. Physics and Engineering.. Rinehart and Winston. W. R. Swansea. [83] Bergan. D. [76] Belytschko. J. E. [73] Belytschko. 1992. P. Liu. 25–34. K. Mech. 2003. Quadrilateral plate bending elements with shear deformations. Computers & Structures.. N. P. 1677–1696. 175–182. Amsterdam. 12. Finite elements based on energy-orthogonal functions. and Wang. A C 0 triangular plate element with one-point quadrature. H. [77] Belytschko... Engrg. 7. [69] Bellman. New York.). Engrg. The gamma elements and related developments. Computers & Structures... and Carpenter.. R. and Hsieh. North-Holland. Hughes and E. Hinton 9eds. P. 201–217. W. J. 67–82..K. Academic Press. 1978.. and Hsieh. in: T.. 15. and Greville. London. and Ong. Comp. and Horrigmoe. 1985. A new approach for deriving ‘good’ finite elements. J. [70] Bellman. McGraw-Hill. Engrg. Hughes (eds. B. Numer. 316–347. K. H. Stolarski. 19. J. and Johnston.§R. Meth. 255-271. B. X. An overview of semidiscretization and time integration operators. R. L.). Ltd. T. Stolarski. T. G. G. [79] Ben-Israel. T. 1964. [86] Bergan. G. 20. T. Appl. 1960. 2nd ed. Hyperplane displacement control methods in nonlinear analysis. Meth. Pubs. E. Mech. H.. [75] Belytschko. and Nyg˚ard. Pineridge Press. 1141–1555. Int. [82] Bergan. in: T. R. 1973.).). 2003.. G. Pineridge Press. 7. B. J. M. The Mathematics of Finite Elements and Applications II. G. 1984. J. Meth. Meth.. [74] Belytschko. Engrg. 11. T. New York. J. Krakeland. 643–664.. 2nd ed. Holt. J.. E. Numer.K. Belytschko and K. Engrg. C. in: J. Int. T. Liu. in: J.. Swansea. Vol. P.. Park (eds. Whiteman (ed. K.... Meths.. [71] Belytschko. T... Numer. McGraw-Hill. 20. Finite Element Methods for Plate and Shell Structures. 1976.. 497–509..2 REFERENCE DATABASE [68] Beer. R–7 . P. 1979. and Simons. Belytschko and T. Stress projection for membrane and shear locking in finite elements. Solution techniques for nonlinear finite element problems.. and Glaum. Mechanics of Materials. T...New York.. Computational Methods for Transient Analysis. 1986. G. 1983. G. [80] Bergan. 1980.. R. G. and Søreide. P. R. [85] Bergan. Achenbach (eds. N. and Hughes. 12. Int... J.. T. 1–66.). U. Introduction to Matrix Analysis. Engrg. Incremental variational principles and finite element models for nonlinear problems. Miklowitz and J. [87] Bergan.). J. Nonlinear transient finite element analysis with convected coordinates. [81] Bergan. P. T. Meth. Reprinted by Dover. Solution algorithms for nonlinear structural problems.. I: Element Technology.. U. New York.. Numer.. Comp. 1983. Liu. [84] Bergan. and Hanssen. N. B. Int. J. Wiley. P.. Modern Problems in Elastic Wave Propagation. 1984. 1984. Meths. Chapter 1. R. 345–364. J.. 1980. 1984. and Mullen. T. 327–344. Trondheim. [93] Biot. [100] Bolotin. V. North-Holland. M. New York. 1954. and Nyg˚ard. and Sidebottom. J.. 1963. 1971. Advanced Mechanics of Materials... Anal. [96] Bodewig. and Schmidt Jr. NTH. A. [92] Bickford. Schmidt. [109] Brillouin. 1965.. M.. [106] Brent. Numer. M. 5th ed. 1989. 38. English translation from the 1960 Russian edition.. in Finite Element Methods for Nonlinear Problems. (Second revised and enlarged edition 1959. Numerical Methods for Nonlinear Optimization.. Finite Element Methods for Nonlinear Problems. P. (eds. S.. G. S. Comp. 1977. F. P. Springer. London. M. V. Some efficient algorithms for solving systems of nonlinear equations. A. Dayton. P. Finite element formulations and solution algorithms for buckling and collapse analysis of thin shells. 3. and W. Air Force Institute of Technology. Thesis. R. Finite dimensional approximation of nonlinear problems. V. [99] Bolotin. K. R. S.. Meths. London.. O. Wiley. 767–785. [102] Born. L. Proceedings 1st Conference on Matrix Methods in Structural Mechanics. Limits for the characteristic roots of matrices IV: Applications to stochatic matrices. G. Academic Press.. V.. J. L.. Matrix Anal. D. SIAM J.. Numer. and Felippa.. F. A. Engrg. A. K. Numer. O. P.. [105] Brauer. Engrg.Appendix R: REFERENCES (IN PROGRESS) [88] Bergan. Anal. Fox. Springer Verlag. Numer. C. 19. Wiley.. Berlin. 317-338. 1960.. Wiley. Theory of Thermal Stresses. A method for finding multiple extrema of a function of n variables. and Wiener. . Wave Propagation in Periodic Structures.) [97] Bogner. [103] Boggs. and Huang. B. 1966. S. R. B. Nonconservative Problems of the Theory of Elastic Stability. Dr. K. M. F.. O. [94] Bird. Part 3: simple bifurcation points. The Dynamic Stability of Elastic Systems. Addison-Wesley Longman. P. Oxford. L. Amstrong. in: by F. and Bernstein. Dover. Bathe. Dynamics of Polymeric Liquids. of Structural Mechanics. Meth. 1952. 1971.. al. and Hassager. A. Second-order systems with singular mass matrix and an extension of Guyan reduction. K.). [101] Boresi.. 1998.. E. 1992. 649–657.. 50.8. J. G. Wunderlich (eds). Nonlinear shell analysis using Free Formulation finite elements.. [95] Bjærum. 1986. B. 10. The Mechanics of Incremental Deformations. 25–69. The solution of nonlinear systems of equations by A-stable integration techniques. English translation from the 1961 Russian edition. [104] Branin. McGraw-Hill. Nonlinear structural analysis by dynamic relaxation.. 1956. A. 1985. SIAM J. A. K. W.. [90] Bergan. 1972. SIAM J. San Francisco. CA. J. New York.. [98] Boley. 17. Ohio. Appl. Math.. Duke Math. C. [108] Brew. The generation of interelement compatible stiffness and mass matrices by the use of interpolation formulas. H. T. Advanced Mechanics of Materials. R–8 . 1981. 1993. J. Pergamon Press. Dynamical Theory of Crystal Lattices. J. Holden Day. D. R. [107] Brezzi. and Hoo. A. Vol 1: Fluid Dynamics. and Morton. Bader et. Div.. Berlin. Amsterdam.. [89] Bergan. Oxford.. R.).. Ing. and Raviart. 1–30. 75–91. P. AFFDL-TR-66-80.. Menlo Park. R. 1964.. Mech.. A triangular membrane element with rotational degrees of freedom. P. Appl. B. Rappaz. Lootsma (ed. 1973.... in R. H. P. 397–444. Norway. Matrix Calculus. New York. Int. 463–483. New York. 1946.. J. 1996. [91] Bhat. A. 1970. 17. [124] Caratheodory.. Pressure Vessels and Piping Design Technology – A Decade of Progress. D. Buckling of Bars. The MIT Press. 3. [112] Broyden. Meths. L. Cambridge Univ. [130] Chan. G. 1960. 2321–2325. C. G. R. S. G. ASME. Plastic buckling. [113] Brush. 1973.. Quasi-Newton methods and their application to function minimization. 1898.. G00213. 1969.. G. C.. Generalized Inverses of Linear Transformations. Appl. Chichester. Calculus of Variations and Partial Differential Equations of the First Order. Arclength continuation and multigrid techniques for nonlinear elliptic eigenvalue problems. J. J. 4... J. 1974. B. [131] Chandrasekhar. [129] Ceruzzi.. Meth. Chelsea. A. C. Berlin. [126] Carr. 21. Comp. C. [111] Broyden. S. Press. Dietrich (eds.. Practical methods for elastic collapse analysis of shell structures. Numer.. University of California at Berkeley. 1985. [128] Cayley. [118] Butcher. SIAM J. Inst. [114] Bushnell. McGraw-Hill. R–9 .. [117] Bushnell. Numerical Solution of Systems of Nonlinear Algebraic Equations. CA. 2003. [125] Carey. D. Numer. C. B. Comp. AIAA J. 1968... 11.. 1982. Engrg. AIAA J. A. and Almroth. London.. O.. C. 45. C. Cambridge. F. 19. Meth.. Department of Civil Engineering. D. Dordrecht.). F. Int. Sci. C. A refined finite element analysis of thin shell structures including dynamic loadings. C. 1982.. P. Engineering Plasticity. M. Teubner. 577–593.. A.. 65–78. Cambridge Univ. A solution to the C 1 continuity problem in plate bending. Book No. C. 368–381. [116] Bushnell. Comp. A History of Modern Computing.. Ph. F. 1981. Engrg.. and Hall. Theory of Shell Structures. Engrg. D. 1967. 69–79. Dover. 1291-1317. 1975. [123] Caramanlian. Mech. E. Zamrik and D. Pergamon Press. O.. Dissertation. Math. Numerical Methods for Ordinary Differential Equations. Buckling of shells – pitfall for designers. 1983. Ch. Computerized Buckling Analysis of Shells.2 REFERENCE DATABASE [110] Brogan. C [120] Calladine. 2. Nijhoff Pubs. Wiley. H. [115] Bushnell. 1991. New York. [119] Byrne. [122] Campbell. 1977. MA. Academic Press.. New York. Berkeley. 1935. Shells of revolution under arbitrary loading and the use of fictitious densities in dynamic relaxation.. Int. 2nd ed. Dover. [127] Cassel. New York. 47–117.. Translated reprint of the original German edition. J. 1965.. Proc.. R. [121] Calladine. D. Comput.. Statist. The Netherlands. 1998. Plates and Shells. T.. D. 683–708. plasticity and creep. New York. Press. 1982. 1983. Radiative Transfer. Collected Works.4 in S. A strategy for the solution of problems involving large deflections. 1183–1226. A unified approach to three finite element theories for geometric nonlinearities. O. New York. 1971. A class of methods for solving nonlinear simultaneous equations. and Almroth..§R. and Keller. 19. Y. Civil Engrs. D. B. A. D. and Meyer. 9. Math.. R.. Hollister (eds. on Electronic Computation. 112.1964 Cline. 21–27. [144] Clough. Wiley. Norway. 1969. Gallagher. C. M. 139–145. Nashville. and Penzien.Paper. and Yorke. W. AFFDL-TR-66-80. The finite element method in structural mechanics. 441–486. R. rev. University of Alabama Press. S. 1994. An encyclopædia of cubature formulas. L. R. The finite element method after twenty-five years: a personal view. S. 3rd ed. and Plesha.. Mallet-Paret. 85–119.. S. Monomial cubature rules since “Stroud”: a compilation — Part 2... 361–370.. The finite element method – a personal view of its original formulation. A refined quadrilateral element for analysis of plate bending. Rept.. pp. W. 1989. Bell (ed. 1–54. R. Dayton. 56. AFFDL-TR-68-150. Wiley. Ser.. Zienkiewicz and G. 3rd ed. Hale. Computers & Structures. The stress distribution of Norfork Dam. J. Boulder. Air Force Institute of Technology. Cambridge Univ. R.. [135] Chow. al. Yamada and J. 6. Appl. and Gupta. 887-899. in L. [142] Clough. J. Y. D.. M. (eds. Finite element stiffness matrices for the analysis of plate bending.. Finding zeros of maps: homotopy methods that are constructive with probability one.). Malkus. Math. Pittsburgh. Ohio. Res. R. Note on the generalized inverse of the product of matrices. 1989. 57–58.. Proceedings 1st Conference on Matrix Methods in Structural Mechanics. 19. R. D. 1960. Dynamics of Structures. A. 89–100. 12... Press. Berlin. AL. Bader et. 1975. [141] Clough. Acta Numerica. R.. [143] Clough. [139] Clough.). J. Mech. R. Springer. Proceedings 2nd Conference on Matrix Methods in Structural Mechanics. 1999. Ohio. E. Springer-Verlag. Concepts and Application of Finite Element Methods. C. in: K. in: O. Tapir. From Finite Elements to the Troll Platform – the Ivar Holand 70th Anniversary Volume. 2002. R. 1965. L. [136] Cline. [147] Clough. [148] Collatz. 32. A. Symposium on Application of Finite Element Methods in Civil Engineering. R–10 . E. Rowan and R. [151] Cools. Computers & Structures. H. E.. McGraw-Hill. in: R. Early finite element research at Berkeley. Comparison of three-dimensional finite elements. R. 19. Comp. Comput.. Univ. 1971. M. Skallerud. Dayton. [140] Clough. (eds. R. W. and Wilson. 1980..SIAMR. D.Appendix R: REFERENCES (IN PROGRESS) [132] Cheng. R. [150] Cools.. An historical note on finite rotations. 80. W. [138] Clough. C. W. W. [133] Chiesa. 1982. J. SIAM Review. [137] Clough. Air Force Institute of Technology. Methods of Bifurcation Theory. R. March 1962. Proc. Closed form line spring yield surfaces for deep and shallow cracks: formulation and numerical performance. in: W. T. 2003. Stress Analysis.).. Appl. N. Math. and Gross. 1993. Recent Advances in Matrix Methods of Structural Analysis and Design. 1960. of California at Berkeley.. 1978. R.). New York. Berke et. Analysis of structural vibrations and dynamic response. Proc. W. [146] Clough. 100. 1968.).. S. New York. 5th US National Conf. 533–545. 399-440. 6. 2nd ed.the science behind the art. J. [145] Clough. Inst. J. 1999. R.. [152] Cools.. W. 1964. al. August 1999. The Numerical Treatment of Differential Equations. Oden (eds. H. B. [149] Cook. K. Mech. [134] Chow.. N.. and J. W. CO. Comp. Constructing cubature formulas . London. and Tocher. W. W. 445–453. Pa. in R. Hackett (eds... August 1962.. Complexity. The finite element method in plane stress analysis.. K. 515–547. Hunstsville. 2nd ASCE Conf. and Felippa.). J. 1966. H. TN ASCE.. Numerical Methods for Nonlinear Problems. J. M. Soc. Bull. Numer. Variational methods for the solution of problems in equilibrium and vibrations. 1983. Meths. Int. J. Barycentric coordinates. and Moita. Dover.. E. Computers & Structures.. A. 18.. D. Lindberg. Comp. R. [171] Crisfield. 1997.. 131–150. Wiley. Nonlinear Finite Element Analysis of Solids and Structures. 19. 1971. [154] Courant. 833–852. rev. Mech. 13. 2 vols. Incremental/iterative Solution procedures for nonlinear structural analysis.. [157] Crabtree. A faster modified Newton-Raphson iteration. 1. Comp. and Olson. New York. Math. 55–62. 1313–1319. and Rabinowitz. Engrg. 93–120. Anal. reprinted in Int.M. R. G. 1269–1289. A. Engrg. 267–278.. Engrg. [156] Coxeter.. H.. [165] Crisfield. Meth. A consistent corotational formulation for nonlinear three-dimensional beam element. Explicit integration and the isoparametric arch and shell elements... M. 39. 643–645. Computers & Structures. 1986. Wiley. A. M. Math. M.. S. New York. A unified co-rotational for solids. and Kurdila. Springer-Verlag. J. A.. [159] Craig. Vol. Bifurcations from simple eigenvalues. 7. 1994. [158] Craig. ed.§R. [172] Crisfield. 1979. R. 81. C. 1956. M. [173] Crowe.. Static and dynamic applications of a high-precision triangular plate bending element. Meths. M. 1980. Amer. An arc-length method including line searches and accelerations. E. H. 1957–1965. A four-noded thin plate bending element using shear constraints – a modified version of Lyons’ element. Vol 1: Basic Concepts. A. Hinton and D. A.. R. [167] Crisfield.. [168] Crisfield. Coupling of substructures for dynamic analyses. Wiley. Vol 2: Advanced Topics. J. Meth. 1969. 1969. Nonlinear Finite Element Analysis of Solids and Structures.. McGraw-Hill. Interscience Pubs. Chichester. Funct. 1937. Wiley. 1962. A quadratic Mindlin element using shear constraints. Owen (eds. Methods of Mathematical Physics. M. Numer. 20. and Haynsworth. R.. [163] Crisfield. Taylor. in: C. 181–187.. Berlin.7 in Introduction to Geometry. Appl. AIAA J. 33... 22. A. New York. 2nd ed. Proc. J.. A. O. AIAA J. M. Appl. Soc. R–11 . New York. 2969–2992. 364–366. Comm. 1990. Engineering Analysis: A Survey of Numerical Procedures. 1967. [161] Crandall. V. [170] Crisfield. J. 6. Engrg. M.S. §13. Translation of Methoden der Mathematischen Physik. P... A. C. shells and beams. [162] Crisfield. Meth. [160] Crandall. Numer. G. A. 1943. [164] Crisfield.. Appl. R. R. 1996.. 2.. Mech. An identity for the Schur complement of a matrix. G.. Swansea. Comp. A. 8.. A History of Vector Analysis: The Evolution of the Idea of a Vectorial System... [166] Crisfield. M. 1968. 1981. F.. reprinted with corrections 1994. 321– 340. and Hilbert. R. 1983. K. E.. Solids Struc.. 1984. [169] Crisfield. M. 49. M. Amer. [155] Cowper. G. Fundamentals of Structural Dynamics.2 REFERENCE DATABASE [153] Courant. Appl. 1969. Int. Kosko.. A. 1–23. Chichester. M. 2006. J. Engrg. 37. M. E. M. Meths. U.. 1991. D. Pineridge Press. M... An incremental-iterative algorithm that handles snap-through. Mech. 216–221. H.). and Bampton.. reprinted in: L. [186] Dennis. 1.. Analysis of continuous frames by distributing fixed-end moments. A continuum mechanics based four-node shell element for general nonlinear analysis. J. 1944. 1930. and Collar.. 1974. [187] Deymier. 1953. C. 1969. N. A. H. J. L. New York. E. Solution of systems of nonlinear equations by parameter variation.. Proceedings American Society of Civil Engineers (ASCE). Series 7. 8... 1743. 34. Convergence rates for Newton’s method at singular points. J. N. R.). [192] Duncan. R. T. 1967. [188] Dhatt.. Numerical Methods for Unconstrained Optimization and Nonlinear Equations. J. W. Numer. Matrices applied to the motions of damped systems.. Mag. J. . S. 919–928. 35. and Collar. W. 1962. Series 7. [184] Den Heijer. 19... [190] Donnell. G. 1948. D. On steplength algorithms for a class of continuation methods.-J. Numer. H. Anal. C. 11. L. (ed. [185] Dennis. 219. 1981. SESM Report 69-3. Springer. Paris. J. R–12 . 149–175. Mag. 925–948. Reprinted by Gauthier-Villars. [191] Duncan.... H.... A method for the solution of oscillations problems by matrices. 1–13.J. L. Grinter (ed. and Keller.. Prentice-Hall. Englewood Cliffs. 10. [193] Duncan.. Prentice-Hall. Englewood Cliffs. 78–82.. and Bj¨ork. [181] Decker. 1770. Pure Appl. 1984. Paris. H. [177] Dahlquist. ´ [176] D’Alembert. ed. W.. and Rheinboldt. C. Anal. 1921. W. and Kelley. Heidelberg. and Schnabel. 1984... Numerical Methods. An efficient triangular shell element. Path following near bifurcation. D. A. D. Some devices for the solution of large sets of simultaneous linear equations. The Engineer.. Comm. Mag. Phil. No. 88.. 1965. Phil.. 77–88. F. R. W.. Math. K. 1–10. New York. [180] Davis. Numerical Methods of Analysis in Engineering. 19. 1984. 1976. 17.. Department of Civil Engineering. Introduction to Nonlinear Differential and Integral Equations. D [175] D’Alembert. L. 296–314. 865–885. G. SIAM J. 601–602. AIAA J. A. E. J. Series 7. 1977. 660–670. [183] Deist. and Taylor. Keller. 197–214. E. SIAM J. Dokl. P. 18.. H. Acoustic Metamaterials and Phononic Crystals. 218–221. and Mor´e.).Appendix R: REFERENCES (IN PROGRESS) [174] Cross. Stress analysis of axisymmetric solids utilizing higher order quadrilateral finite elements.. [189] Doherty. W. NJ. Computing J. Phil. L. Plates and Shells. E. F. Beams. and Sefor. T. Akad. Quasi-Newton methods: motivation and theory. W... B. [178] Davidenko.. A. USSR. H. P.. Berkeley. downloadable from European Culturan Heritage Online (ECHO). An introduction to dynamic relaxation. Comput. 1934. University of California. A. 2100–2102. SIAM Review. Nauk. available from Google as eBook. Engrg. L. 1932. 1983. B. Wilson E. Trait´e de Dynamique. 2013. J.. Trait´e de l’Equilibre et du Movement des Fluides pour servir de suite au Trait´e de Dynamique. 20. and Transactions ASCE bf 96.. R. and Bathe. [179] Day. [182] Decker. 1935. 46–84. Anal. 2nd. Paris. McGraw-Hill. On a new method of numerical solution of systems of nonlinear equations (in Russian). MacMillan. 1970. Dover. [194] Dvorkin. Birkhoff and R. J. and Araldsen. 1205-–1227.. Numer. G. [210] Felippa. A. A. SIAM–AMS Proceedings II.). in: J T.. C. [212] Felippa. in: G. SESAM-69: A general purpose finite element method program. Numer. A method of finite-element tearing and interconnecting and its parallel solution algorithm. W. Dissertation. B. 3–4. 5. Geuzaine. 5.. et al. (eds. [207] Felippa. [196] Egeland. A.D. Procedures for computer analysis of large nonlinear structural systems. J. 1991. M. J. 217–236.. Euler Opera Omnia. University of Texas. 1911—82. Computational Methods in Nonlinear Mechanics.. Providence. J. F.. [211] Felippa. Numer. and Roux. O. 1974.§R.. Hall. [205] Felippa.. R. and Roux. Berkeley.. 2. P. J. McDill.2 REFERENCE DATABASE E [195] Edelsbrunner.. Int. H.. NJ. Department of Civil Engineering.. A. Curved.. Appl. The finite element method in solid mechanics. Meth. and West. A. “quadrilateral” elements for finite element analysis. J. M. Texas. Engrg.. J.. A. Finite element analysis of three-dimensional cable structures. 40. Meth.I. J.. [206] Felippa. Berne. [202] Farhat. [199] Euler. in: A. Computers and Fluids. isoparametric. B. Jardetsky. The Texas Institute for Computational Mechanics. London.. An alphanumeric finite element mesh plotter. qui in hujusmodi Corpora Cadere Possunt. C. Engrg. C. Int. Meth. 12. Int. C. 1–124. 821–836. 1957. 1974. S. Computers & Structures. Differential Equations and Linear Algebra. C. X. 3–29. Natural Science Society. Cambridge Univ. 1976. Implicit parallel processing in structural mechanics. C. No. New York. A.. Press. Mech. X. 210–252. Application of a three-field nonlinear fluid-structure formulation to the prediction of the aeroelastic parameters of an F-16 fighter. Z. Wave Propagation in Layered Media. Prentice Hall. [197] Elias. 13–25. 1. 1977.. R–13 .. S. 1972. Ph. E. [208] Felippa. Theoria Motus Corporum Solidorum seu Rigidrum ex Primis nostrae Cognitionis Principiis Stabilita et ad Omnis Motus. 4. 2002. J.. Refined finite element analysis of linear and nonlinear two-dimensional structures. Engrg. Wexler (ed. [204] Farlow. Pergamon Press. M. Int. CA. Reprinted in L.... 41–68. [209] Felippa. 1966. and Press. On the reciprocal form of Hamilton’s principle. and Zienkiewicz. 2003. W.. University of California at Berkeley.. 31–42. [198] Ergatoudis.. Solution of equations with skyline–stored symmetric coefficient matrix. C. 1973. 1978. 709–728. 1994. Numer. C. al. O. 11. Comput. 3–293. Austin. Geometry and Topology for Mesh Generation.. Advances.). M. American Mathematical Society. Int. Irons. Varga (eds. L. 1968. 2001. and Brown. [203] Farhat. A. and Clough R.. Computers & Structures. Solids Struc.. 1975. W. 1765... [200] Ewing. C. McGraw-Hill.H. Iterative procedures for improving penalty function solutions of algebraic systems. F. Error analysis of penalty function techniques for constraint definition in linear algebraic systems. F [201] Farhat. 93–100. J. Numerical Solution of Field Problems in Continuum Physics. H. Oden et. 32. 60–101. Large Engineering Systems. F. Mech. C. Engrg. 1969. M. 4. Cambridge. Meth.). C. J. 40.. 311–324. C. and Bergan. J. A. Dordrecht.. 27–38. A.4. 1989. R–14 . [216] Felippa. [220] Felippa. J. 129–160. [227] Felippa.. A. 1990. Owen. B.Appendix R: REFERENCES (IN PROGRESS) [213] Felippa.). 1992. [215] Felippa. 54. Crivelli. A. J. Proceedings of NUMETA’87 Conference. and Alexander. [231] Felippa. 3. Swansea. 5. 1989. 38. C. 283–282. C. Swansea. Park (eds.. [222] Felippa. C. and J. O˜nate (eds. Appl.). Dynamic relaxation under general increment control.. [221] Felippa. 109–139... Wriggers and W. C. Finite Elem. A triangular plate bending element based on an energy-orthogonal free formulation. in: C. A survey of parametrized variational principles and applications to computational mechanics. Implementation and performance evaluation. 12. The core-congruential formulation of geometrically nonlinear TL finite elements. 297–337. Engrg. Liu. 1984. 1984. Hybrid functionals and the free formulation.K. C. Int. Mech. Meth. K. A. [228] Felippa. 1992. [225] Felippa. Meths.. K. [226] Felippa. U. Wagner (eds. Belytschko and K. Traversing critical points by penalty springs. Haugen. C. 595–602.. Solids Struc. A survey of the core-congruential formulation for geometrically nonlinear TL finite elements. and Haugen.. [223] Felippa. Mech. Comp.. D. Pineridge Press. 191–216. [230] Felippa. 609–616. 123–133. Archives of Computational Methods in Engineering. C. A. Simo (eds. A. Programming the isoparametric six-node triangle. Developments in variational methods for high performance plate and shell elements.).. 103–133. 189–201. 203–239. C. The Netherlands. 1991. T. A. 1978. and Militello. 1994.. [224] Felippa. Appl. Finite Elem. K. 1994. Int. and Militello. 57–68. Mech. CED Vol. C.. 45. A. 5. in: W. 29. C. Partitioned analysis of coupled mechanical systems. M. New York. Meths. [214] Felippa.. Mech. Chapter IV. Hinton. Anal. and Crivelli.. Numerical Methods for Nonlinear Problems 2.. C. Nonlinear Computational Mechanics — The State of the Art. Engrg. Anal. 61.. Swansea.. P. 7. in: P.. C. Meth. [218] Felippa. Comp. Analytical and Computational Models for Shells.... Appl. The extended free formulation of finite elements in linear elasticity. Comput. 1989.. Numer. Finite element analysis of shock-induced hull cavitation. Mech. Wales. From the individual element test to finite element templates: evolution of the patch test. 1995.. 1987. A. Parametrized multifield variational principles in elasticity: II. A. J. C. Appl. 173–177. C. J. E.. Comput. 1987. Mech. A. Nijhoff Pubs. A. and E. Pineridge Press. A. Engrg. A.. 79–88. A. Appl. Penalty spring stabilization of singular Jacobians. Parametrized variational principles encompassing compressible and incompressible elasticity. Engrg. J. C. 1987. C. Dynamic relaxation and Quasi-Newton methods.. Computational aspects of time integration procedures in structural dynamics – I. C. C. A. Membrane triangles with corner drilling freedoms: II. K. L... 1988.. Springer-Verlag. Appl. [229] Felippa.. and Park. Implementation. Des. Membrane triangles with corner drilling freedoms: III. C. 56. B. Belytschko and J. [217] Felippa. Appl. A. Numer. T. 113. 1991. and Geers. 1984. S. Innovative Methods for Nonlinear Problems. C. 44. in: A. R. 199–229. C. Berlin. Meths. L.. Comp. ASME.. C. Comm. U. A. 730–733. Noor. 12. The ANDES element. L. C. A... C.. A. 1–48. Taylor. A. Des. 1. The American Society of Mechanical Engineers. C. DeRuntz. T.). Militello. Engrg.. G. [219] Felippa. Engrg. 1995. Customizing the mass and geometric stiffness of plane thin beam elements by Fourier methods.. 241–258.. 2125–2168. Customizing high performance elements by Fourier methods.. Issue 17..2 REFERENCE DATABASE [232] Felippa. 192. Barcelona. [233] Felippa. Mech. H. 2002. IACM Expressions. 286–303. [249] Felippa. Recent developments in parametrized variational principles for mechanics. 15–19. M. Mech.. [242] Felippa. 1313–1324. Partitioned analysis of coupled mechanical systems. Saxe-Coburn Publications. C. 39. A. 2004. A compendium of FEM integration rules for finite element work. Appl.. [248] Felippa. C.. Okstad (eds. Comput. 2004. C. Noor. Engrg. 2004. A. Engrg. Meths. 867–890. January 2000. Comput. 79. 149. C. M. Engrg.. Argyris Memorial Issue. 91–112. C. in: B. A. [244] Felippa. E. (eds. 283-296. C. Mech. A. Appl. A. [241] Felippa.). C. K. R. A. Mech. [236] Felippa. University of Colorado at Boulder. and O˜nate. invited contribution to Special Issue in honor of A. 2006. C. A. and O˜nate. 21. Mech.. and Park. A systematic approach to the Element-Independent Corotational dynamics of finite elements. Parametrized unification of matrix structural analysis: classical formulation and dconnected mixed elements.. 29–68. College of Engineering and Applied Sciences. A. Des. Anal. 2006. and Justino Filho. C.. C. Comput. Meths. A.. 159–174. Wall et.). 2006. 2001. invited contribution to J. A. Comp. Chapter 3. Computers & Structures. Meths. A. [237] Felippa. [251] Felippa.. 45–74. C. 88. A historical outline of matrix structural analysis: a play in three acts. Engrg.. C.. Nodally exact Ritz discretizations of 1D diffusion-absorption and Helmholtz equations by variational FIC and modified equation methods. C. al. C... 18. 71–98. 319–337. Meths.). 2001. A study of optimal membrane triangles with drilling freedoms. C. [239] Felippa. C. Park. Spain. Computers & Structures. Aerospace. Kvamsdal and K. A. Construction of customized mass-stiffness pairs using templates. E.. 191. C. 2000. Park. A template tutorial. Appl. in: K. A. 867–890. Computational Mechanics for the Twenty-First Century. Comput. [240] Felippa. Engrg.... A. Supernatural QUAD4: a template formulation. Mech. 19:4. Recent advances in finite element templates. A. 2005. C. Report CU-CAS-00-03. K. 5316–5342.. 411–418. 21... [235] Felippa.§R. [234] Felippa. 1997. C. A. 2007. CIMNE. C. V. 2001. The construction of free-free flexibility matrices as generalized stiffness inverses. K.. Comp.. and Park. 1997. [247] Felippa. CIMNE. Chapter 4. Topping (ed. in: W. 3247–3270. Mech. The construction of free-free flexibility matrices for multilevel structural analysis. 2111–2140. [243] Felippa.. R–15 . A compendium of FEM integration rules for finite element work. C. Center for Aerospace Structures. Appl. C. A. Computational Mechanics: Theory and Practice.. C. Meths. [238] Felippa. Engrg. Engrg. Comp.. A direct flexibility method.. Comp. Comp. C. The amusing history of shear flexible beam elements. 2003. M.. 2001. Barcelona. K. ASCE J.. 190. 18. A. K. [245] Felippa. Nodally exact Ritz discretizations of 1D diffusion-absorption and Hemholtz equations by variational FIC and modified equation methods. Engrg. Comput. 195. Comput. A. A. [246] Felippa. H. Appl. Mech. Mathisen. Finite Elem.. and Farhat. Edinburgh... C. [250] Felippa. Trends in Computational Mechanics. A.. 1996. T. 21. Math. Engrg. [257] Felippa. at http://caswww. Pure Appl. 17. P. Int. [275] Fox. Finite Element Methods for Stress Analysis.d/Home.19.. 1966. [254] Felippa. Dover. 1–5.html. A. 1964. D. [274] Fox.. L. O˜nate. in: I. J. A. P`ere et Fils. Comm.. 2nd ed. A. Arch. Appl.colorado. A. and Fishkind. B. C.. The continuation method for nonlinear functional equations.. R. C. Oxford. Differential Forms. [271] Fl¨ugge. Math. Web-posted Lectures on Nonlinear Finite Element Methods. R. updated biyearly. E.. Practical Methods of Optimization. O˜nate. Dover. 1972. at http://caswww. FIC-based fluid-solid variational formulation encompassing incompressibility: II.... D. C. D. [267] Flanagan. 2nd printing. A. Engrg. L. [255] Felippa. Quart. Rev... R–16 . A.d/AFEM. Norway.edu/courses.html. Chez Firmin Didot. 1973. 1988.. and Belytschko. E. [270] Fletcher.edu/courses.d/NFEM. [263] Finlayson. A. in preparation. updated biyearly. 1984. A uniform strain hexahedron and quadrilateral with orthogonal hourglass control. An Introduction to the Calculus of Variations. Trondheim. Meth.. C. FIC-based fluid-solid variational formulation encompassing incompressibility: III. Berlin... 1969. in preparation. Berlin. 435–456. H. AIAA/ASME Material Conference. Calculus of Variations. 4. R. [253] Felippa. C. S...colorado. J. [258] Felippa. [273] Fourier.. A. Academic Press. C. Web-posted Lectures on Introduction to Finite Element Methods. Wiley. 2014. Paris. W.. in preparation. Numer. Spectral analysis. Stresses in Shells.. Advances in the integrated approach to structural synthesis. Matrix Anal. Comp. Q. A. S. A.. D. Dissertation. and Idelsohn.d/AFEM. Computational Galerkin Methods. New York.d/Home.. [264] Finlayson.edu/courses.. Springer-Verlag. 1963. The Moore-Penrose generalized inverse for sum of matrices.. 735–748. F. Time-domain dynamic analysis. The Methods of Weighted Residuals and Variational Principles. and Scriven. A.d/IFEM. R. S. [262] Fill. T. Extension of Lagrange’s equations.colorado. and Park. 1822.. Ph. Pure Appl. FIC-based fluid-solid variational formulation encompassing incompressibility: I. O˜nate. 1989. Appl. 679–706. 12.colorado. C. B. R.. A. A. Bell (eds. at http://caswww. and Schmit. 1987.edu/courses. L. [259] Felippa. Springer-Verlag. Holland and K. N. Guo.d/Home.html. Anal. [266] Flaggs. A. C. updated yearly. J.). S. 21.. Stanford University. C. J. [269] Fletcher. [256] Felippa. [261] Ficken. C... R. J. Tapir.. Mech..d/Home. With Applications to the Physical Sciences. [260] Ferrers. C. E. [268] Flanders. 1951. at http://caswww. L. and Idelsohn. 1960.. 629-635. [272] Forsyth. Theorie Analytique de la Chaleur. Web-posted Lectures on Advanced Finite Variational Methods in Mechanics. Web-posted Lectures on Advanced Finite Element Methods. updated biyearly. Static Analysis. SIAM J. A. Dept of Aeronautics and Astronautics. E.. E. Symbolic analysis of the finite element method in structural mechanics.Appendix R: REFERENCES (IN PROGRESS) [252] Felippa.... The method of weighted residuals — a review. A three-dimensional theory of elasticity. M.. K. Mass templates: general description and 1D examples.html. Meth. 1873. Dover reprint 1987. 1999. 1981.. and Idelsohn. [265] Fjeld. . Oxford. Stress Analysis. Fraeijs de Veubeke Memorial Volume of Selected Papers. Stress analysis of heated complex shapes. 717–752. London. 4. Fraeijs de Veubeke (ed.. England. and some Applications to Dynamics and Differential Equations.. Pergamon Press. 1968. B... Bull. 1965. 295–319. Foundations of Solid Mechanics. 1980.. J. Int. H. [279] Fraeijs de Veubeke. R. reprinted in M. A. M. 1976. [287] Fried... Displacement and equilibrium models. Analysis and finite element approximation of compressible and incompressible linear isotropic elasticity based upon a variational principle. [291] Gallaguer. [280] Fraeijs de Veubeke. Alphen aan den Rijn. [277] Fraeijs de Veubeke. reprinted in M.. and Bijlard. M. 283–297. M. on Finite Element Methods. JulyAugust 1973. 24. 1964. Englewood Cliffs. Press. The Netherlands.. B. G [290] Gallaguer. I. B. 700-707. Dual priciples of elastodynamics: finite element applications. Geradin (ed. C. Sitthoff & Noordhoff. M... reprinted in M. J. J. M. Appl.. New York. Alberta. Prentice-Hall.). 1965. B. Woodlands. 10. 1st ed.§R. J. 1980. 259–273. C. Fraeijs de Veubeke Memorial Volume of Selected Papers. and Malkus. 1975. B. Bruxelles. Int. Upper and lower bounds in matrix structural analysis. reprinted in Int. J. Mech. Sci. Padlog. A. R. B. B. A conforming finite element for plate bending. 1951. M. [286] Freudenstein.. Canada. Proc. Engrg. in: O. 14. [283] Fraeijs de Veubeke. October 1975. 1980. R–17 .). Am. I. B. Stress function approach.. M. The Netherlands. reprinted in M.).). M. Assoc.. P. Lisbon. Solids Struc. P. J. B.). NJ.. Geradin (ed. Wiley. [289] Fung. B. 895-913. Finite element mass lumping by numerical integration with no convergence rate loss. World Congr. Orthogonal trajectory accession to the nonlinear equilibrium curve. 145–197. M. 461–466. Matrix structural analysis: Lecture Notes for the International Research Seminar on the Theory and Application of Finite Element Methods. [282] Fraeijs de Veubeke. S. J. Technique de L’A´eronautique No. Numer. 2001. R. 1962. Alphen aan den Rijn. L. Zienkiewicz and G. A Correlation Study of Methods of Matrix Structural Analysis. 1989. B. The Netherlands. 7th (paperback) printing 1963. Alphen aan den Rijn. [288] Fried. Engrg. Geradin (ed. Rock. Int. Solids Struc. 95–108. 47.. and Collar. M.. Cambridge Univ.. 509–568. Meths. [285] Frazer. 76.. 1963. [281] Fraeijs de Veubeke. NATO Advanced Studies Institute Lecture Series in Finite Element Methods in Continuum Mechanics. Sitthoff & Noordhoff. Duncan. Comp. H. 550–556. M.. 1971. The Netherlands. Mech. Serv.. 1984. 174–265.. Fraeijs de Veubeke Memorial Volume of Selected Papers. The dynamics of flexible bodies. R. 52.. M. Pergamon. Diffusion des inconnues hyperstatiques dans les voilures a` longeron coupl´es. Y. Numerical solutions of systems of nonlinear equations. Alphen aan den Rijn. Elementary Matrices. and Roth. [278] Fraeijs de Veubeke. D. [284] Franca. W. Meths. in: B. Meth. Imprimerie Marcel Hayez. 1980. Engrg. F. Engrg. Mach. Hollister (eds.2 REFERENCE DATABASE [276] Fraeijs de Veubeke. Geradin (ed. Comp. Comp. Sitthoff & Noordhoff. 1964. Fraeijs de Veubeke Memorial Volume of Selected Papers. Matrix Methods of Structural Analysis. 287–342. 663–715.. Sitthoff & Noordhoff. Appl. B.). 11. 1938. P. AGARDograph 72. Calgary. Soc. B.. J. New York. Practical Optimization. in: T. Peitgen (eds. North-Holland. 417–472. S. S. The Beginner’s Guide to Mathematica Version 4. V. M. Belytschko and T.).. A. 1980. 1980. Mechanical Vibrations: Theory and Applications to Structural Dynamics. L. S. [296] Geers. 339–348. R... Pineridge Press. 221–244. 1971.. Perturbation Procedures in Nonlinear Finite Element Structural Analysis. Lecture Notes in Mathematics 878. 58. 1152–1159. [302] Georg.. and Moler. and Gray. 1986. and Idelsohn. Springer-Verlag. New York. 2. Boundary element methods for transient response analysis. W. Soc. Nuclear Engrg. and Fomin. H. D. The Theory of Matrices. L. Englewood Cliffs. London. [311] Goldberg. Universit´e de Li`ege. B. Computational efficiency of equilibrium models for in eigenvalue analysis. New York. K. Residual potential and approximate methods for three-dimensional fluid-structure interaction.. in B.. M. 1981... Chelsea. Soc... E.. Nonlinear structural analysis via Newton and Quasi-Newton methods. [310] Glynn.. M. J. T. M.. 2 vols. Computational Methods for Transient Analysis. Numerical Solution of Nonlinear Equations. Am. ASCE Struct. and Rixen. M. Calculus of Variations. Implicit finite element methods. M. H. Boyle. 89. Wiley. Glashoff and H. Hinton and D. 1997. R–18 . Cambridge Univ. L. T. Computational Methods for Transient Analysis. Div. Springer-Verlag.. I. B. Doubly asymptotic approximations for vibration analysis of submerged structures. Numerical integration of the Davidenko equation. Springer-Verlag... R. K. Prentice-Hall. [303] Geradin.. R. Academic Press. J. 1963. Nuclear Engrg. 1980. Statist. [293] Gantmacher. Lecture Notes in Mathematics No. 1971. and Wright.). in: T. J. Amsterdam. M. Acoust.. J. K. [307] Geradin. L. [305] Geradin. High Speed Computing of Elastic Structures. M. E... [300] Gelfand. C. 35–50. Hughes (eds. P. Am... F. M. 1963. Numerical Initial Value Problems in Ordinary Differential Equations. 51. 45. 45. E.. Finite element approach to kinematic and dynamic analysis of mechanisms using Euler parameters. J.. Sci.. Murray. 1975. J.. R. C.). 333–336. Owen (eds. in: C.. [297] Geers. M. SIAM J. [304] Geradin. 1980. and Idelsohn. M. Acoust. 1983. 73. Chapter 4. R. J. Prentice-Hall. Design. [309] Gill. Hughes (eds. Doubly asymptotic approximations for transient motions of general structures.. Nonlinear structural analysis via Newton and Quasi-Newton methods. Taylor. H.. North-Holland. Dongarra. Englewood Cliffs. Hogge.). [294] Garbow. 58.. T. Fraeijs de Veubeke (ed. and Idelsohn. M. H. Hogge. S. Design. [298] Geers. NJ. Belytschko and T.EISPACK Guide Extension. Hogge.J. Comput. Berlin. Swansea.. J. 589–624. 1999. Reprinted by Dover. C. N. Analysis of nonlinear structures. 1983. 1960. 1981.. 461. J.Appendix R: REFERENCES (IN PROGRESS) [292] Gallagher. Numerical Methods for Nonlinear Problems II. Allgower. New York. On tracing an implicitly defined curve by Quasi-Newton steps and calculating bifurcation by local perturbations. Amsterdam. J. T.-O. Press. [306] Geradin. 1973. [301] Georg. L. in: E..). [295] Gear. and Felippa. Soc. Lecture Notes in Computer Science Vol. 1500–1508. 1505–1510. [299] Geers. J. Chapter 9. and Richards. 339–348. W. Am. R. 1984. [308] Geradin. Matrix Eigensystem Routines . 1981. T. S. 2000.. Acoust. 75–89. J. 107–132. 380. Numer. On Reissner’s theory of bending of elastic plates. Stat.. L. Berlin. L. Singularities and Groups in Bifurcation Theory. J. Annals Numer. Addison-Wesley. F. Oxford. Math. H. P.. J. 994–1008. G. [314] Golub. Ann. C.. 1981... D. M. 1996. H [327] Hageman. New York. 3rd ed. A. and Lubich. 1977. Partitioned formulation of frictional contact problems using localized Lagrange multipliers. New York. 317. 22. 41–70. A History of Numerical Analysis. SIAM J. A. K.. H. Int.. SIAM Review. Encyclopedia of Physics VIa. [325] Guttman. 1984. J. S. Enlargement methods for computing the inverse matrix. The Linear Theory of Elasticity. and Felippa.. 3–10. Dover. New York.. 3. and Wanner.. E. H. [333] Haisler. Springer-Verlag. and Wanner. A. C. Classical Mechanics. Park. J.. Solving Ordinary Differential Equations I: NonStiff Problems. Quart. Stricklin.. C.. M. R. 1977. updated by C. H. P. A. [316] Gonz´alez. M. Berlin. Springer-Verlag. 1977. Dissertation.. C. G. reprinted as Mechanics of Solids Vol II. On the scope of the method of modified equations. Vibration Analysis of Plates by the Superposition Method. Tables Aids Comput. Numerical integration over simplices. A. 7. J. [322] Guggenheimer. [321] Griffiths.. Math. Engrg. [334] Hammer. Springer-Verlag. [332] Hairer. H. A. Engrg. W.. Differential Geometry. E. F... and Stroud. [315] Golubitsky.). D. C. Commun. Developing an optimal mass for membrane triangles with corner drilling freedoms. [326] Guyan. Press. 2nd ed. W. Nørsett. AIAA J. [320] Griffiths. and Key. Truesdell (ed. Updating the inverse of a matrix. Poole and J. Statist.. J. K. The Mathematical Basis of Finite Element Methods. 1999. 11. Wanner. 2001. Co. 7. S. [323] Guo. D.§R... 1949. 1–295. M. Vol II. 2002. Meth. [324] Gurtin.. Safko. 1984.. Displacement incrementation in nonlinear structural analysis by the self-correcting method.. [317] Gorman. W. and Mitchell. [313] Goldstine.... 1946. Applied Iterative Methods. E. H. Nonconforming elements. [319] Green. 10.. 1991. Wave Motion in Elastic Solids. 221–239.. 2006. Matrix Computations.. Dover. 1986. Berlin.. 1965. G. 137–139. Springer-Verlag.. 1994. Berlin. Math. 2012. and Van Loan. 1950. Geometrical Numeric Integration: Structure-Preserving Algorithms for Ordinary Differential Equations.. [330] Hairer. 336–343. G. 2nd ed. Reduction of stiffness and mass matrices. 223–228. F.. [331] Hairer. Springer-Verlag. Clarendon Press. Q. New York. [318] Graff.. Appl. 1983. Comput. G. [328] Hager. D. Backward analysis of numerical integrators and symplectic methods. [329] Hairer. Johns Hopkins Univ. R. W. and Young.). J. H. E.. University of Colorado at Boulder. E.. 1989. R–19 ... Springer-Verlag. F. World Scientific Pub. 1972. D. 1st ed. 319–333. Math. Numer. Springer-Verlag. R. Academic Press.. E. Griffiths (ed. Meth. Sci. 1. and Schaeffer. 1993. in: D. Analysis by Its History. New York. 1985. E. 1956. and Sanz-Serna. Department of Aerospace Engineering Sciences.2 REFERENCE DATABASE [312] Goldstein. in: C. 31. Klein and C. V. A.. Wiley. in: F. (ed. W. Stiffness derivation based on element convergence requirements. 299–301. AFFDL-TR-66-80. Discrete Variable Methods for Ordinary Differential Equations. R... [341] Hanson.). P. The solution of nonlinear equations and of differential equations with two-point boundary conditions. 4. [357] Herrmann. Bader et. Error Propagation for Difference Methods. American Mathematical Society. Visualizing Quaternions.. 17pp. L. A. Linear Elastic Waves. 1966. Elasticity equations for nearly incompressible materials by a variational theorem. ASME/AMD Vol.).. G. Dover. [353] Henderson. Lin. Academic Press. M¨uller (eds.. The theory of finite plastic deformations in chrystalline solids. The Mathematics of Finite Elements and Applications III. and Searle S. [356] Henrici. [351] Haynsworth. Hopkins and M. L. E. New York. A unified formulation of small-strain corotational finite elements: II. in: H. H. Proceedings 1st Conference on Matrix Methods in Structural Mechanics. [345] Haselgrove. [337] Hamming. Numerical evaluation of multiple integrals. 12. and Stroud.. in R. Dayton.. V. Ohio. al.. T. Clarendon Press.). Alg. 1961.. 2nd ed. New York. On the inertia of some classes of partitioned matrices. and Ostrowski. [344] Hartung. Air Force Institute of Technology. Numerical Methods for Scientists and Engineers. Die allgemeine Ans¨atze der Mechanik der Kontinua. Math. [354] Henrici. Encyklopœdia der Mathematische Wissenchaften. (eds. [338] Hamming. Appl. G.. J. Boulder. Oxford. #BMN20.. 2001. R. R... [347] Haugen. Leipzig.. Bergan. Dept... D. Applications to shells and mechanisms. 1977. Oxford.. Lin. New York. P. 3. 1973. Numerical Solution of Nonlinear Structural Problems.. 1994. P. 1. 1962. 3rd ed.. Vol II. 6. Teubner. New York. Computer J. New York.). in preparation. B. 255–259. SIAM Review. 1914. 577–604. 1. 1979. CO. [336] Hammer. L. Air Force Institute of Technology. P. P. W. Providence. E. On deriving the inverse of a sum of matrices. R–20 . 1896–1900. A bending analysis for plates. [343] Harris. A. 53–60.. 1989. 1963. [346] Haugen. S. 20. 1981.. On the Schur complement. 265–302.). [339] Hammond. B. 1982. 1958. and Syversten. 1991 (reprint of 1949 Oxford edition). A. 83–96. London. of Aerospace Engineering Sciences. Oxford. Tables Aids Comput. 1986. [350] Haynsworth. V.. Dover. K. R. Energy Methods in Electromagnetics. E... Appl. Vol 44 . R. Pergamon Press. H. Cambridge University Press. ASME. G. [340] Hanssen. Wiley. 1981. Determination of the inertia of a partitioned Hermitian matrix.. New York. E. 272–280. J. Sewell (eds. R. H. P. Ph. F. Dover. D. 1998. [348] Havner. 73–81. 1968.. J.. [358] Herrmann. 23. Basel Mathematical Notes. Alg... Wiley. Group Theory and Its Application to Physical Problems. Mechanics of Solids — The Rodney Hill 60th Anniversary Volume. V. [355] Henrici. Buckling and stability problems for thin shell structures using high-performance finite elements.. Whiteman (ed. B.. R.Appendix R: REFERENCES (IN PROGRESS) [335] Hammermesh. and Felippa. [352] Hellinger. 1965. Applied and Computational Complex Analysis. [349] Haynsworth. J. Dissertation. M. [342] Hardy. in: J. C. AIAA J.. C. C. 2006. Divergent Series. Digital Filters. 1968. 1968. University of Colorado.. Elsevier. . Dr. 1956. [368] Holand. [360] Hestenes. 303–320. Finite Element Methods in Stress Analysis. M.. Mech. Dover reprint 1975. H.. Aspects of invariance in solid mechanics.1977 Horrigmoe. 6. C. Beams on Elastic Foundation: Theory with Applications in the Fields of Civil and Mechanical Engineering. R. 1941. The Theory of Matrices in Numerical Analysis. 1978. 1984. A. A169– A175. I. of Structural Mechanics. Dynamics. R. Springer-Verlag. Corrected reprint edition 1990. Comp. 1986.. A finite element formulation for problems of large strain and large displacement. Norway. [369] Holmes. and Johnson. Philadelphia. Solution of problems in elasticity by the framework method. [375] Hrabok. [362] Hibbitt. Engrg. English translation: The Principles of Mechanics Presented in a New Form. M. NTH. Unified approach to quadratically convergent algorithms for function minimization.2 REFERENCE DATABASE [359] Hertz. [364] Hildebrand. Gordon and Breach Science Publishers Inc. R. Struc. and Bergan. Appl. On constitutive equations for simple materials. J.. V. H. Multiplier and gradient methods. [379] Huang. 18. R. Phys. 2004. C. Trondheim. [365] Hill. and Nachbar. [378] Huang. M. 5. R. 1970.§R. 73–92.. R. Mech. [363] Higham. Mech. 15. Advances in Applied Mechanics. Press. New York. Solids... 16. Meth. New York. 1969. Yih (ed. J. T. P. of Michigan Press. H. Leipzig.). W. Matrix Analysis. 11–35. 35. 289–296. E. F.. S. 1970. Theory Appl.. 1984. Rock T.. D. [367] Hinton. 22. Finite element instability analysis of free-form shells... M. Solids Struc. M.. 1991. 1967. A. N. 1994. 1984. 1987. J. [377] Hu. 1st ed. New York.. Barth. Div. 405–423. D. Appl. [373] Horrigmoe. 19. Computers & Structures.. Press. McGraw-Hill. [380] Huang. Phoenix Edition. Ing. Cambridge Univ. [374] Householder. 1–75. E. and Hrudey. Engrg. 1978. Introduction to Numerical Analysis.NTH. 1946. Opt. Thesis. 8th printing. Reprinted by Kessinger. Theory Appl. N... G.). 4. 2009. 4. J. 1977. 2nd ed.. A note on mass lumping and related processes in the finite element method. 1991. Numer. Dynamic snap-through of imperfect viscoelastic shallow arches. Opt. Int. J.. Y. 1969. P. 1976. Dover. R–21 .. Blaisdell. 2008. and Johnson. H.. Functions of Matrices: Theory and Computation.. [372] Horrigmoe. 8. Corrected reprint edition 1994. Instability analysis of free-form shells by flat finite elements. 1069–1086. A new nine node degenerated shell element with enhanced membrane and shear interpolation. Dover. Die Prinzipien der Mechanik in neuem Zusammenhangen dargestellt. Introduction to Perturbation Methods. and Hinton. J. G. New York. S. Int. [376] Hrenikoff. J. Marcal. Univ. A. R. Trondheim.Thesis. Stiffness matrices for plate bending. C. SIAM. J. C.. available online as Google eBook.. A review and catalogue of plate bending finite elements. Meths. and Zienkiewicz. 479–498.. C.. 1964. [361] Hetenyi. 1968. Mech. J. [370] Horn. 229–242.. 1974. Variational Principles of Theory of Elasticity with Applications. B. G. [366] Hill. Holand and K. R. M. H. Topics in Matrix Analysis. and Rice. 1968.. Appl. Tapir.. 245–249. in: C.. A. [371] Horn. Bell (eds. Earthquake Engrg. Cambridge Univ. O. in: I.. [393] Hussein. Finite rotation effects in numerical integration of rate constitutive equations arising in large deformation analysis. J. Engineering application of numerical integration in stiffness methods. Ann. 1987. R. bf 15. B.-K. 72–82.. N. 10. 2035– 2037. and Malkus.. Mech.. Mech. Int. S. Composite Panels and Plates: Analysis and Design... K. Selected Papers on Mathematical Trends in Control Theory. Atluri. The Particle Finite Element Method: A powerful tool to solve incompressible flows with free surfaces and breaking waves. 2004. AIAA J.Appendix R: REFERENCES (IN PROGRESS) [381] Hughes.. Int. Wiley. J. H. 1986 I [394] Idelsohn.. Hybrids and Mixed Finite Element Methods. Co. R. Comp. 61. R. R. 445–450. T.-K. Del Pin. and Draper. [386] Hughes.. Vibrations of structural systems by component mode synthesis. 1960. J.. R.. F. 403. Comp. 1981. 1980. 27. Melosh. 1413–148.. Meth. Mixed finite element methods – reduced and selective integration techniques: a unification of concepts. 1977. ¨ [392] Hurwitz. Rossi. 15. and Del Pin. Two-dimensional shells.. J.. Numer. R. Meth. 15.. 1980. A simple and efficient finite element for plate bending.. English translation: On the conditions under which an equation has only roots with negative real part. [382] Hughes. [385] Hughes. [384] Hughes. Prentice Hall. Lancaster. 63–81. AIAA J. Meth. Meth.). R. Appl. and Liu. A general penalty mixed equivalence theorem for anisotropic. Numer. and Barlow. 331–362. Meths. R. 1978. 9.. Kalaba (eds. R. in: S.... [396] Irons.. 678–685. 1964. M.. 964–989. and Malkus. Int. T. D.. 11. 273–284. F. unter welchen eine Gleichung nur Wurzeln mit negativen reellen Theilen besitz. The Heterosis finite element for plate bending. S. W. 46. Numer. Taylor. 51–69. J. Meths. C... 1980.. Math. E. Numer. T. Three-dimensional shells. [391] Hurty. [395] Idelsohn.. 1529–1543. Generalization of selective integration procedures to anisotropic and nonlinear media. and Liu. B. W. J. 965–966. 26. C.. J. R–22 . M. 3. AIAA J. Engrg. J. Zienkiewicz (eds. 1983. [388] Hughes.. R. Engrg.. Mech. 86. Engrg. R. T. in: R. Nonlinear finite element analysis of shells: Part II. O˜nate. D.. Comp. R. The Finite Element Method: Linear Static and Dynamic Finite Element Analysis. T. S. W. Dynamic analysis of structural systems using component modes. Meths. 1965.. S. 1895. J. ASCE J. Numer. 1965. J. PA. Technomic Pub. 4.. and Cohen. and O˜nate.). [397] Irons. 2000. AIAA J.. J. Gallagher and O. Dover. 2009. Mech. Comments on ‘matrices for the direct stiffness method’ by R. Engrg. R. 1981... T. Engrg. J. W. Int.. 1862–1867. Engrg. [383] Hughes.. and Kanolkulchai. T. J. Uber die Bedingungen. T. incompressible finite elements. E. A. Englewood Cliffs. 1964. Computers & Structures. Inadequacy of nodal connections in a stiffness solution for plate bending. Int. J. Bellman and R. T. Meth. C. London. M.. J. 167–182.. Engrg. 1966. M. and Winget. J. [387] Hughes. J. Appl. Nonlinear finite element analysis of shells: Part I. [398] Irons. [390] Hurty. 3. R. NJ. Engrg. [389] Hughes. 2. W.. Engrg. Dover reprint. 1261–1294. Fluid-structure interaction problems with strong added-mass effect. Appl. R. B. 148–150.. Eur. B. 983–998.. M.).. and Krylov. Engrg.. Engrg. [414] Keller.. B. Groningen. Amsterdam... An engineer’s defense of the patch test.). 557–587.. Techniques of Finite Elements. SIAM. I. New York. Int. Meth. S.. Contact problems in elastostatics. Meth. 1981. Nonlinear bifurcation. Philadelphia. 1992. Putative high-performance plate bending element. 1958. M. The Mathematical Foundations of the Finite Element Method with Applications to Partial Differential Equations. [418] Kikuchi. Rabinowitz (ed. and Plemmons. Chichester. 1469–1495. [416] Keller. Prentice-Hall.2 REFERENCE DATABASE [399] Irons. M. 19.. P. E. J.. R–23 . and Renard Y. A frontal solution program for finite element analysis. 1970. Numer. 1972.. [403] Irons. [406] Jones. de Boor and G. Noordhoff. Geometrically isolated nonisolated solutions and their approximation. B. 1972. Aziz (ed. [415] Keller. B. Global homotopies and Newton methods. M. Oden and G.. [410] Kaneko. [419] Kikuchi. T. Wiley.. Minimum norm solutions to linear elastic analysis problems. T. 4. and Thierauf. NJ. Theory and Applications of the Z-Transform Method. J. Int. Engrg. Numer. 18. 918–932. J. 1980. 1974. [404] Irvine. G. H. J.. [417] Khenous.. and Ahmad.§R. SIAM J. M. Numer. J. UK. Recent Advances in Numerical Analysis. Int. J.. Inners and Stability of Dynamic Systems. H.. Academic Press. Engrg. Int. J. B.. and A. Carey (eds. P.. Numerical solution of bifurcation and nonlinear eigenvalue problems. 615–626. New York. H. [412] Kavanagh. Ellis Horwood Ltd. Englewood Cliffs. Transient analysis of structures by stiffly stable methods. in: C. Int. 2nd ed. J.. I. Engrg. Meth. E. I. in: J.. Eqs. 1984. Application of Bifurcation Theory. V. 1391–1401.. V. Meth. M. [413] Keller. B. 4. Golub (eds. Mech. B. S.. B. I. Cable Structures. 1981. 1982. 18. W. Anal. J.-A/Solids. H. 12. 1983. Razzaque. Contact Problems in Elasticity: A Study of Variational Inequalities and Finite Element Methods. 1960. Numer. B. [402] Irons. 1964. I. Numer. Reprint of 1st ed. Lawo.). 1982. 2008. and Key. 1978. J. [407] Jury. 5–32.. [401] Irons. 7. 1983. Numer. Engrg. A note on selective and reduced integration techniques in the finite element method. [411] Kantorovich. 1984. M. S. Letter to Editor.. K. and Oden. K [409] Kaneko... in A. SIAM Studies in Applied Mathematics.. MIT Press.. 1988. 822–838. H. 20. New York. 1970. N. 19. J [405] Jensen. Numer. Approximate Methods of Higher Analysis.. [408] Jury.. 359–384. [400] Irons. Meth. H. L. Academic Press. H. Finite Elements: Special Problems in Solid Mechanics. R. Diff.. Laborde. Int. and Oden. A. Computers & Structures.. North Holland. Dover.). The Theory of Brillouin Zones and Electronic States in Crystals. 27. Academic Press. Experiences with the patch test for convergence of finite elements. B. 310.. T. K. J. 417–434. H. Meth. Krieger. M. N. 1977. and Loikannen. On computational procedures for the force method. in: P. 2nd ed. M. L. H. 1983. J. Dr. P. S. Reprinted by J. Yamamoto (eds. 51–88. Unconstrained Structure Systems. The Variational Principles of Mechanics. in: P. Finite Element Methods for Nonlinear Problems. Thesis. Encyclopedia of Physics. Seydel. Transient shell analysis by numerical time integration. L. and Seinfield. Uber das Gleichgewicht und die Bewegung einer elastichen Scheibe. Dover.. Paris. Leipzig. 1876. H. [426] Kr˚akeland.. Academic Press. H. Huntsville. K. and Marek. 1973. 1983. 2000. 1970. Mittelman.). G. UAH Press.. H. Springer. Birh¨auser Verlag. C.. 1971. Wiley.. N... Springer-Verlag. B. Stress Waves in Solids. Fl¨ugge (ed. 399–442. Numerical Solution of Ordinary Differential Equations. (First edition 1949). W. 1972.. in J. 1953. Kron. [438] Lancaster. G. Wunderlich (eds. [434] Kuztesov. A.. Meth. Theory of elastic stability. Large displacement analysis of shells considering elastoplastic and elastoviscoplastic materials. NTH. D. 1962. R–24 . Reading. E. and Wilkes. Berlin. (eds. [436] Lambert. Energy Methods in Applied Mechanics. J. Tensorial analysis and equivalent circuits of elastic structures.. [421] Kirchhoff. [431] Kub´ıcˇ ek. D..). Numer. Orlando. The TEXbook. NJ. Englewood Cliffs.. 1973. Algorithms. N. Oxford University Press.Appendix R: REFERENCES (IN PROGRESS) ¨ [420] Kirchhoff.. Engrg. 1977. Zeros of nonlinear functions. W. MA.. [439] Lanczos. J. T. Assoc.. 1944. 129–140. Trondheim.. 8. 1987. [422] Klopfestein. Franklin Inst. M. E. [442] Lautersztajn-S. 1991. L [435] Lagrange. Springer-Verlag. Mach. M. Oden.). Advances in Computational Methods for Structural Mechanics and Design.. [427] Krieg. The Theory of Matrices. and Hlav´acˇ ek... and Rodman. Basel.. J. G. (eds. and Hillmann. [425] Kolsky. L. and Troger. [429] Kr¨oplin. [441] Lapidus.. 238. Press. J.. Mechanik. R. L. Basel. B. [430] Kub´ıcˇ ek. 47. Birh¨auser Verlag. Dinkler. Addison-Wesley. reprinted by Dover. 1986. J. 1985. Comp. and Tismenetsky. Norway. and Samuelsson. Applications. M´echanique Analytique. of Structural Mechanics. Oxford Univ. Int.. Berlin. New York. Springer-Verlag. [423] Knops... downloadable as Google eBook.) Numerical Methods for Bifurcation Problems. 1961. [433] K¨upper. 237–258. 1995.) Bifurcation: Analysis. Bathe and W. [424] Knuth. 4th edition. [437] Lancaster. H. Vorlesungen u¨ ber Mathematischen Physik. New York. J. [440] Langhaar. New York. W. Wiley. Academic Press. R. 1963.. 1984. T. [428] G. in: S. Global constraints in nonlinear solution strategies. Numerical Solution of Nonlinear Boundary Value Problems with Applications. Further discussion on four-node isoparametric elements in plane bending. Prentice-Hall. D. 1788. R. Div.. 1984. D.. New York. and Key. D. 1850. Computational Methods in Ordinary Differential Equations. V. 366–373.. 40. W. Algebraic Riccati Equations. Gabay. Crelles J.. 1989. Paris. Vol VIa/1-4. R. J. E. Computational Methods in Bifurcation Theory and Dissipative Structures. M. J.. P. [432] K¨upper. London.. R. Clough and Y. Ing. H. and Weber. T. Bergan. Alabama. K. Spectral Element Method in Structural Dynamics. M. H.2 REFERENCE DATABASE [443] Lee. NTH.. Elsevier Science Ltd.. F. 1. 2007. 1944. A simple quadrilateral shell element. Int.. Aero. Dover reprint.). J. and Harder. Int. [456] Lowe. Sci. Sci. 20. Anisotropic Plates. R. [462] MacNeal. 581–601. Finite Element Methods for Plate and Shell Structures. 4th ed 1927. J. Computers & Structures.. H. Aero. Design.. 85–127. 1968. Derivation of element stiffness matrices by assumed strain distribution. Dynamic Stiffness and Substructures. Oxford Univ. 1986. Theory of Elasticity of an Anisotropic Elastic Body. R. Pineridge Press. [447] Leung. (eds. [453] Livesley. 389–412. 1985. G. Meth. A proposed standard set of problems to test finite element accuracy. 1982. Numer. Computers & Structures. [455] Love. B. Div. R. 8.. Structural analysis and influence coefficient for delta wings. 14. (ed. NASA SP-221. 547–560. L. 1964. H.. R. 3–20. Meth. [461] MacNeal. A hybrid method of component mode synthesis. 70.. Anal. Cambridge. Norway. Computers & Structures. Vol. U.. 1995. A. R. H.. 2009. 449–454. Blackie Group. and Irons. J..§R. T. [460] MacNeal. 1987. H. [444] Lesne. Springer-Verlag. Press. Math.. and Piezoelectric Layers. Numer. Ing. 1971. Hughes and E. [465] MacNeal. [450] Levy. S.. 1970. R. R. 2005. J. The NASTRAN computer program for structural analysis. Pergamon Press. Struct. F.. 1. 1998. M. 1947. Solid mechanics and material models including large deformations.. S. [449] Levy. Singapore. 1978. [459] MacNeal. et al. 175–183. Mechanistic Images in Geometric Form: Heinrich Hertz’s Principles of Mechanics. 1793–1799. Matrix Methods of Structural Analysis. J.. E.. E. Vibrations of Elastic Plates : Linear and Nonlinear Dynamical Modeling of Sandwiches. K. A. Thesis. Holden-Day. U. Vibration of Mindlin Plates: Programming the P-Version Ritz Method. [463] MacNeal. London. 1984. New York. Surrey Univ. Nuclear Engrg. Basic Principles of Plate Theory. R. Springer-Verlag. [452] Ling.). Finite Elem. 1953. S. Gordon and Breach. M. 1978.. 1971. M [458] MacNeal. 17. W. [457] L¨utzen. 1993 [448] Levold. A. Sci. R–25 ... R. Theory of Elasticity. Des.. Dr. of Structural Mechanics. Swansea. 20. [446] Letnitskii. [445] Letnitskii.). Russian translation. G. [454] Loikannen.... An 8-node brick finite element. in: T. Wiley. 1990. Reprinted by Dover. [464] MacNeal. 3–12. and McCormick. G... R. J. H. 24. R. 185–223. London. H.. A theorem regarding the locking of tapered four noded membrane elements. The NASTRAN Theoretical Manual. H.. Comp. Y. K. Russian translation. P. Trondheim. Discrete versus continuous controversy in physics.. I: Element Technology. 523–528. (ed. Engrg. Computation of influence coefficients for aircraft structures with discontinuities and sweepback. 1963. H. [451] Liew. Press. C.). S. London. Engrg. J. Hinton (eds. Laminated Composites. The evolution of lower order plate and shell elements in MSC/NASTRAN. 1. Int. (eds.). 97–114. on Matrix Methods in Structural Mechanics. 281–306. Numer... 1965. A... Engrg. in: P.. R. C.. [476] Martin. and Samuelsson. M. Comp. R. McGraw-Hill. S. Bathe and W. Introduction to Matrix Methods of Structural Analysis. E. Int. S. On the corotational finite element formulation for large deformation problems. P. and Strang. Bader et. New York. V.. [480] Mattiasson.. Swansea. Plesha. 1589– 1601. 1st Conf. Numerical Methods in Engineering ’92. On the accuracy and efficiency of numerical algorithms for geometrically nonlinear structural analysis. ST9. D.. E. Y. S. [481] Mattiasson. Mech. C. 1994. A lattice analogy for the solution of plane stress problems. [479] Mattiasson. Wunderlich (eds. [483] McHenry. Div.). [467] MacNeal. 35.. E. The solution of nonlinear finite element equations.. J.. Thesis. 1984. 1992. Introduction to Finite Element Analysis.. and Samuelsson. Reversed stability conditions in transient finite element analysis. 1970. Springer-Verlag. V. Meths. 1990.. 261–282.. Recent Advances in Matrix Methods in Structural Analysis and Design. Mech. Comp. Huntsville.. 1973. A. Gallagher. in: R.. G. Owen (eds. Engrg. [470] Malkus. Comp. in: C. V. M. Meths... Numerical Methods for Nonlinear Problems II. 59—82. [469] Malkus. of Structural Mechanics. Ala. A. Dr. Bengston. and Liu. H. Mech. K. 1986. Zero and negative masses in finite element vibration and transient analysis. Numer. New York. Engrg.. Civ. Hirchs et al. T.. Recent Advances in Matrix Methods in Structural Analysis and Design. R. AFFDL-TR-66-80. and Okstad.. D. 134–151. P. Huntsville. 1992. H. H. M. D.. Div. Large displacement analysis of flexible and rigid systems considering displacementdependent loads and nonlinear constraints.. [474] Martin. [477] Mathisen. Engrg. M. 1979. J. [468] Mallet. On the derivation of stiffness matrices for the analysis of large deflection and stability problems. Finite element analysis with material nonlinearities – theory and practice. 1968. of Structural Mechanics. T. 14. Pineridge Press. 1943. Elsevier Science Publishers B. in: R. 2081–2105. in: C.) Finite Element Methods for Nonlinear Problems. Finite element analysis of nonlinear structures. Sci. 1966. al. Appl. Ala. 697–716. 229–238. Taylor. Oden (eds. K. J. G¨oteborg. Thesis. Marcel Dekker. H. G. Hinton and D. G. Chalmers University of Technology. 1966. J. 94. H. 59. Trondheim.). K. Adaptive strategies for nonlinear finite element analysis of shell structures. (eds.. M. and Tan. Ing. C. J. University of Alabama Press. 21. [475] Martin. 68.). McGraw-Hill. Finite Elements: Their Design and Performance.. NTH. [484] Meek. New York. 1986. H. J. [471] Marcal. L. J. in: R. 47. Meths. K. and Plesha. Mech. Bergan. R. Proc... Total and updated Lagrangian forms of the co-rotational finite element formulation in geometrically and materially nonlinear analysis. Kvamsdal T. K. University of Alabama Press. R–26 . K. and Carey. M. Appl. J. Int..Appendix R: REFERENCES (IN PROGRESS) [466] MacNeal. Engrg. [473] Martin.. Dr. Ing. [478] Mathisen. R. Oden (eds.. H.. [472] Marcal. and Marcal. H. Yamada and J. 1613–1626. 1970. Appl. A stiffness method for elastic-plastic problems. Meth. On the limits of finite element perfectibility. ASCE Struct.. 1983. 1984... Meth. Engrs. 3–23. H. Inst.). V. H. H. P. C. Large deflection and stability analysis by the direct stiffness method.. Norway. [482] Matthies. Air Force Institute of Technology. Yamada and J. Gallagher. Dept. Y. F. 1988. Geometrically nonlinear analysis of space frames by an incremental-iterative technique. K. . in: E.. 1959. Aero. R. S.. PHolden-Day. C. J... 1990. [489] Melosh. 1971.. Pergamon Press. 1970. 2 vols. Anal. Barcelona and Springer-Verlag.. 1964. J. 34–40. 1976. Anal. 1968.. [507] Muir. 1. and Felippa. The Netherlands.. San Francisco. R.. ST4-89. 739–752.. 1991. [497] Militello. and Wheeler. Mech. [502] Moore. [500] Misner. The Finite Element Method in the 1990’s — a book dedicated to O. [495] Mikhlin. Structural analysis of solids. S. C. 201–226. Wright-Patterson ADFB. [505] Morley. on Matrix Methods in Structural Mechanics. [501] M¨obius. and Feshbach. 28.. Meths.. [487] Melhem. 1960. Skew Plates and Structures. G. A. R. 20–24. J. al. J. G. Appl. Variational Methods in Mathematical Physics.. Comp.F. Computing J. 1827. W. J. Dover. [488] Melosh. New York.. [499] Mindlin. 1980. O˜nate. Seattle. Ohio. R. 5. and Spence. [492] Melosh. L. [486] Meirovitch. 1973. Pubs. Strain Analysis. [496] Mikhlin.. Germanny. J. Der Barycentrische Calcul. 1963. H. C. Appl. [506] Morse. 503–509. [503] Moore.. 1st Conf. Berlin. Pergamon Press and Macmillan. 1953. Bases for the derivation of matrices for the direct stiffness method. J. The numerical treatment of non-trivial bifurcation points. Dissertation. Zienkiewicz. AFFDL-TR-66-80. [491] Melosh. C. Influence of rotary inertia and shear on flexural vibrations of isotropic. [490] Melosh. SIAM J. 25. G. Germany. and Merritt. Sci.2 REFERENCE DATABASE [485] Meirovitch. [504] Morley. Georg Olms. R. 567–576. A. San Francisco. C. The calculation of turning points of nonlinear equations.. A.. Evaluation of spar matrices for stiffness analysis. . Thorne. C. Sci. W. in R. The individual element patch revisited. Kluwer Acad. 2.. 217–246.. 537—543. L. 1963. McGraw-Hill. Bader et. University of Washington.). Hildesheim.. A flat triangular shell element stiffness matrix.. 1963. New York. On solving nonlinear equations with a one-parameter operator embedding. The Problem of the Minimum of a Quadratic Functional. D. Dayton.). New York. Development of the stiffness method to define bounds on the elastic behavior of structures. A comparison of methods for determining turning points of nonlinear equations. 1965. J. Anal. 29. A. 18.§R. (eds. 31–38. Div. Methods of Analytical Dynamics. (Sir). Methods of Theoretical Physics. Gravitation.D. 1962. Periaux and A. J.. G. S. S. and Rheinboldt. 205–223. A stiffness matrix for the analysis of thin plates in bending. 1951. 17.. C. D. Engrg. G. The constant-moment plate bending element. W. A.. Samuelsson (eds.. McGraw-Hill. R. J. 554–564. 441–472. L. and Felippa. 1982. H. C. Computational Methods in Structural Dynamics. 1961. L. M. R–27 . Opt. J. 6. ASCE Struct. 1631–1637.. 1980. R. [494] Meyer. Theory of Determinants. Mech. 93. elastic plates. Freeman. Original edition: Leipzig. D. T. K. Numer. [498] Militello. J. Aero. Ph. P. G.. R. SIAM J.. Numer. Numer.. Proc. The first ANDES elements: 9-DOF plate bending triangles. CIMNE.. G. Funct. R. 1966. AIAA J. Dordrecht... 1980. [493] Melosh. J.. A.. . London. J.. The Free Formulation for nonlinear finite elements with applications to shells. 93. New York. Cambridge. Berlin. B. and Wilson.. 1726. 3rd. Meth. Meths. H. M. State-of the Art Surveys on Computational Mechanics. J. Int. Comp. 1989.). Mech. N [510] Nadukandi. J. 1969. and Wriggers. K. 1712. J. Motte). Appl. Berlin. Trondheim.. Thesis. [521] Oden. 95. Dr. T. ASME. Comp. [516] Nour-Omid. The Texas Institute for Computational Mechanics (TICOM). C. Advances in treating large rotations for nonlinear problems. Thesis. T. L. [511] Nayfeh. 13. G. University of Texas. 7. [522] Oden. K. Finite element large-deflection analysis of plates. 93. Engrg. Variational Methods in Theoretical Mechanics. [517] Novozhilov. I. Wiley.Appendix R: REFERENCES (IN PROGRESS) [508] Murray. A. 455–462... Graylock Press. T.ed. Reduced basis technique for nonlinear analysis of structures. Engrg. et. Wunderlich. [518] Nyg˚ard. N. 1982. and Rankin.. [525] Oden..ed. [514] Noor. C. 52. Division of Structural Mechanics. (prepared by Newton.. K. Austin. Recent advances in reduction methods for nonlinear problems. 143–165. McGraw-Hill. E. New York. [524] Oden. M. 1st. T. and Key. 1915–1920. Philosophiae Naturalis Principia Mathematica. J.. Exterior penalty methods for contact problems in elasticity. Finite rotation analysis and consistent linearization using projectors. AIAA J. Mech... 1969. J.. 235–255.. final ed. Chapter 10. J. Div. Computers & Structures. 7. A.). Foundations of the Nonlinear Theory of Elasticity. (Mathematical Principles of Natural Philosophy. T. J..... Rochester. 353–384. 225–240. in English translation by A. Universidad Polit´ecnica de Catalunya. 1986. W. 1973. 31–44. T. AIAA J. B. 1974. 2nd. Nonlinear Finite Element Analysis in Structural Mechanics. [515] Nour-Omid. J. Meths. Engrg. Analysis of static nonlinear response by explicit time integration. ASCE Struct. EM5. K. D.. 1480–1482. 1966. W. 1986.. Peters. R–28 . also known as the Principia). [509] Murray. Springer. London. and Wilson. Oden (eds. in: W.. 1972. Computational Methods in Nonlinear Mechanics. [513] Noor. in: A. 1729. Texas. 4. W. 1980. Solution methods for contact problems. Numer. 18. 2011. E.. [519] Nyg˚ard.. al. Ing. Numerical formulation of nonlinear elasticity problems. Stein and K. and Reddy. J. 305–332. Finite Elements of Nonlinear Continua. L. J. Helmholtz and Navier-Stokes problems. London.. V.. V. 1983. Springer-Verlag. (eds.. 1973. T.). 1953. S. Div. ASCE Mech. Calculation of geometric stiffness matrices for thin Shells of arbitrary shape. J. [512] Newton. P.. D. M. P. Appl. Perturbation Methods. 1991. T. A. 1981. [526] Oden. 1967. E. AIAA J. P. [523] Oden. and Bergan. New York. Bathe. 1687. Finite element analysis of nonlinear structures. Norway. and J. O [520] Oden. NTH.. Stabilized finite element methods for convection-diffusion-reaction. K.ed. (eds. Noor and J. E... O. [539] Ostrowski. Int. Lin. Taylor. L. Numer. 1981. M. R. Appl. A. and Tovichakchaikul. R. Computers & Structures. 63 1436–1445. Stability and Oscillations of Physical Systems: Paradoxes. and Hauke. and Felippa. Engrg. 14. R. O˜nate. E. 1997. 75-110. [538] Otter. 255–281. Rojek.. J. E. K. [532] O˜nate. S. R. [530] O˜nate.. Unosson.. 151. J. Numer. Taylor. and C. R–29 . C. Comp. 1973.. 2010. Engrg. A.. Nuclear Struct. K. 1989.. E. Comput. A stabilized finite element method for the one-dimensional advection diffusion-absorption equation using finite calculus. Zienkiewicz and J... 629–638. Akron. Computations for prestressed concrete reactor pressure vessels using dynamic relaxation... Trans. 156. W. E. Co-rotational flat facet triangular elements for shell instability analysis. 15. Fallacies and New Concepts. K. Idelsohn. Simple and accurate pressure Laplacian stabilization for incompressible continua via higher order Finite Calculus. Numer. Idelsohn.§R. 106–134. J. [546] Papadrakakis. Engrg. Appl. The University of Akron. J.. A.. 4. S. J. Appl. Boundary Value Problems of Heat Conduction. Consultants Bureau. G. 20. Int.. Engrg. Nadukandi. 1981. J. Ohio. 2003. J. 2004. A residual correction method based on finite calculus. Simonsson. Iterative Solution of Nonlinear Equations in Several Variables. Mech. J.. Derivation of the stabilization equations for advective-diffusive fluid transport and fluid flow problems. 1. C. 365–377. Combin. Self-adaptive predictor-corrector algorithm for static nonlinear structural analysis. J. Int. [544] Padovan... Comput. Selective mass scaling for explicit finite element analysis... [529] Olovsson. [541] Ozi¸ P [542] Pacoste. Meth. Theory Series A. On Schur’s complement. ¨ sik. Mech. 1473–1500. L. 1998. A family of residual-based stabilized finite element methods for Stokes flow. Meths. Finite calculus formulation for incompressible solids using linear triangles and tetrahedra. Comp. Meths. N. 1970. I. J. M.. M. Meth.. 34 134–136.. [535] E. [534] O˜nate.. Rojek. Selective mass scaling for thin wall structures modeled with trilinear solid elements. Mech. Engrg. Q.. [536] O˜nate. and Gubanova. New York. E. 61-75. Academic Press. 2004. 119(3). 2011. Numer.. 341–345. [545] Panovko.. Report NASA CR-165410 to Lewis Research Center. 195. Engrg.. [531] O˜nate. Engrg. I. New York.. Dover edition. M. 389–392.. 59.. P.. [537] Ortega. ASME J. [543] Padovan. Felippa. 2005. 3926–3946. 2006. 1971. Miquel. Comp.. J. Appl. of Vibration and Acoustics. 393–402. L. M... H. 1965. Self-Adaptive predictor-corrector algorithm for static nonlinear structural analysis. Meth.. 12. 1965. M. Numer.2 REFERENCE DATABASE [527] Okuma. and Rheinboldt.. 319–323.. Meth. 1982. Post-buckling analysis of spatial structures by vector iteration methods. [540] Ostrowski. C. 65. L. Engrg. C. Meths. and Zienkiewicz. 60. Possibilities of finite calculus in computational mechanics. S. A. [528] Olovsson. and Simonsson. Y. C. O. Engrg. 233–267. and Unosson.. [533] O˜nate. 1998. 2004... Identification of the principal rigid body modes under free-free boundary condition. Mech. Computers & Structures. and Shi.. Meth. A new proof of Haysnworth’s quotient formula for Schur complements. Alg. Int. Engrg... J. submitted to Int. R. 1991. and Felippa. AMD Vol. G. 1980. C. 47. Belytschko and T. Meths. J. S. C. A. in: T. B. Computational aspects of time integration procedures in structural dynamics – II. Mech. L. 14. New York.. 22. 40. K. Mech. 1984.. C. Publications. A. Comput. 277–313. Partitioned transient analysis procedures for coupled-field problems: stability analysis. M.. pp. 1984. Liu. A family of solution algorithms for nonlinear structural analysis based on the relaxation equations. 242–249. Engrg. University of Washington. C. UK.. and Felippa. 603–611.. 37–46. Engrg. 157–219. Hinton (eds.. C. Ch. [553] Park. 476–490. Chapter 3.. P. 1337-1347. Int. [562] Park. in: T. and Felippa. D. J. A curved C 0 shell element based on assumed natural-coordinate strains. Numer.. [554] Park. 53. Lateral plate deflection by stiffness methods and application to a marquee. J. 241–258.). 2000. K. Mech. Mech. Recent advances in partitioned analysis procedures. WA. Appl. Guidance. Comp.. Time integration of structural dynamics: a survey. J..... K. C. A. C. Department of Civil Engineering. Numerical Methods in Coupled Problems.. An operational procedure for the symbolic analysis of the finite element method. Appl. Appl. Meth. [563] Park. K.. C. 1982. 46. C.. Belytschko and K. Geers (eds. K. 327–352. C. Reprinted by SIAM [549] Park. K. and Underwood. W. 42. Mech.. [557] Park. The Symmetric Eigenvalue Problem. [561] Park.. Stabilization of staggered solution procedures for fluid-structure interaction analysis. K. Mech. L. Comp. K. in: W. A. K. R–30 . 95–124. 1978. Mech. Appl. Wiley. Justino. [565] Park. Engrg. C. M... K. ASME. 1959. A partitioned solution procedure for control-structure interaction simulations. Comp. Thesis. 370–376. 1980. W. C. Symbolic Fourier analysis procedures for C 0 finite elements. C.. Error Propagation.).. Meths. Engrg. P. Computational Methods for Transient Analysis. Mech.. Appl.. Appl. C.). A. Engrg. [550] Park. 17/18. K. Comp. K.. C. and Flaggs... 1986. and Belvin. Chichester. J. [555] Park. and Felippa. Felippa. C. Amsterdam. K. ASME. K. [559] Park. K. American Society of Mechanical Engineers. 1979. S. Prentice-Hall. C.. A. D. U. R. Engrg. T. R.. Direct time integration methods in nonlinear structural dynamics. C. J. 1983. A. and Felippa. Park (eds. C. Mech. 1982.. and Felippa. 4. J. pp. 278–290. C. and Felippa. [551] Park. Lewis. [556] Park. C. K. Control and Dynamics. A variational framework for solution method developments in structural mechanics. 2717–2737. A variable step central difference method for structural dynamics analysis: theoretical aspects. 1977. Int. C. A. 65. Numer. G. 1998. Belytschko and T. Hughes (eds. Bettess and E. and DeRuntz. Computational Methods for Fluid-Structure Interaction Problems. 269–293.. N. C. North-Holland.). K. [558] Park. Jr. C. J. [560] Park. L. 26. M. 65–81. K.. Gumaste. J. Meths. [552] Park.. Swansea. A Fourier analysis of spurious modes and element locking in the finite element method. Meths. [564] Park. New York. 1997. An algebraically partitioned FETI method for parallel structural analysis: algorithm description. 59–67. 1998. [548] Parlett. in: R. Innovative Methods for Nonlinear Problems. C. 45. Partitioned analysis of coupled systems.2 in Pressure Vessels and Piping Design Technology – A Decade of Progress. Chapter 11.. Appl. and Stanley.. A localized version of the method of Lagrange multipliers and its applications. 24. Meth. Appl. A.Appendix R: REFERENCES (IN PROGRESS) [547] Papenfuss. 1980. Seattle.. Pineridge Press. 18. C. 1984. 1984. and Flaggs. K. 1971. Appl. Air Force Institute of Technology. 190. Relations between incompatible displacement model and hybrid stress model. Int. W. and Ohayon. 2009. IOS Press. 2000. Numer.. J.2 REFERENCE DATABASE [566] Park. [582] Pian. [579] Peters. Hierarchics of conforming elements for elasticity and plate bending. 1955. F. J. The principal D’Alembert-Lagrange equations and applications to flexible floating systems. [576] Peaceman. A x = λ B x and the generalized eigenproblem. A Treatise in Analytical Dynamics. Dayton. 1.. K. Meths. H. K. C. K. 2001. Meth. 253–274. 419–425. Heinemann. T. Mech. Partitioned formulation of internal fluid-structure interaction problems via localized Lagrange multipliers. T. An integrated force method for discrete analysis. Partitioned formulation of internal fluid-structure interaction problems via localized Lagrange multipliers. F.. J. Element stiffness matrices for boundary compatibility and for prescribed boundary stresses. L. 2000. and Rachford Jr. 1072–1099. Engrg.. and Leckie.. [573] Patnaik. Numer.. (eds. H. H... H. Comput. Comp.. SIAM J. C. Rational approach for assumed stress finite elements. R. 20. Kleiber. and Felippa. 1984.. Felippa. N. Meth. 3–4. Int. [571] Park.. H. 22. Anal.. P. K. Meth. Mech. [585] Pian. in: J. W. S. T. 2002. S. Derivation of element stiffness matrices by assumed stress distributions. 1966. and Ohayon.. J. Felippa. J. NATO Science Series. C. A. 3. 173-181. N.. McGraw-Hill. Ohio. and Felippa. H. 457–478. Int.. A. H.. 1965. J. 545–586. Computational Aspects of Nonlinear Systems with Large Rigid Body Motion. Int. SIAM J. Meth. 190(24-25).. R. [569] Park. The variational energy formulation for the integrated force method. J. Engrg. Numer. C.). 395-418. 47. H. H. A variational principle for the formulation of partitioned structural systems. Engrg. 2989-3007. 1685–1695. C. K.. 6. 1986. H. Improved numerical integration of thick shell finite elements. Localized formulation of multibody systems. Math. 2. H. D.. J. H. Engrg. in: R. [580] Pian. Felippa.. [574] Patnaik. 1973. H. [578] Pestel. A. E. H. Numer. Numer. AIAA J.. 1333–1336. and Tong.. and Ohayon. T. C. [581] Pian. AFFDL-TR-66-80. R. Comp. 7. [568] Park. 2. Meth.. Proc. AIAA J.. 3. 2989–3007. Engrg. Int. C. C. Int. The numerical solution of parabolic and elliptic differential equations. Matrix Methods in Elastomechanics. C. S. Engrg. 2001. London. Numer. [570] Park. Engrg. New York. Some notes on the early history of hybrid stress finite element method. Numer. 1986. K. 77. R–31 . Meth. C.. Meths. Engrg. [572] Pars. 1964. 479–492. H. al... T. 47. K. C. Numer.. G. 237–251. and Clough.. and Ohayon.. on Matrix Methods in Structural Mechanics. 47. and Tong. Appl. 1st Conf. A. [577] Peano. Felippa. 1963. Ambrosio and M.. P. 1969. A variational principle for the formulation of partitioned structural systems. Int. A. Engrg.. R. 129–136... Appl. A. Int. and Sumihara. A.. Engrg. T. and Wilkinson. J. A. R. Meth. Bader et.. [567] Park.. Numer. 3–29. C. Meth.. 1970. Engrg. J. C. 2001.. 24.. [583] Pian.. Basis of finite element methods for solid continua. Int. Meth. [584] Pian.. [575] Pawsey. 28–41. Numer. 395–418. 1976. A..§R. Appendix R: REFERENCES (IN PROGRESS) [586] Pietraszkiewicz. Computing J.). Bader et. F. Computing simple bifurcation points using a minimally extended system of nonlinear equations. New York. NJ. CRC Press. Engineering Mechanics of Solids. Engrg... 2001. [595] Popov. W. M. Computing J.. Wright-Patterson AFB. 35. [587] Pietraszkiewicz..Quart. A study of quadrilateral plate bending elements with reduced integration. Lecture Notes in Engineering 19. Engrg.. H.. Design of efficient partitioned procedures for the transient solution of aeroelastic problems. D.. Prentice Hall.. Improved iteration strategy for nonlinear structures. Meth. 445–471. Dover edition 1986... and Atluri. Approximations in elasticity based on the concept of function space. W. Numerical Recipes: The Art of Scientific Computing. W. Meth. Niordson (eds. Partitioned procedures for the transient solution of coupled aeroelastic problems: an energy transfer analysis and three-dimensional applications. Meth. Int. 3147–3170. J. P. D. Proceedings 1st Conference on Matrix Methods in Structural Mechanics. Appl. 1966. Analysis and Design of Elastic Beams. [593] P¨onish. 1991. The application of the matrix displacement method in plane elasto-plastic problems. New York. and Wunderlich. Hanover. FL.. [605] Punch. 1968.. Hult and F. 2000. E. 1967.und MinimalPrinzipe der Statik der Baukonstruktionen... G. Academic Press. S. Meths. Fletcher (ed. and Farhat.. Finite rotations in shells. Berlin. E. 1059–1078. J. G. (eds.. London. Applications of isoparametric three-dimensional hybrid stress elements with least-order fields. S. 1992. 283–298. 1978. Finite Rotations in Structural Mechanics. Numer. Der Variations. A method for nonlinear constraints in optimization problems. 1981. Mechanics of Structures: Variational and Computational Methods.). Variational principles for linear elastostatics for discontinous displacements. [591] Piperno.. and Zienkiewicz. 1980. Wiley... 17. Amsterdam. Hinton. 635–654. in: B. 1985. G. 2nd ed. Broger. 12. [592] P¨onish. E. S. in: R. Engrg. 1981. (ed. Air Force Institute of Technology. L. Habilitationsschrift.).... Mech. D. [596] Poston. Cambridge Univ. [597] Powell. [600] Prager. J. W. H. Dayton.) Recent Progress in Applied Mechanics. G. 190. C. G. J. Ohio. Computing turning points using curves implicitly defined by nonlinear equations depending on a parameter. 9. 655–680. J. 1993 [589] Pilkey.. 26. C. Springer-Verlag. Int. 1984. 1985. [599] Prager. T. W. Press. O.. [602] Press. J. 1455–1467. J. 3rd IUTAM Symp on Shell Theory. J. R–32 . Englewood Cliffs. Revue Europ´eenne El´ements Finis. 1916. Optimization. 277–294. London. Stockholm... and Synge.. D. et al. [590] Piperno. Comp.. and Simons. and Steward. Almqusit and Wiksell. [603] Przemieniecki... Theory of Matrix Structural Analysis. Catastrophe Theory and its Applications. and Schwetlik. in: by R. Appl. [604] Pugh. C. 2nd ed. al. E. W. [598] Powell. Univ. Tsibili 1978. North Holland. 406–430. Tech. 5. [601] Prange.. I. strains and stresses. Numer. W. Boca Raton. Computers & Structures. W. McGraw-Hill. and Farhat. 1978. 1969. 241–269. G. 19. [594] Pope.. 2002. Pitman. AFFDL-TR-66-80. S. 1947. in: Theory of Shells. [588] Pilkey. 463–474. N. Proc. The Folke-Odgvist Volume. 107–121. .§R. Brogan. A plate/shell element for large deflections and rotations. CA. and Rabinowicz. New York. Modeling and Simulation Based Engineering. C. J. and Nour-Omid B.. 1998. Comp. Hinton et.. A. in: Proc. STAGS User Manual. [616] Rand. C. C.0. isoparametric curvilinear 2. invariant. Strategies for tracing the nonlinear response near limit points. Cabiness. 257–267.. Materials and Structures Report P032594. (eds. Nonlinear Functional Analysis and Applications. Dover. U. [618] Rankin. [623] Rankin. [611] Rall. [614] Ramm. C. NASA Contractor Report 278428. C. F. Numerical Methods for Nonlinear Algebraic Equations.. 47. Consistent linearization of the element-independent corotational formulation for the structural analysis of general shells.).. Pressure Vessel Technology. Mass. New York. A. [620] Rankin.. H. Berlin. A.. N. R–33 . 1984. On the choice of best possible corotational element frame.2 REFERENCE DATABASE [606] Punch. C. and Brogan. 63–86. Sci. E. MIT-Cambridge. [608] Raimes. E. E. 1976. Europe-US Workshop on Nonlinear Finite Element Analysis in Structural Mechanics.. Str. B. Recent Advances in Nonlinear Computational Mechanics. 1981.. Div. Version 3. N. Springer-Verlag. C. Lab. 165–174. E.). Brogan.. The use of projectors to improve finite element performance. L. C. 61–63. Wiley. 264–293. New York. The Wave Mechanics of Electrons in Metals. A.. F. F. 1951. STAGS User Manual. CA. O’Donoghue (eds. [615] Ramm. Mech.. 1988. Gordon and Breach. C. in: E.. Incremental finite element matrices. 331–356. Atluri and P. E. J. NASA Contractor Report 278428. 1998. 1967. and Murray.. [610] Rall. al. and Cabiness.. Proc.. US-Germany Symposium on Formulations and Algorithms in Finite Element Analysis. Lockheed Palo Alto Research Laboratory. Lockheed Mechanics.. Loden and H. 1969. Computational Solution of Nonlinear Operator Equations. The Riks/Wempner approach – an extension of the displacement control method in nonlinear analysis. Version 3.0. An element-independent corotational procedure for the treatment of large rotations. T. Bochum 80. C. Appl. Development and testing of stable. 99. D. P. P. W. C. in: ed by S. Academic Press.. January 1998. 1982. Pineridge Press. L. [617] Rankin. S. [621] Rankin... S. Consistent linearization of the element-independent corotational formulation for the structural analysis of general shells. 18. A. B. 1973. 2nd ed. [613] Ramm... Tech Science Press.and 3D hybrid stress elements. W. S. [609] Rajasekaran.. Aero. [622] Rankin. F. 1988. (ed. A First Course in Numerical Analysis. Q R [607] Rabinowitz. North-Holland. Palo Alto. H. C. C. Amsterdam. ASCE. C. LMMS P032594. 2423– 2438. ASME J. Swansea. and Atluri. CA. 108. An approximate method for computation of stresses in sweptback wings. 1971. W. 1986. Palmdale. Lockheed Palo Alto Res. A. [612] Ralston. New York.K. Computers & Structures. Engrg. Meths.). 2001. Loden. [619] Rankin.. 1970. 1988.. 30. The application of Newton’s method to the problem of elastic stability. 1983. 1982. Computers & Structures. 6.. K. W.. Wiley. 1971. H. Three dimensional analysis of elastic solid: II. U. Appl. E. A... Solids Struc. Int... in: J. E.) Innovative Methods for Nonlinear Problems. A locally parametrized continuation process. 1987. Three dimensional analysis of elastic solids: I. Orlando. J. and Burkardt. and Morton. 2nd ed. W. J. 15.. Wiley. S. 234. 1971... 29. [629] Reddy. E. 2010. 215–235. Appl. K. Generalized Inverse of Matrices and its Applications. 1984. [631] Reissner. 1984. C.. E. W. J. FL. Y. [641] Riks. 12. K. [632] Reissner. 1950.. Y. January 1985.. Large Sparse Sets of Linear Equations.. J. 55–68. 5. N. [625] Rashid. 6. [646] Robinson. [627] Razzaque. 69–77. L. Liu.. 1997. in: W.. On a variational theorem in elasticity. J. Reid (ed. Math.. Academic Press. Boca Raton. ACM Trans. [628] Reddy. J. held at 26th SDM Conference. Numer. Meths. [626] Rashid. R. also reprinted in: K. [644] Riks. 1972. [645] Riks.. Mech. W. J. An incremental approach to the solution of snapping and buckling problems. Solids Struc. Int. J. 906–923. 195–207. K. Solids Struc..). New York. Mech. 1979. [637] Rheinboldt. Engrg. [636] Rheinboldt. Numerical methods for a class of finite-dimensional bifurcation problems. Appl. Progress in collapse analysis.. Florida. [630] Reid. SIAM J. [640] Richtmyer. [643] Riks. Wiley. J. 1969. CRC Press. Mechanics of Laminated Composite Plates. 130–141. J. C. 19 653–669. The computational problem.Appendix R: REFERENCES (IN PROGRESS) [624] Rao. Comp... 1060–1065. SIAM J. [639] Rheinboldt. Anal. Comp. J. Interscience Pubs. New York. and Mitra. Park (eds. 47. Forsberg and H.. Quart. 219–260. The singular dynamic method for constrained second order hyperbolic equations. R. 1981.. London 231–254. 13. 1985. On bending of elastic plates. Program for triangular bending elements with derivative smoothing.. N.. Finite Element News. Numer.K. J. 333–343.). C. Int.. C. 313–344.. Meth. Some computational aspects of the stability analysis of nonlinear structures. 109.. Meth. Meth.. 9. S. [638] Rheinboldt. 329–351. R–34 . Difference Methods for Initial Value Problems. Appl. [634] Renard. E.. Analysis procedure. Numerical analysis of continuation methods for nonlinear structural problems.. [642] Riks... S. C. Pineridge Press. E.. Y. 1947. Swansea. 90–95. [635] Rheinboldt. V. [633] Reissner. J. J. Engrg.. Energy and Variational Methods in Applied Mechanics.. 1973. On the method of conjugate gradients for the solution of large sparse systems of equations. 1945. C. Belytschko and K. Pressure Vessels Tech. Bifurcation and stability: a numerical approach. 1986. W. New York. 1978. Mech. Phys.. J. 33–41. 1967. Software. An evaluation of skew sensitivity of 33 plate bending elements in 19 FEM systems. E.15. 5. T. Math. Numer. The effect of transverse shear deformation on the bending of elastic plates. C. Int. Numerical Analysis of Parametrized Nonlinear Equations. 1–11. W. Finite Element Standards Forum – Vol 2. E. K. Appl. Computation of critical boundaries on equilibrium manifolds. 1311–1331. Fong (eds. 1986.. 1970. 39. Anal. Berlin. Treatment of acoustic fluid-structure interaction by localized Lagrange multipliers and comparison to alternative interface coupling methods. Birk¨auser Verlag. H.. 12.. [657] Ruskeepaa. Adaptive stepsize selection for use with the continuation method... [661] Santilli. 316ff.. 2004. R. Wiley. 1985. Sprague.2 REFERENCE DATABASE [647] Robinson. pp. [649] Roark.D. I. de Math´ematiques Pures et Appliqu´ees. Mech. G. J. 2009. G. and Beckers. 205–232. 986–1005. O. Coupling and Simulation of Acoustic Fluid-Structure Interaction Systems Using Localized Lagrange Multipliers. Schur Methods in Operator Theory and Signal Processing.. Macmillan. 1978. Engrg. K. [654] Ross. and Young.. [653] Ross. New York. Comp.. 1977.. [662] Scales. ¨ [665] Schur. Foundations of Theoretical Mechanics I. [651] Robinson. [656] Rubin. in The Mathematical Aspects of the Finite Element Method. C. 1966. Structural Matrix Analysis for the Engineer. Springer-Verlag. Budynas. M. McGraw-Hill. Los Angeles. Dorset. Philadelphia.. H. 1840. C. 7th ed.. 14. J. C.. NY.. J.. 197. Appl. Springer-Verlag. Autom. H.. 1978. Des lois g´eometriques qui regissent les d´eplacements d’un syst´eme solide dans l’espace.. Preprint 441. second revised edition. Academic Press.. 31–59 and 61-88. Improved component-mode representation for structural dynamic analysis. 1917. J. 2004.). K. E. A. U. and Graphics. 296–306.. C. 2006. 1966.. London. 198.. Operator Theory: Advances and Applications OT18. S. A Treatise on the Stability of a Given State of Motion. and Park. Acoustofluid-structure interaction by localized Lagrange multipliers: formulation. Introduction to Non-Linear Optimization. 2001. Engrg. Basel. Particularly Steady Motion. 1975. P. Park. 1986. Engrg. L.. M. Roark’s Formulas for Stress and Strain. Berlin. LORA – An accurate four-node stress plate bending element. Department of Aerospace Engineering Science. G. J. presented at the Natl. E. Comp. R. Gohberg (ed. S [659] Saad. reprinted by Pranava Books. C. 2008. Meths. Aeron. Math. 677–694. Int.. 3057–3079. M. 380–400. New York. AIAA J. Lecture Notes in Mathematics.. die im Innern des Enheitnetkreises beschr¨arnt sind [I]. Meeting. [663] Schmidt. 1877. Vol. Y. Meth. 1953. Felippa. R–35 . Academic Press. Mathematica Navigator: Mathematics. Delta wing design analysis. 606. Int. A. W. Mech. A. Springer-Verlag. 2008. EarlyFEM Pioneers. W.. M. Boulder. [652] Ross.. University of Colorado.. R. Meths.. A. Appl. 2011. F. [650] Robinson. Mathematica Navigator: Graphics and Methods of Applied Mathematics. in: I.. Robinson and Associates. Thesis.. Soc. R. J. Felippa. Meth.. [658] Ruskeepaa. Engrg. R. M. Reine Angew. J. R. The influence of the choice of connectors in the Finite Element Method. 147. English translation: in On power series which are bounded in the interior of the unit circle. [660] Sander.. 1979 [648] Rodrigues. et de la variation des coordonn´ees provenant de ces d´eplacement consider´ees ind´ependent des causes qui peuvent les produire. Numerical Methods For Large Eigenvalue Problems. Statistics. Numer. New York. Engrg. SIAM. J.. and Sprague. 5. W. Numer. Uber Potienzreihen. 9951006.§R. [655] Routh. [664] Schuerch. and Haggenmacher. Ph. J. Press. 29. A. Engrg. 51–54. B. P. T. 46. P. J. Meth. Vu-Quoc. A. J. Netherlands. 58. Albuquerque. 1999. July 2003. 124. 1990.. Elsevier Sci. Mech. Holthe.. S. J. 53. Paris. T. Pineridge Press. AIAA J. Proc. Swets & Zeitlinger Pubs. P. Part II: Computational aspects. 1971. Cambridge Univ. M. P. [674] Sherman. Mech. B.. A. [671] Shabana. 79–116... 621. On the connexion between stability and the shape of the equilibrium surface. 1961–1986. Pubs. Div.. Appl. Comp. 1986. J. R. Finite deformation postbuckling analysis involving inelasticity and contact constraints. Nonlinear buckling analysis of sandwich arches. J. Soc. C.. Numer. Cambridge. [675] Simo. J. and L. A finite strain beam formulation. Int. 1968.. in: W. Meth. Stat. also: Adjustments of an inverse matrix corresponding to a change in one element of a given matrix.. Liu. Part I: The three-dimensional dynamic problem. Ann. 1987. and Popov. Swansea. New York. Comp. Collapse of thin shell structures: Stress resultant plasticity modeling within a co-rotated ANDES finite element formulation.. [670] Sewell. Proc. Belytschko and K. Appl.. 203–230. M. [680] Simmonds. 39. 1950. 7th US Nat.. Mech.. Combining high-performance thin shell and surface crack finite elements for simulation of combined failure modes. Swansea. 21. 1972. London. and Danielson. A general theory of equilibrium paths through critical points I-II. NM. R–36 . G. C. J. 1973. L. Cambridge Univ. and Popov. E. Appl. C. C. Engrg. Proceedings of NUMETA’90 Conference.. B. From Equilibrium to Chaos — Practical Bifurcation and Stability Analysis. B.. Schweizerhof.Appendix R: REFERENCES (IN PROGRESS) [666] Senge. G. 201–238.. [672] Sharifi. [682] Skallerud. K. O.. 14. Virtual Testing of Mechanical Systems: Theories and Techniques. 1990. A. C. M. 365–388. Press. [678] Simo.. Congress in Computational Mechanics. Meths. Engrg.K. [684] Skeie... Park (eds. 1990. 20. P. Maximum and Minimum Principles. [677] Simo. Adjustment of an inverse matrix corresponding to changes in the elements of a given column or a given row of the original matrix. Stat. R. 1397–1411. 1966. Heereweg. [667] Seydel. Roy. and Haugen. Cambridge.. Int. [669] Sewell. A local hyperelliptic constraint for nonlinear analysis. 1998. Nonlinear shell theory with finite rotation and stress function vectors. and Morrison. J.. A class of mixed assumed strain methods and the method of incompatible modes. [668] Sewell. A finite strain beam formulation.. D. U. E. Mech. and Taylor. and Haugen. A306.. and Rifai. K.. 49. 1949. Appl. [679] Simo. Engrg. [681] Sivertsen. New York. C. Dynamics of Multibody Systems. J. 1986. 715–722. [676] Simo. Math. J. 2001. Doubleday.. C. Wriggers. Numer.. Mech. in Innovative Methods for Nonlinear Problems. [683] Skallerud.. J. J.. I.. Phys. Nonlinear finite element analysis of sandwich shells of revolution. W. Wales.. J. H.. 1985. Elsevier. 1085–1090. 55–70. and Hughes. J. Ann. 1595–1638. Solids. [673] Sharifi. J. Meths. Engrg. P. J. 1984. J. M. J. ASCE 97.). .. On the variational foundations of assumed strain methods.. R. 11. K. The Fifth Discipline: The Art and Practice of the Learning Organization. Math. 1988. and Felippa. [700] Stewart.. Y. in A. and Hughes. 1973. 1.. in: T. Korte (eds. Collapse Analysis of Structures. M.. 2001.. L. Oden. 24. Academic Press. Finite Element Methods for Nonlinear Problems. Int. W. Philadelphia. R. [699] Stein. 2467–2499. p. Commun. Amsterdam. PVP Vol. 1139–1171. [706] Strang. Dissertation. Continuum-based shell elements. New York. Three-dimensional hybrid-stress isopametric quadratic displacement elements. Academic Press.) [690] Song. K. K. [698] Stanley. Mechanics: Lectures in Theoretical Physics Vol. (English translation from the 4th German edition of 1942.. E.K. [693] Sprague. 1984. J. 1973. L. J. The scaled boundary finite element method in structural dynamics. G. [701] Stewart. T. 15. 1986. Hughes and E. 2nd ed.. J. H. [691] Sortais. NJ. A. Matrix Perturbation Theory. Aziz (ed. [688] Sokolnikoff.. Pineridge Press. I. and Thomas.. 1985. Trondheim. Gr¨otschel and B. Computational Methods in Nonlinear Mechanics. and Inman. [692] Soutas-Little. Conjugate gradient type methods.. 1980.). R. NTH. Vibrations of Plates and Shells. [695] Sprague. Numer. 1978. M. D. 1986. Park. M. P. [686] Sobel. G. Finite element analysis of stability problems with contact. New York. 540–565.. 689–710. Finite Element Methods for Plate and Shell Structures. Numer. SIAM.2 REFERENCE DATABASE [685] Skeie.). T. Numer. New York. K. I: Element Technology. [702] Stewart. Meth. 60. A comment on singularity-free extraction of a quaternion from a direction cosine matrix. Bergan. J.. (eds. 84.. 77. in: A. Matrix Algorithms. and Fix. Variational crimes in the finite element method. 1991. G. 1987. Engrg. W.. and Sun.. and Singh. Int. Academic Press. Engrg.. R–37 . R. G. 2009. The Mathematical Foundations of the Finite Element Method with Applications to Partial Differential Equations. [703] Stoer. R. [704] Strang. 1998. Hinton. Int. London. Ph.. Hermann. Engrg. The Quasi-Newton method in finite element computations... Linear Algebra and its Applications. T. T. A. Stanford University. G. G. Academic Press. Engrg. 1983. Berlin. Meth. New York. [694] Spilker. 1953–1965.. L. W. [707] Strang.. NJ. 445–465. G. K. Mathematical Programming: The State of the Art. 1993. Prentice-Hall. J. R. Swansea. and W. Wagner. Spacecrafts & Rockets. 1982. in: P. A spectral-element method for modeling cavitation in transient fluid-structure interaction. Bachem.. Continuum based resultant shell elements. W. The Mathematical Theory of Elasticity. Division of Structural Mechanics. in: J. The Free Formulation: linear theory and extensions with applications to tetrahedral elements with rotational freedoms. G. 2007.. 1976. C. W. G. [697] Stanley. [687] Soedel. Dissertation. P. J.§R.). 1964. 1–45.). [689] Sommerfeld. D.. Ph. Engineering Mechanics: Dynamics. Englewood Cliffs. J. Boston.. D. A. Vol 2: Eigenproblems. and Geers. Marcel Dekker. U. Academic Press. North-Holland. Springer-Verlag. Meth.. J. A. 18. Prentice-Hall. ASME... La G´eom´etrie du Triangle. Bathe. and Geers. G. W. Numer. C. McGraw-Hill. 2004. Wunderlich (eds. 1956. Berlin.. 451–456. G. and Wriggers.. Paris. Legendre spectral finite elements for structural dynamics analysis. Norway. 255. M. [696] Spurrier. J. M. An Analysis of the Finite Element Method. 1990. Vol. G. S. J. G.. Springer. Meth. R. [705] Strang. Introduction to Matrix Computations... 1972. 15. E.. Complementary energy methods in elastodynamics. 180–181. Wiley. F.1974. A. SIAM J. B. [727] Tanner.S. R. W. The generalized patch test. K. L. Press. Some problems in the discrete element representation of aircraft structures.. Swansea. Hinton. J. III/1. Cambridge Univ. Tisdale.. Numer. Evaluation of solution procedures for nonlinear structural analysis. T. 177–188. 7. vol. C. J. [712] Stricklin. [716] Stuart. J. I. W. Numerical Methods for Nonlinear Problems I. [729] Taylor. 449–471. and Haisler. 2nd U. [726] Taig. Owen .. NJ. R. Dordrecht. Engrg... Englewood Cliffs. H.. [728] Taylor. and Humphries. C. Hunstville. P. M. Prentice-Hall... 1973. J. I.. J. 1–225. M.. Press. AIAA J. 1984.). Variational formulation in the geometrically nonlinear thin elastic shell theory. R–38 . Haisler. Addison-Wesley..). R. 1989. 16. R. 1986. Fraeijs de Veubeke (ed. A rapidly converging triangular plate bending element.. J.). T [724] Tabarrok.. Anal. F.. 125–136. Cambridge. 1971. J. E. 267–316. Self-correcting initial value formulations in nonlinear structural mechanics. Gaussian Quadrature Formulas. in: S. 1972. and Rimrott. P.. A. 1969. Proc. NJ. in: B. and O˜nate.. C.. 22. Numerical Methods for Nonlinear Problems II. AIAA J. Englewood Cliffs. D. 1977. Computers & Structures.. Haisler. H. Hinton. Prentice-Hall. and Von Riesemann.). 625–662. R. Haisler. Cambridge. Clough and Y. 1957. [714] Stroud. [711] Stricklin. Prentice-Hall. Numer.. Int. London. and Babuska. [720] Synge.. 1981. D. A. NJ. Pineridge Press. 9. R. 1996.. A.. W.). Finite Element Analysis. [722] Szilard. 1960... AGARDograph 72. R. W. J. Lectures in Classical Differential Geometry. U.. Universit´e de Li`ege. M. 2nd ed. Swansea. and Haisler. 1161–1175. D. Tillerson. Pineridge Press. in B. Berlin. Formulation and solution procedures for nonlinear structural analysis. [715] Struik. E. [710] Stricklin. I. Dynamic Systems and Numerical Analysis. Fraeijs de Veubeke (ed. [717] Stummel. W. 1991... Variational Methods and Complementary Formulations in Dynamics.. 292–299. The Netherlands. 1985.. U.. and von Riesemann. L. R. J. W. in: J. and Owen. B. and Secrest. R.. Yamamoto (eds. The limitations of the patch test. Pergamon Press. Handbuch der Physik.. Approximate Calculation of Multiple Integrals. Classical dynamics..Appendix R: REFERENCES (IN PROGRESS) [708] Stricklin. The Hypercircle in Mathematical Physics. 1966.. 1994. High Speed Computing of Elastic Structures. Kluwer Acad. Oden. AIAA J. Static geometric and material nonlinear analysis. 1964.. [718] Stummel. [719] Synge. (eds. and Kerr. A. [723] Szwabowicz. W. Oxford University Press. Von Riesemann. Englewood Cliffs. 301–324. Springer-Verlag. F. [713] Stroud. W. E. Matrix Methods of Structural Analysis.. L. Fl¨ugge (ed. Solids Struc. Cambridge Univ. New York. B. [725] Tabarrok. J. University of Alabama. [709] Stricklin. A... E. E. A. J. Int. E. 1973. Pubs. A. 11.. A.). A. Meth.-Japan Seminar on Advances in Computational Methods in Structural Mechanics and Design.. 7. Theory and Analysis of Plates. W. J. [721] Szabo. and Gunderson. 1971. (eds. 1979. 1961.. K. UAH Press. J. Engineering Rheology.. 2066-2067. A. D. J. M. Appl. Oslo. A. E. T. Timoshenko published by McGraw-Hill. 1983. L. L.. F. [739] Thompson. 1867. Theory of Plates and Shells. The patch test: a condition for assessing FEM convergence. Int. and Hunt. Numerical Solution of Nonlinear Problems. G. R. in: J. J. Stricklin. McGraw-Hill. 1976. D.). and Haisler.. Mech. On a conforming. 1986. and Hunt.. See also S. [732] Taylor. Mech. Wiley. P. A three-node Mindlin plate element with improved transverse shear. 1969. M. Ph. Comput. P. S. 1962.. C. [743] Timoshenko. Mechanics Division. S. M.. E. J. H. University of Oslo. J. G. W. W. New York. Engrg.. G. R. Mech. L. C.. [746] Timoshenko. McGraw-Hill. Theory of Elastic Stability. P.§R. AMD Vol. Reprinted in The Collected Papers of Stephen P.. 71–101.. Berkeley... 10. S. Wiley. R. London. and Young. 1955.. 39–62. T. W. G. and Bishoff. Instabilities and Catastrophes in Science and Engineering.. R–39 . Timoshenko and D. of Civil Engineering.. J. New York. P. expanded 2nd ed. J. CA. On the correction for shear of the differential equation for transverse vibration of prismatic bars. Engrg. M. and Chan. A.. C....4457.. A General Theory of Elastic Stability. 1994. Mindlin-type plate element.. Simo. and Woinowsky-Krieger. W. J. 50. Meth. and Gere. 1981. London. H. Princeton. 3rd edition. Wiley. P.. 1211–1219. Theory of Elasticity. 1951. Comp.. [741] Tillerson. First edition by S..J. [731] Taylor. [735] Tessler. S. 744-46. N. Engrg. P. 329–331.. Static and Dynamic Instability Phenomena. Norway. Int. Appl. J. London. G. Young. A nonconforming element for stress analysis. New York..D Dissertation. Press. 1985. Continuation of Newton’s method through bifurcation points. P. Analysis of plate bending using triangular elements. P. Int. Van Nostrand. Hartung (ed. J. XLI. J. 425-430. 1972. [745] Timoshenko. D. Meth. [738] Thompson.. Part I. London. Vibration Problems in Engineering.10076/s00466-013-0832-0. New York.. 1959. Cambridge. A. Department of Mathematics. J. O. 6. N. [733] Teigen. Numer. 36. [734] Tessler. J.. and Bishoff. A.. Univ. K. 22. Van Nostrand.. 1936.. Ph. L. Solids Struc. 1–8.. London. A variational principle for incompressible and nearly incompressible orthotropic elasticity. [742] Timoshenko. S. Cambridge Univ. Vibration Problems in Engineering. Numer.1002/nme. Timoshenko. Meth. 1961. M. DOI 10. T. to appear 2013.2 REFERENCE DATABASE [730] Taylor. A.. M. of California. Engrg. Phil. reprinted by Dover. 2009. Mag. 875-883. R. and Hughes. J. A. J. [736] Thomson. Dissertation. 1953. J. R. [744] Timoshenko. Int. 1982. S. 1954. Numerical methods for the solution of nonlinear problems in structural analysis. 2013. and Goodier. Pister. [747] Tkachuk. Treatise on Natural Philosophy. Zienkiewicz.. 4. A. in: R. Wilson. Variational methods for selective mass scaling. [749] Tocher. and Herrmann. [737] Thompson. J. McGraw-Hill. Variational methods for selective mass scaling. J. Dept.. L.. N. T.). 119–126. Academic Press. [740] Thurston.. Nonlinear analysis of concrete structures based on a 3D shear-beam element formulation. L. S. P. and Tait.... The Mathematics of Finite Elements and and Applications IV. and Beresford. New York. Numer. [748] Tkachuk. DOI 10. J. 1921. 1973. R.. Whiteman (ed. McGraw-Hill. Meths. 1968. ASME. [763] Truesdell. [754] Tong. C. H. J. M. and Kapur. 1960. L. W. 151-152. Reprinted in C. 1952. H. Martin.. R. 1964. Mech. J. [765] Turner. Academic Press. Engrg. in: B. Germany. Berlin. Circumstances. Oxford.. F. Robinson.. vol. E. 37–50... [753] Tong.) Matrix Methods of Structural Analysis. 1965.. Exact solution of certain problems by the finite element method. Anal.. Aero. The Theory of Determinants.. Iterative Methods for the Solution of Equations. F. R. 203–266. Meth.. M. C. Prentice-Hall. C. and Weikel. M. The Tragicomical History of Thermodynamics. Appl. J. ASME.. Anal. AGARD Meeting.. P. E. A variational principle for the mesh-type analysis of a mechanical system. [760] Truesdell. Schnobrich (eds. 1996. Englewood Cliffs. III/1. [758] Truesdell. J. [762] Truesdell. [767] Turner. 1973. 1960. Fraeijs de Veubeke (ed. 179–180. 4. The mechanical foundations of elasticity and fluid dynamics.. W.J. New displacement finite element method for solid continua.. Continuum Mechanics III: Foundations of Elasticity Theory. R. and Topp. [759] Truesdell.). 1959. An Idiot’s Fugitive Essays in Science: Methods.. London. 151–173. R. L. C. and Noll. Large deflection analysis of complex structures subjected to heating and external loads. Proceedings IUTAM Symposium on High–Speed Computing of Elastic Structures. C. A. Corrected and expanded reprint in: C... 1969. [756] Tonti. Numer. 1215–1216. H. [757] Traub. Expanded reprint by Dover. and Kalaba. [768] Turner. W. New York. J. [752] Tocher. J. Li`ege. 226–790. J. 83–133. A. J. R. in: B. Martin... K. Trans. Model. in: S. 97-107. 1019–1020.. 1955. J. Clough. Training. The reason for analogies between physical theories. B. N. D. A. Martin.Appendix R: REFERENCES (IN PROGRESS) [750] Tocher. Belgium. C. 1929. J. Springer Verlag. E.. Berlin. J. Stiffness and deflection analysis of complex structures. [755] Toupin.. J. Truesdell (ed. E. Rat. L. H. Pergamon Press. Further developments and applications of the stiffness method. P.. A. NJ. Fenves.). C. and W. Springer-Verlag.. R–40 . and Felippa. U [769] Udwadia. K. Melosh. Gordon & Breach. 1965. The classical field theories... 2. C. A critical view of NASTRAN. 125–300. Springer-Verlag.. J. Aero. 1966. 1960. Dill.. 1. Sci. Universit´e de Li`ege Press. 805–824. Continuum Mechanics I: The Mechanical Foundations of Elasticity and Fluid Dynamics. Computer graphics applied to production structural analysis. Analytical Dynamics. Matrices and Invariants.. [764] Turnbull. The nonlinear field theories of mechanics.) Handbuch der Physik. III/3. L. R. in: S. Gordon & Breach... Perrone. M.. [761] Truesdell. AIAA J. and Toupin. H. Sci. New York. New York. in: S. Hypoelasticity. AIAA J.. Structural and Materials Panel Paper. 1956. Berlin. Criticism. Handbuch der Physik. Math. C. [766] Turner. 23.. C. 1964. 1980.. 3. Cambridge.. E. 1965..). 1. Flügge (ed. Numerical and Computer Codes in Structural Mechanics. [751] Tocher. M.). 73–83. Truesdell (ed. J. 27. Blackie and Sons. Flügge (ed. 74... AGARDograph 72. Fraeijs de Veubeke (ed. J. Springer-Verlag.). Int. Mech. M. and Herness. 1977. J. Discussion of ‘Basis for derivation of matrices for the direct stiffness method’ by R. 1970. The direct stiffness method of structural analysis. C. Aachen. and Melosh. 1984. Vol. 7. Rat. 1952. 1971. C. D. General Systems Theory: Foundations. E. Continuation Methods. Proceedings 2nd Conference on Matrix Methods in Structural Mechanics. Nonlinear Approaches in Engineering Applications. and Phohomshiri.. North-Holland. S. [786] Wacker. Arch. in: L. D. Amsterdam. [771] Udwadia. Explicit equation of motion of constrained systems. G. 2097– 2117. [782] von Bertalanffy. McGraw-Hill. and Cyrus. W [785] Wachpress. Hughes (eds. 111–129. S. 1948. K. 5. in: T. 1964. D. R–41 . Air Force Institute of Technology. [783] von K´arm´an. F. Applications. E. Mech. 37. 462. Braziller. Dynamic relaxation. Meths. S´erie II. Dayton. E. 311..). 1990. [775] Uspenky. S. Fulton. Acta Mech.. 23. P.). 2nd annotated ed..). and Reddy..§R.. [780] Venkayya. B. P. AFFDL-TR-68-150.. Proceedings 2nd Conference on Matrix Methods in Structural Mechanics. A Rational Finite Element Basis. and Park. and Wanichanon. G. M.. Lecture Notes in Mathematics 1605. and Schutte. M. al. 111–154. 1967. 995–1028.. E. New York. 535–551. Appl. [778] Valanis. [779] Van Dyke. 23. Ohio.). 2006. T. 213. A. Dai and R.. Jazar (eds. Variational Methods for the Study of Nonlinear Operators. 1968. R. J. Mech. New York. [787] Waltz. 585–589. V. 1983. J. Accuracy and convergence of finite element approximations. [781] Verchery.. V. 1978. Academic Press. 1989.. 1910. [774] Underwood. Theory of Equations. Festigkeistprobleme im Maschinenbau. 245–266. Parabolic Press. (eds. T.. 1980. AIAA J. E. [776] Utku. Optimization of structures based on the study of energy distribution. Khot. S. Comp. E.. Encyklop¨adie der Mathematischen Wissenschaften. L. 259–179. V [777] Vainberg. L. V.. Computational Methods for Transient Analysis. E. Explicit equations of motion for constrained mechanical systems with singular mass matrices and applications to multi-body dynamics. Part II: Application to mechanical behavior of metals. Variational Methods in Nonconservative Phenomena. [773] Underwood. 1975.. Dayton. Roy. F. 1995. 1968 [788] Walhlbin. A. Development. R´egularisation du syst`eme de l’ e´ quilibre des structures e´ lastiques discret`es. 1971. Academic Press. 311–385. 2012. Soc.. A theory of viscoplasticity without a yield surface.. Comptes Rendus a` l’Acad´emie des Sciences. Ohio. E. F..2 REFERENCE DATABASE [770] Udwadia.. New York. NJ. J. Jones. New York. Paris.. [784] Vujanovic. t. K. Hj. in: L.. Ch. Engrg. M. New York. N. (ed. (eds. and S. 2010. 1968. Stiffness matrices for thin triangular elements of nonzero Gaussian curvature. C... Academic Press. 4.. Belytschko and T. Berke et. revised edition 1970. B. N. Berke et. 1659–1667.. 1975.. Superconvergence in Galerkin Finite Element Methods. Equations of motions for general constrained systems in Lagrangian mechanics. B. [772] Udwadia.. Perturbation Methods in Fluid Mechanics. Springer-Verlag. Proc. AFFDL-TR-68-150. I. G. Holden-Day. C. New York. A variable-step central difference method for structural dynamics analysis. Part 2: implementation and performance evaluation. al. Springer. Air Force Institute of Technology. in: L.. P. R. Berlin.). E. 1973. C.. Berlin. 394–401.. SIAM J. CA. and W.. [799] Werner. [796] Weisstein. A. Vol 5. J. Quadratic convergence of Crisfield’s method. J. and Spence. L. In Dover edition since 1974. 511–531. 159–179. Numerical solutions by the continuation method.. 1974. 17. A. B. R. E. S. Ph.. 1973. B. New York. Physics. 1971. The Algebraic Eigenvalue Problem. J. G. Numerical solution of inelastic rate processes. 14. 13. [797] Wempner.. Lancaster. Handbook for Automatic Computation. A.. Katz. 69–72. 1978. Robinson. CRC Concise Encyclopedia of Mathematics. [807] Wilson.). Comp. of California. Computers & Structures. 1991. 1963. K. Linear Algebra. [791] Washizu. Des. Univ. J. An Introduction to the Finite Element Method with Applications to Nonlinear Problems. 1969.. Fenves. L. 1581–1599.. and Holzer. PA.. Discrete approximations related to nonlinear theories of solids. 1983. [809] Wilson. 198–203. Solids Struc. D. R. and Szabo. Int. of Civil Engineering. [800] White.. Meth.. Wiley. [792] Watson. J. [811] Wilson. H. J.. in: S.. 1979. [790] Warming. L. 2002.. Anal. 1984. N. D. 8.. [803] Wilkinson. Computers & Structures. Dissertation. Finite Elem. L. 16. Finite element analysis of two-dimensional structures. C. Numer. New York.. Doherty.. [801] Whitney. Berkeley. K. Variational Methods in Elasticity and Plasticity. Academic Press. [795] Weinstock. Chapman-Hall CRC. E. Second expanded edition 1981. (eds.. Pergamon Press. J. 1971. Numer. h. An algorithm that is globally convergent with probability one for a class of nonlinear two-point boundary value problems. [808] Wilson. Meth. [793] Watson. vol 2. Computers & Structures. J. Numerical and Computer Models in Structural Mechanics. Finite element analysis of cellular structures. Finite elements. E. J.. 1978. 1972. SIAM Review... [794] Wasserstrom. 1399–1405. 1998. W. K. 1969. I.. J. with Applications to Physics and Engineering.. 117–153. 1987. R. Dept.. T. and Hyett. 8... Structural Analysis of Laminated Anisotropic Plates. T. J. Numer. A. [798] Wempner. 43–57. R–42 . P. Int. H. 8. The computation of symmetry-breaking bifurcation points. Engrg. 20. Incompatible displacement models.. Academic Press. 89–119. Dissertation. Ph. Three Dimensional Static and Dynamic Analysis of Structures: A Physical Approach with Emphasis on Earthquake Engineering. M. Inc. B. and Reinsch.. Anal. A. R. 7. 1952. SIAM J. L. Automation of the finite element method — a historical view. Int. 1993.. H. W. New York. New York. Int. Calculus of Variations. F.. Department of Civil Engineering. E. Technomic Publ. E. Numer.). Perrone. 2nd ed. Solids Struc. 91–104. 767–785. H. Generatingfunctionology. [802] Wilf. 1985. Taylor. [804] Wilkinson. E. . 1971. L. 1965.. K.. W. [810] Wilson. [805] Willam.and p-version finite element analysis of a rhombic plate. M. D. and Ghaboussi. J.Appendix R: REFERENCES (IN PROGRESS) [789] Wang. Engrg. [806] Willam. R. The static condensation algorithm. McGraw-Hill. Schnobrich (eds. Oxford Univ. University of California at Berkeley. Press.. finite rotations and small strains of flexible shells. L. L. G.. E.. The modified equation approach to the stability and accuracy analysis of finite difference methods. Co. 15. S.. Springer-Verlag. Anal. J. . S.K. Tapir.). London. Princeton University. New York. H. Statistical Research Group. Chichester. W. Y [821] Yanenko. Berlin. The Engineer. [823] Yourgrau. von Karman (eds. Rotterdam. [818] Wu. 1999. Whiteman (ed. 913–921. [827] Zienkiewicz. J. Mech.. Irons.. The Schur Complement and Its Applications. 1965.. Reduced integration technique in general analysis of plates and shells. Finite elements in the solution of field problems. A work control method for geometrically nonlinear analysis. On optimization approaches of hybrid stress elements. M. Finite Element Methods for Stress Analysis. 1940. C. Valliappan. Engrg. Des. Academic Press.. (eds. K. Int. [830] Zienkiewicz. in: H. 21. [825] Zhechev. Iso-parametric and associated element families for two.. J. On the concept of elastic stability. O. 1966. 75–100. 107–110. Balkema Pubs. 1950. Thames and Hudson. and Mandelstam. C. Meth. L. The Finite Element Method in Engineering Science. Acoustics. The Mathematica Book. [832] Zienkiewicz. Blackie And Sons.. X. Engrg.. U. S. Princeton.. O.. F. K.). (Last edition in print). I.. H.-B. [828] Zienkiewicz. Elasto-plastic solutions of engineering problems: ‘initial stress’. R–43 .. 275–290. in: I.).2 REFERENCE DATABASE [812] Wimp. Y. [826] Ziegler.. J.. Y. Holland and K.. Springer. Springer-Verlag. M. Inverting modified matrices.. Numer. [822] Yang.). J. C. 1969. Berlin. Wolfram Media Inc. 4.. 1985. Taylor. 2003. L. Cambridge. 1956... Wiley. McGrawHill. N. 1981.. Advances in Applied Mechanics Vol. Proceedings NUMETA 85 Conference -Vol. The Method of Fractional Steps. N. Stein.. 2005. and McGuire. The Mathematics of Finite Elements and Applications I. in: J. 111–128. C. 1968. 2007. Appl. and Cheung. Bell (eds. O. Finite Elem. New York. Memorandum Report 42. B.. and Cheung.. W.. 2. C. Dover. Ahmad. and Cheung. [814] Wolfram. [819] Wunderlich. O.. finite element approach. Y. C. NJ.. On the admissability of given acceleration-dependent forces in mechanics. R. 351–403. K. 1973. Plastic Analysis of Slabs and Plates. Trondheim. New York. 1967. Norway. 1969. 1971. Numer. M. [817] Woodbury. and King. A. 1981. A. [816] Wood. Y. S. 1995. O. R. Springer. and Too. 1991. F. C. [813] Wolf.). 1. [829] Zienkiewicz. Ergatoudis. O. A. M. Int.. 507–510. 74. C. J. K. X [820] Xie.. and Scott. 4th ed. and Bathe. Meth. P. W. Reprinted by Dover. R. E. Dynamic Stability of Structures.. Z [824] Zhang. 1961.. S. Nonlinear Finite Element Analysis in Structural Mechanics. Finite elements: the background story. Sequence Transformations and Their Applications. C.. [831] Zienkiewicz. 2006.§R.. New York.. London. M.. Dryden and Th. Academic Press. C. [815] Wood. J. J. Academic Press. (ed.and three-dimensional analysis.. The Scaled Boundary Finite Element Method. Anal. 3. Variational Principles in Dynamics and Quantum Theory. New York. The Finite Element Method. Engrg.. 1985. 5. 1976. and L¨ohner. Jennings. 52. [835] Zienkiewicz. [834] Zienkiewicz. 4th ed. L....wiley. E. 1846. Meth. The Finite Element Method. 1977. 1965.. Accelerated ‘relaxation’ or direct solution?. 1925. L. 85–88. and Ratzersdorfer. preface to reprint of B. O. 218–235. 1923. 406–422. De curvis elasticis... Numer. London. 1953.. [837] Zienkiewicz.. Amsterdam..... C. Engrg. 2269-2274. 1973. An Introduction to Mechanics of Continua. J. Appendix in the book Methodus Invenientis Lineas Curvas Maxime Minimeve Propietate Geudentes. London. Structural analysis of axisymmetric solids. Lausanne and Geneva. Int. J. O. C. J.. [844] Timoshenko. ============ Additional refs to be eventually merged w/above. 287–342. [847] Wilson. 21. 3. J. G. North-Holland. Die Knicksicherheit von Fachwerken. future prospects for FEM. Incremental displacement in nonlinear analysis. [838] Zienkiewicz. R.. Meth. Numer. [846] Von Mises. [836] Zienkiewicz. O... Fraeijs de Veubeke’s “Displacement and equilibrium models” in Int. [841] Euler. L. McGraw-Hill. Structures: From Theory to Practice.. O.. 3rd ed. R. Dover reprint. J. 1–11. Principles of the Theory of Solids. J. O.interscience. M. McGraw-Hill. 3. McGraw-Hill. P. W. Reprint available from http://www3. Math. I: 1988. C.com/cgi-bin/fulltext/85006363/PDFSTART [839] Ziman. S. 2004. [842] A. R–44 . Ueber die Stabilit¨at des Gleichgewichts. 3rd ed. reine angew. The Finite Element Method in Engineering Science.. ¨ [845] Von Mises. Uber die Stabilit¨atprobleme der Elasticizit¨atheorie. Meth. and dups weeded ======= [840] Dirichlet. Int. Numer.. and Taylor. 587–592. 1744. C. Taylor and Francis.. 1973.. E. ZAMM. London. ZAMM. 32. Vol. O. C.Appendix R: REFERENCES (IN PROGRESS) [833] Zienkiewicz. 2001. R. Engrg. C. [843] Prager. R. 1967. AIAA J. 3. M. Vol II: 1993. History of Strength of Materials. McGraw-Hill. Documents Similar To Intro to FEM by Carlos Felippa.pdfSkip carouselcarousel previouscarousel nextIFEM.HW04.sol.Ch10PdeWhat Safety Engineers DoIFEM Solution Ch14IFEM Solution Ch15IFEM.Ch01IFEM.HW05.sol.Ch12pde.pdfIFEM Solution Ch17HFSS v13 DatasheetPartial Differential EquationModal Analysis of a Cable-stayed Bridge5716159Advanced Mechanics of Materials (Boresi, Schmidl ,1993)The Immersed Interface Method Using a Finite Element Formulation Zhilinpvp1996-vol336_2MidasNFX Quick Start GuideFinite Element Analysis in structures.Lesson PlanWhen Good Engineers Deliver Bad FEAwuExplanation Plate Staad1-s2.0-S0168874X12001126-mainwave_eqnNodelessKrysl San Diego ASA Meeting October 2011Elastic Crack Growth in Finite Elements With Minimal Remeshing-belytschko and Black-1999FEA ME 2353TY BTech Syllabus MechanicalSeismic Qualification of RTO System Base Using Finite Element AnalysisMore From AhmedButtSkip carouselcarousel previouscarousel nextGlobal Point March 20179ha-fact-sheet-oct15.pdfSix Important Phases of Pakistan Foreign Policy.pdfIntroduction to Public Administration Notes.pdfChapter1-Density.pdfMTO week 4Fuel Lab Copy Soft Copy - ICET 2016Casing Drilling & Smear Effect AnalysisPD Robust DesignClassspec Eng1Bachmannkks.pdfFooter MenuBack To TopAboutAbout ScribdPressOur blogJoin our team!Contact UsJoin todayInvite FriendsGiftsLegalTermsPrivacyCopyrightSupportHelp / FAQAccessibilityPurchase helpAdChoicesPublishersSocial MediaCopyright © 2018 Scribd Inc. .Browse Books.Site Directory.Site Language: English中文EspañolالعربيةPortuguês日本語DeutschFrançaisTurkceРусский языкTiếng việtJęzyk polskiBahasa indonesiaSign up to vote on this titleUsefulNot usefulYou're Reading a Free PreviewDownloadClose DialogAre you sure?This action might not be possible to undo. Are you sure you want to continue?CANCELOK
Copyright © 2024 DOKUMEN.SITE Inc.