# Programming Finite Elements In Java

2y ago
51 Views
1.56 MB
9 Pages
Last View : Today
Transcription

Gennadiy NikishkovProgramming FiniteElements in Java Springer

ContentsPart I Finite Element Formulation1Introduction1.1 Basic Ideas of FEM1.2 Formulation of Finite Element Equations1.2.1 Galerkin Method1.2.2 Variational Formulation1.3 Example of Shape-function DeterminationProblems334589102Finite Element Equations for Heat Transfer2.1 Problem Statement2.2 Finite Element Discretization of Heat Transfer Equations2.3 Different Type Problems2.4 Triangular ElementProblems1313141617193FEM for Solid Mechanics Problems3.1 Problem Statement3.2 Finite Element Equations3.3 Stiffness Matrix of a Triangular Element3.4 Assembly of the Global Equation System3.5 Example of the Global Matrix AssemblyProblems212123262729304Finite Element Program4.1 Object-oriented Approach to Finite Element Programming4.2 Requirements for the Finite Element Application4.2.1 Overall Description4.2.2 User Description4.2.3 User Interface333334343535ix

xContents4.2.4 Functions4.2.5 Other Requirements4.3 General Structure of the Finite Element CodeProblems35363638Part II Finite Element Solution5Finite Element Processor5.1 Class Structure5.2 Problem Data5.2.1 Data Statements5.2.2 Model Data5.2.3 Load Specification5.2.4 Data Example5.3 Data ScannerProblems4343494951525457616Finite Element Model6.1 Data for the Finite Element Model6.2 Class for the Finite Element Model6.3 Adding New Data ItemProblems63636672727Elastic Material7.1 Hooke's Law7.2 Class for a Material7.3 Class for Elastic MaterialProblems75757679818Elements8.1 Element Methods8.2 Abstract Class Element8.2.1 Element Data8.2.2 Element Constructor8.2.3 Methods of Particular Elements8.2.4 Methods Common to All Elements8.2.5 Container for Stresses8.3 Adding New Element TypeProblems838384848587889091929Numerical Integration9.1 Gauss Integration Rule9.2 Implementation of Numerical IntegrationProblems93939599

xi10 Two-dimensional Isoparametric Elements10.1 Shape Functions10.2 Strain-Displacement Matrix10.3 Element Properties10.4 Nodal Equivalent of the Surface Load10.5 Example: Computing Nodal Equivalents of a Distributed Load10.6 Calculation of Strains and StressesProblems101101104107108109110Ill11 Implementation of Two-dimensional Quadratic Element11.1 Class for Shape Functions and Their Derivatives11.1.1 Element Degeneration11.1.2 Shape Functions11.1.3 Derivatives of Shape Functions11.1.4 One-dimensional Shape Functions and Their Derivatives . . .11.2 Class for Eight-node Element11.2.1 Stiffness Matrix11.2.2 Displacement Differentiation Matrix11.2.3 Thermal Vector11.2.4 Nodal Equivalent of a Distributed Load11.2.5 Equivalent Stress Vector11.2.6 Extrapolation from Integration Points to Nodes11.2.7 Other 512612712812 Three-dimensional Isoparametric Elements12.1 Shape Functions12.2 Strain-Displacement Matrix12.3 Element Properties12.4 Efficient Evaluation of Element Matrices and Vectors12.5 Calculation of Nodal Equivalents for External Loads12.6 Example: Nodal Equivalents of a Distributed Load12.7 Calculation of Strains and Stresses12.8 Extrapolation of Strains and StressesProblems12912913113313413413613813813913 Implementation of Three-dimensional Quadratic Element13.1 Class for Shape Functions and Their Derivatives13.1.1 Element Degeneration13.1.2 Shape Functions13.1.3 Derivatives of Shape Functions13.1.4 Shape Functions and Their Derivatives for an Element Face.13.2 Class for Twenty-node Element13.2.1 Stiffness Matrix13.2.2 Thermal Vector141141141143144147149150152

