وبلاگ بلیان

Computational Framework for the Finite Element Method in MATLAB® and Python

معرفی کتاب «Computational Framework for the Finite Element Method in MATLAB® and Python» نوشتهٔ Sumets, Pavel، منتشرشده توسط نشر CRC Press در سال 2022. این کتاب در 8 صفحه، فرمت epub، زبان انگلیسی ارائه شده است. «Computational Framework for the Finite Element Method in MATLAB® and Python» در دستهٔ بدون دسته‌بندی قرار دارد.

Computational Framework for the Finite Element Method in MATLAB® and Python aims to provide a programming framework for coding linear FEM using matrix-based MATLAB® language and Python scripting language. It describes FEM algorithm implementation in the most generic formulation so that it is possible to apply this algorithm to as many application problems as possible. Readers can follow the step-by-step process of developing algorithms with clear explanations of its underlying mathematics and how to put it into MATLAB and Python code. The content is focused on aspects of numerical methods and coding FEM rather than FEM mathematical analysis. However, basic mathematical formulations for numerical techniques which are needed to implement FEM are provided. Particular attention is paid to an efficient programming style using sparse matrices. Features Contains ready-to-use coding recipes allowing fast prototyping and solving of mathematical problems using FEM Suitable for upper-level undergraduates and graduates in applied mathematics, science or engineering Both MATLAB and Python programming codes are provided to give readers more flexibility in the practical framework implementation Pavel Sumets is a research and development software engineer from New Zealand whose main interest and expertise are biomechanics, numerical methods and scientific programming. List of Examples Preface Acknowledgments Authors Chapter 1 Engineering and Scientific Calculations Chapter Objectives 1.1 Numerical Quantities 1.1.1 Positional and Scientific Notation 1.1.2 Accuracy and Precision 1.1.3 Significant Figures 1.1.4 Rounding 1.2 Mathematical Functions 1.2.1 Absolute Value and Sign Functions 1.2.2 Exponents and Logarithms 1.2.3 Trigonometric Functions 1.2.4 Hyperbolic Functions 1.3 Complex Numbers 1.4 Engineering Units 1.5 Organizing and Planning Solutions to Problems Problems Chapter 2 Computer-Based Calculations Chapter Objectives 2.1 Numerical Quantities as Stored in the Computer 2.1.1 Integer Numbers 2.1.2 Real Numbers 2.2 How the Computer Stores Text 2.3 Boolean True/False Information 2.4 Computer Storage Evolution and Terminology Problems Chapter 3 Python Basics Chapter Objectives 3.1 The Spyder/IPython Environment 3.2 Mathematical Functions 3.3 Variables and Assignment 3.4 Objects, Attributes, Methods, and Data Types 3.4.1 Boolean Type 3.4.2 Character Type 3.5 Collections of Data 3.6 Creating Plots 3.7 The Spyder Editor 3.8 Input and Output 3.8.1 Console Input and Output 3.8.2 File Input and Output 3.8.3 Formatting Output 3.9 Obtaining Help Problems Chapter 4 Structured Programming with Python Chapter Objectives 4.1 An Overview of Program Structure 4.2 Implementing Decision Structures with Python 4.3 Implementing Repetition Structures with Python 4.3.1 The General Loop Structure 4.3.2 The List-Driven and Count-Controlled Loop Structures 4.3.3 The break and Continue Statements with the for Loop 4.4 User-Defined Functions in Python 4.4.1 lambda Functions 4.4.2 Function Arguments 4.4.3 Variable Scope Problems Chapter 5 Graphics—Matplotlib Chapter Objectives 5.1 Introduction to Matplotlib 5.2 Customizing Line and Scatter Plots 5.3 Using Figure Window Objects 5.4 Creating Bar Plots Including Histograms 5.5 Creating Other Plots of Interest 5.6 Contour and Surface Plots Problems Chapter 6 Array and Matrix Operations Chapter Objectives 6.1 Creating Arrays in Python 6.1.1 Creating Special Arrays 6.1.2 Combining, Stacking, and Splitting Arrays 6.1.3 Reshaping Arrays 6.2 Indexing: Array Subscripts 6.3 Array Operations 6.4 Vector/Matrix Operations 6.4.1 Matrix/Vector Multiplication 6.4.2 Transpose 6.4.3 Matrix Inversion Problems Chapter 7 Solving Single Algebraic Equations Chapter Objectives 7.1 The Nature of Single, Nonlinear Equations in One Unknown 7.2 Bracketing Methods—Bisection 7.3 Bracketing Methods—False Position 7.4 Open Methods—Newton-Raphson 7.5 Open Methods—Modified Secant 7.6 Circular Methods—Fixed-Point Iteration 7.7 Circular Methods—The Wegstein Method 7.8 A Hybrid Approach—Brent’s Method 7.9 Solving for the Roots of Polynomials 7.10 Case Study: Trajectories of Projectiles in Air Problems Chapter 8 Solving Sets of Algebraic Equations Chapter Objectives 8.1 Systems of Linear Algebraic Equations 8.2 Solving Small Numbers of Linear Algebraic Equations 8.2.1 Graphical Method 8.2.2 Determinants and Cramer’s Rule 8.2.2.1 Determinants 8.2.2.2 Cramer’s Rule 8.2.3 Elimination of Unknowns 8.3 Gaussian Elimination 8.3.1 Naive Gaussian Elimination 8.3.2 Gaussian Elimination Computer Algorithm 8.3.2.1 Naive Gaussian Elimination Algorithm 8.3.2.2 Adding Determinant Evaluation 8.3.2.3 Partial Pivoting 8.3.2.4 Detecting Singular and Ill-Conditioned Systems 8.4 Solving Sets of Linear Equations with the NumPy linalg Module 8.5 Solving Sets of Nonlinear Algebraic Equations 8.5.1 Solution of Nonlinear Algebraic Equations by Successive Substitution 8.5.2 The Newton-Raphson Method for Nonlinear Systems of Equations 8.6 Use of the root Function from the SciPy optimize Module to Solve Nonlinear Equations Problems Chapter 9 Solving Differential Equations Chapter Objectives 9.1 Describing Differential Equations 9.2 Quadrature – Finding the Area under the Curve 9.2.1 Pre-computer Methods 9.2.2 Quadrature for Continuous Functions 9.2.3 The quad Function from SciPy’s integrate Module 9.2.4 Quadrature for Discrete Data 9.3 Solving Differential Equations with Initial Conditions 9.3.1 Euler’s Method 9.3.2 Heun’s Method 9.3.3 Systems of Differential Equations 9.4 Solving Differential Equations with the solve _ ivp Function from SciPy’s integrate Module Problems Chapter 10 Working with Data Chapter Objectives 10.1 Characterizing Data Sets: Initial Observations and Sample Statistics 10.1.1 General Data Concepts 10.1.2 Sample Statistics: Central Tendency and Dispersion 10.1.2.1 Central Tendency 10.1.2.2 Spread or Dispersion 10.1.3 Using Boxplots to Diagnose Outliers 10.2 Distributions 10.2.1 Several Important Distributions 10.2.1.1 Uniform Distribution 10.2.1.2 Normal Distribution 10.2.1.3 Weibull Distribution 10.2.2 Python and Distributions 10.2.3 Random Numbers 10.3 Making Claims Based on Data 10.3.1 Comparison of Data with a Standard 10.3.2 Comparison between Two Samples 10.3.3 Determining Whether Data Are Normally Distributed 10.4 Fitting Mathematical Models to Data 10.4.1 Straight-line Linear Regression 10.4.2 Fitting Polynomials 10.4.3 General Issues and Precautions Problems References Index Index of Python Terminology "Computational Framework for the Finite Element Method in MATLAB and Python aims to provide a programming framework for coding linear FEM using matrix-based MATLAB language and Python scripting language. It describes FEM algorithm implementation in the most generic formulation so that it is possible to apply this algorithm to as many application problems as possible. Readers can follow the step-by-step process of developing algorithms with clear explanations of its underlying mathematics and how to put it into MATLAB and Python code. The content is focused on aspects of numerical methods and coding FEM rather than FEM mathematical analysis. However, basic mathematical formulations for numerical techniques which are needed to implement FEM are provided. Particular attention is paid to an efficient programming style using sparse matrices. Features Contains ready-to-use coding recipes allowing fast prototyping and solving of mathematical problems using FEM. Suitable for upper-level undergraduates and graduates in applied mathematics, science, or engineering. Both MATLAB and Python programming codes are provided to give readers more flexibility in the practical framework implementation"-- Provided by publisher This book aims to provide a programming framework for coding linear FEM using matrix-based MATLAB language and Python scripting language. It describes FEM algorithm implementation in the most generic formulation so that it is possible to apply this algorithm to as many application problems as possible.
دانلود کتاب Computational Framework for the Finite Element Method in MATLAB® and Python