Synopses & Reviews
The finite element method (FEM) is a computational technique for solving problems which are described by partial differential equations or which can be formulated as functional minimization. The FEM is commonly used in the design and development of products, especially where structural analysis is involved. The simple object model of the Java™ programming language lends itself to efficient implementation of FEM analysis. Programming Finite Elements in Java™ teaches the reader FEM algorithms and their programming in Java™ through a single finite element Java™ program. The compact, simple code makes it straightforward to understand the algorithms and their implementation, thereby encouraging developers to extend the code to their own tasks. All of the main aspects of finite element techniques are considered: • finite element solution; • generation of finite element meshes; and • visualization of finite element models and results with Java 3D™. The step-by-step presentation includes algorithm programming and code explanation at each point. Problems and exercises are provided for each chapter, with Java™ source code and problem data sets available from http://extras.springer.com/2010/978-1-84882-971-8. Graduate students using the FEM will find the simple but detailed object-oriented programming methods presented in this textbook to be of great assistance in understanding the FEM, including mesh generation and visualization. Programming Finite Elements in Java™ will also be of interest to senior undergraduates doing special studies encompassing the FEM. Researchers and practicing engineers already familiar with the FEM but seeking an alternative approach will find this book readily suited to self study.
Review
From the reviews: "Throughout the book, the author provides, in an object-oriented paradigm, clear and compact Java code snippets extracted from his own software application. ... The intended audience includes advanced undergraduate students in finite element analysis courses and graduate students in introductory FEM courses. Scientists and engineers who are familiar with FEM techniques can benefit from the book's discussion of object-oriented implementation. ... this book would also be highly valuable for computer scientists who want to learn about computational science and engineering and the FEM." (Alin Anton, ACM Computing Reviews, January, 2013)
Synopsis
Programming Finite Elements in Java™ teaches the reader how to programme the algorithms of the finite element method (FEM) in Java™. The compact, simple code helps the student to read the algorithms, to understand them and thus to be able to refine them. All of the main aspects of finite element techniques are considered: finite element solution; generation of finite element meshes; and visualization of finite element models and results with Java 3D™. The step-by-step presentation includes algorithm programming and code explanation at each point. Problems and exercises are provided for each chapter, with Java™ source code and problem data sets available from http://extras.springer.com/2010/978-1-84882-971-8.
Synopsis
This book details how to program the algorithms of the finite element method (FEM) in Java™. It covers all of the main aspects of finite element techniques. The step-by-step presentation includes algorithm programming and code explanation at each point.
About the Author
Gennadiy Nikishkov got his PhD and DSci degrees from the Moscow Engineering Physics Institute (Technical University) in computational mechanics. He held a professorship at the Moscow Engineering Physics Institute. He also had visiting positions at Georgia Institute of Technology (USA), Karlsruhe Research Center (Germany), RIKEN Institute of Physical, Chemical Research (Japan) and GKSS Research Center (Germany) and University of California at Los Angeles (USA). Currently Gennadiy Nikishkov is a Professor at the University of Aizu (Japan). His activities and research interests include computational mechanics, computational fracture mechanics, computational nanomechanics, development of finite element and boundary element codes, scientific visualization and computer graphics. For many years he taught courses on computational modeling using the finite element method.
Table of Contents
Part I: Finite Element Formulation.- Introduction.- Finite Element Equations for Heat Transfer.- FEM for Solid Mechanics Problems.- A Finite Element Program.- Part II: Finite Element Processor.- Finite Element Model.- Elastic Material.- Elements.- Numerical Integration.- Two-dimensional Isoparametric Elements.- Implementation of 2D Quadratic Element.- Three-dimensional Isoparametric Elements.- Implementation of 3D Quadratic Element.- Assembly and Solution.- Direct Equation Solver.- Iterative Equation Solver.- Load Data and Load Vector Assembly.- Stress Increment, Residual Vector and Results.- Elastic-Plastic Problems. Part III: Mesh Generation.- Mesh Generator.- Two-dimensional Mesh Generators.- Generation of Three-dimensional Meshes by Sweeping.- Pasting Mesh Blocks.- Mesh Transformations.- Copying, Writing and Reading Mesh Blocks.- Part IV: Visualization of Meshes and Results.- Visualizer.- Visualization Scene Graph.- Surface Geometry.- Edge and Face Subdivision.- Color Scale, Mouse Interation and Lights.- Appendices: Data for Finite Element Solver; Data for Mesh Generation; Data for Visualizer.