xiiContents13.2.313.2.413.2.513.2.6ProblemsNodal Equivalent of a Distributed LoadEquivalent Stress VectorExtrapolation from Integration Points to NodesOther Methods15315415515615814 Assembly and Solution16114.1 Disassembly and Assembly16114.1.1 Disassembly of Vectors16114.1.2 Assembly of Vectors16314.1.3 Assembly Algorithm for Matrices16414.2 Displacement Boundary Conditions16614.2.1 Explicit Specification of Displacement Boundary Conditions 16614.2.2 Method of Large Number16714.3 Solution of Finite Element Equations16714.4 Abstract Solver Class16814.5 Adding New Equation Solver170Problems17115 Direct Equation Solver15.1 LDU Solution Method15.2 Assembly of Matrix in Symmetric Profile Format15.3 LDU Solution Algorithm15.4 Tuning of the LDU FactorizationProblems17317317417818218616 Iterative Equation Solver16.1 Preconditioned Conjugate Gradient Method16.2 Assembly of Matrix in Sparse-row Format16.3 PCG SolutionProblems18718718819319617 Load Data and Load Vector Assembly17.1 Data Describing the Load17.2 Load Data Input17.3 Load Vector Assembly17.4 Element Face LoadProblems19919920120720921118 Stress Increment, Residual Vector and Results18.1 Computing Stress Increment18.2 Residual Vector18.3 Results18.4 Solution of a Simple Test ProblemProblems213213215217219220

xiii19 Elastic-Plastic Problems19.1 Constitutive Relations for Elastic-Plastic Material19.2 Computing Finite Stress Increments19.2.1 Determining Elastic Fraction of Stress Increment19.2.2 Subincrementation for Computing Stress Increment19.3 Material Deformation Curve19.4 Implementation of Elastic-Plastic Material Relations19.5 Midpoint Integration of Constitutive Relations19.6 Nonlinear Solution Procedure19.6.1 Newton-Raphson Method19.6.2 Initial Stress Method19.6.3 Convergence Criteria19.7 Example: Solution of an Elastic-Plastic 2243245Part III Mesh Generation20 Mesh Generator20.1 Block Decomposition Method20.2 Class Structure20.3 Mesh-generation Modules20.4 Adding New ModuleProblems24924925025225325421 Two-dimensional Mesh Generators21.1 Rectangular Block21.2 Mesh Inside Eight-node Macroelement21.2.1 Algorithm of Double-quadratic Transformation21.2.2 Implementation of Mesh Generation21.3 Example of Mesh GenerationProblems25725726126126426927022 Generation of Three-dimensional Meshes by Sweeping22.1 Sweeping Technique22.2 Implementation22.2.1 Input Data22.2.2 Node Numbering22.2.3 Element Connectivities and Nodal Coordinates22.3 Example of Mesh GenerationProblems27127127227227527627928123 Pasting Mesh Blocks23.1 Pasting Technique23.2 Implementation23.2.1 Data Input23.2.2 Finding Coincident Nodes283283284284286

xivContents23.2.3 PastingProblems28728824 Mesh Transformations24.1 Transformation Relations24.2 Implementation24.2.1 InputData24.2.2 Performing Transformations24.3 Example of Using 97299300302Copying, Writing and Reading Mesh Blocks25.1 Copying25.2 Writing Mesh to File25.3 Reading Mesh from FileProblemsPart IV Visualization of Meshes and Results26 Introduction to Java 3D 26.1 Rendering Three-dimensional Objects26.2 Scene Graph26.3 Scene Graph Nodes26.3.1 Group Nodes26.3.2 Leaf Nodes26.4 Node Components26.4.1 Geometry26.4.2 Appearance and AttributesProblems30530530630730730830930931131127 Visualizer27.1 Visualization Algorithm27.2 Surface of the Finite Element Model27.3 Subdivision of Quadratic Surfaces27.4 Class Structure of the Visualizer27.5 Visualizer Class27.6 InputData27.6.1 Input Data File27.6.2 Class for Data InputProblems31331331431531531631831831932228 Visualization Scene Graph28.1 Schematic of the Scene Graph28.2 Implementation of the Scene Graph28.3 Shape ObjectsProblems325325326328331

Contents29Surface Geometry29.1 Creating Geometry of the Model Surface29.2 Surface Faces29.3 Surface Edges and Nodes29.4 Modification of Nodal CoordinatesProblemsxv33333333533834034230 Edge and Face Subdivision30.1 Subdivision for Quality Visualization30.2 Edge Subdivision30.3 Face SubdivisionProblems34334334434735231Surface Subdivision31.1 Subdivision of the Model Surface31.2 Subdivision of Faces into Triangles31.3 Arrays for Java 3DProblems35335335635936232Results Field, Color Scale, Interaction and Lights32.1 Results Field32.2 Color Scale32.3 Mouse Interaction32.4 Lights and Background32.5 Visualization ExampleProblems363363368370372373375AData for Finite Element SolverA.l Data StatementsA.l.l Data StatementA. 1.2 Comment StatementA. 1.3 Including FileA.1.4 End StatementA.2 Model DataA.2.1 ParametersA.2.2 Material PropertiesA.2.3 Finite Element MeshA.2.4 Displacement Boundary ConditionsA.3 Load SpecificationA.3.1 Load Step NameA.3.2 ParametersA.3.3 Nodal ForcesA.3.4 Surface ForcesA.3.5 Surface Forces Inside a BoxA.3.6 Nodal 0380381381381382

xviContentsВData for Mesh GenerationB.l Mesh-generation ModulesB.2 Rectangular Mesh BlockB.3 Mesh Inside Eight-node MacroelementB.4 Three-dimensional Mesh by SweepingB.5 Reading Mesh from FileB.6 Writing Mesh to FileB.7 Copying MeshB.8 Mesh TransformationsB.9 Connecting Two Mesh Blocks383383384384384385385385385386СData for VisualizerС 1 Visualization DataC.2 Input Data387387387DExample of Problem SolutionD.l Problem StatementD.2 Mesh GenerationD.3 Problem SolutionD.4 Visualization389389390391393References397Index399

3.2 Finite Element Equations 23 3.3 Stiffness Matrix of a Triangular Element 26 3.4 Assembly of the Global Equation System 27 3.5 Example of the Global Matrix Assembly 29 Problems 30 4 Finite Element Program 33 4.1 Object-oriented Approach to Finite Element Programming 33 4.2 Requirements for the Finite Element Application 34 4.2.1 Overall .

Related Documents:

java.io Input and output java.lang Language support java.math Arbitrary-precision numbers java.net Networking java.nio "New" (memory-mapped) I/O java.rmi Remote method invocations java.security Security support java.sql Database support java.text Internationalized formatting of text and numbers java.time Dates, time, duration, time zones, etc.

Java Version Java FAQs 2. Java Version 2.1 Used Java Version This is how you find your Java version: Start the Control Panel Java General About. 2.2 Checking Java Version Check Java version on https://www.java.com/de/download/installed.jsp. 2.3 Switching on Java Console Start Control Panel Java Advanced. The following window appears:

JAR Javadoc Java Language jar Security Others Toolkits: FX Java 2D Sound . Java Programming -Week 1. 6/25. Outline Java is. Let’s get started! The JDK The Java Sandbox . into your namespace. java.lang contains the most basic classes in the Java language. It is imported automatically, so

The Java Platform The Java platform has two components: The Java Virtual Machine (Java VM) The Java Application Programming Interface(Java API) The Java API is a large collection of ready-made software components that provide many useful capa

–‘java’ command launches Java runtime with Java bytecode An interpreter executes a program by processing each Java bytecode A just-in-time compiler generates native instructions for a target machine from Java bytecode of a hotspot method 9 Easy and High Performance GPU Programming for Java Programmers Java program (.

3. _ is a software that interprets Java bytecode. a. Java virtual machine b. Java compiler c. Java debugger d. Java API 4. Which of the following is true? a. Java uses only interpreter b. Java uses only compiler. c. Java uses both interpreter and compiler. d. None of the above. 5. A Java file with

besteht aus der Java-API (Java Application Programming Interface) und der Java-VM (Java Virtual Machine). Abbildung 1: Java-Plattform Die Java-API ist eine große Sammlung von Java-Programmen, die in sog. Pakete (packages) aufgeteilt sind. Pakete sind vergleichbar mit Bibliotheken in anderen Programmiersprachen und umfassen u.a.

CORE JAVA TRAINING COURSE CONTENT SECTION 1 : INTRODUCTION Introduction about Programming Language Paradigms Why Java? Flavors of Java. Java Designing Goal. Role of Java Programmer in Industry Features of Java Language. Installing Java Di