Introduction to Modern Scientific Programming and Numerical Methods

دانلود کتاب Introduction to Modern Scientific Programming and Numerical Methods

33000 تومان موجود

کتاب مقدمه ای بر برنامه ریزی علمی نوین و روش های عددی نسخه زبان اصلی

دانلود کتاب مقدمه ای بر برنامه ریزی علمی نوین و روش های عددی بعد از پرداخت مقدور خواهد بود
توضیحات کتاب در بخش جزئیات آمده است و می توانید موارد را مشاهده فرمایید


این کتاب نسخه اصلی می باشد و به زبان فارسی نیست.


امتیاز شما به این کتاب (حداقل 1 و حداکثر 5):

امتیاز کاربران به این کتاب:        تعداد رای دهنده ها: 5


توضیحاتی در مورد کتاب Introduction to Modern Scientific Programming and Numerical Methods

نام کتاب : Introduction to Modern Scientific Programming and Numerical Methods
ویرایش : 1
عنوان ترجمه شده به فارسی : مقدمه ای بر برنامه ریزی علمی نوین و روش های عددی
سری :
نویسندگان : ,
ناشر : CRC Press
سال نشر : 2024
تعداد صفحات : 475
ISBN (شابک) : 0367671913 , 9780367671914
زبان کتاب : English
فرمت کتاب : pdf
حجم کتاب : 17 مگابایت



بعد از تکمیل فرایند پرداخت لینک دانلود کتاب ارائه خواهد شد. درصورت ثبت نام و ورود به حساب کاربری خود قادر خواهید بود لیست کتاب های خریداری شده را مشاهده فرمایید.


فهرست مطالب :


Cover
Half Title
Title Page
Copyright Page
Dedication
Contents
Preface
Author Bios
Chapter 1: Scientific Computing Basics
1.1. Introduction
1.2. Numerical Integration
1.3. Scientific Computing
1.4. Programming Languages
1.4.1. Machine Language
1.4.2. Compiled and Interpreted Languages
1.4.3. Example Algorithm
1.4.4. Fortran
1.4.5. BASIC
1.4.6. Pascal
1.4.7. C and C++
1.4.8. Java
1.4.9. MATLAB®
1.4.10. Julia
1.4.11. R
1.4.12. Haskell
1.4.13. Others
1.5. Python Implementation
1.5.1. File Output
1.5.2. Arrays and Plotting
1.5.3. List Initialization
1.5.4. NumPy Arrays
1.5.5. For-Loops
1.5.6. Conditional Statements
1.5.7. Functions
1.5.8. Random Numbers
1.5.9. Code Validation
1.5.10. Leapfrog Method
Chapter 2: Finite Difference and Linear Algebra
2.1. Taylor Series
2.1.1. First Derivative
2.1.2. Second Derivative
2.2. Finite Difference Discretization
2.2.1. Boundary Conditions
2.2.2. System of Equations
2.2.3. Gaussian Elimination
2.2.4. Matrix Representation
2.2.5. Matrix Algebra
2.2.6. Matrix Inverse
2.2.7. Matrix Types
2.3. Matrix Solvers
2.4. Solver Algorithms
2.4.1. Gauss-Jordan Elimination
2.4.2. Python Implementation
2.4.3. Tridiagonal Algorithm
2.5. Iterative Solvers
2.5.1. Jacobi Method
2.5.2. Gauss-Seidel Method
2.5.3. Convergence Check
2.5.4. Successive Over Relaxation (SOR)
2.6. 2D Heat Equation Solver
2.6.1. Sparse Matrix
2.6.2. Putting it all together
2.6.3. Iterative Solver Version
Chapter 3: Numerical Analysis
3.1. Data Fitting
3.1.1. Polynomial Fits
3.1.2. Spline Fits
3.1.3. Least Squares Fit
3.1.4. Fourier Series
3.2. Filtering
3.3. Probability Distributions
3.4. Quadrature
3.5. Root Finding
3.6. Additional Matrix Solver Algorithms
3.6.1. Multigrid
3.6.2. Conjugate Gradient
3.6.3. LU and Cholesky Decomposition
3.7. Eigenvalues
3.8. Non-Linear Systems
3.8.1. Poor Man’s Linearization
3.8.2. Newton-Raphson Linearization
Chapter 4: Introduction to C++
4.1. C and C++ Basics
4.1.1. Compilers and Development Environments
4.1.2. Main Function and Basic Code Structure
4.1.3. Variables
4.1.4. Comments and Preprocessor Directives
4.1.5. Functions
4.1.6. Header Files
4.1.7. Data Types
4.1.8. Strings
4.1.9. Floating Point Mathematics
4.1.10. Integer Division
4.1.11. Stream Input and Output
4.1.12. Variable Scope
4.1.13. Static Variables
4.1.14. Conditional Statements
4.1.15. Enumerations
4.1.16. Conditional Operator
4.1.17. Loops
4.1.18. Arrays and Dynamic Memory Allocation
4.1.19. Exceptions
4.2. C++ Tennis Ball Integrator
4.2.1. Initial Version
4.2.2. Diffuse Reflection
4.2.3. Random Numbers
4.2.4. Updated Version
4.2.5. Visualization
4.2.6. VTK PolyData Format
4.2.7. Structures
4.3. Pointers and References
4.3.1. Pointer Arithmetic
4.3.2. References
4.3.3. Call by Reference
4.3.4. Constant Arguments
4.3.5. Multi-Dimensional Arrays
4.3.6. Linked Lists
4.4. Object Oriented Programming
4.4.1. Constructors and Destructors
4.4.2. Initializer Lists
4.4.3. Access Control
4.4.4. Friends
4.4.5. Operator Overloading
4.4.6. Copy and Move
4.4.7. Static Member Functions and Namespaces
4.4.8. Inheritance and Polymorphism
4.4.9. Templates
4.4.10. Storage Containers
4.4.11. Smart Pointers
4.4.12. Lambda Functions and Functors
4.5. Heat Equation Solver in C++
4.5.1. Storage Objects
4.5.2. Matrix Solver
4.5.3. VTK ImageData Output
4.5.4. Main Driver
Chapter 5: Kinetic Methods
5.1. Introduction
5.1.1. Thermalization
5.1.2. Flow Properties
5.1.3. Knudsen Number
5.1.4. Kinetic Methods
5.2. Eulerian and Lagrangian Formulation
5.3. Reduced Dimensionality
5.4. Free Molecular Flow
5.4.1. Particle Storage
5.4.2. Computational Domain
5.4.3. Initialization
5.4.4. Sources
5.4.5. Main Loop
5.4.6. Particle Push
5.4.7. Particle Removal
5.4.8. Steady State
5.4.9. Mesh-Averaged Properties
5.4.10. Results
5.5. Collisions
5.5.1. Monte Carlo Collisions
5.5.2. Direct Simulation Monte Carlo
5.6. Particle in Cell
5.6.1. Lorentz Force
5.6.2. Electrostatics
5.6.3. Integration Algorithm
5.6.4. Hybrid Modeling
5.6.5. Sugarcubing
5.6.6. Initialization
5.6.7. Implementation
Chapter 6: Eulerian Methods
6.1. Introduction
6.2. Advection-Diffusion Equation
6.2.1. Diffusion Equation
6.2.2. PDE Classification
6.2.3. Advective Term
6.3. Integration Schemes
6.3.1. Forward Time Central Space (FTCS)
6.3.2. Von Neumann Stability Analysis
6.3.3. Predictor-Correct Method
6.3.4. Multipoint Methods
6.3.5. Runge-Kutta Methods
6.3.6. Leapfrog and Dufort-Frankel Methods
6.3.7. Euler Implicit Method
6.3.8. Crank-Nicolson Method
6.4. Vorticity-Stream Function Method
6.4.1. Stream Function
6.4.2. Vorticity Transport Equation
6.4.3. Boundary Conditions
6.4.4. Implementation
6.5. Vlasov Methods
6.5.1. Implementation
6.5.2. Initial Conditions
6.5.3. Simulation Main Loop
6.5.4. Electric Field
6.5.5. Interpolation
6.5.6. Visualization
6.6. Other Model Equations
6.6.1. First-Order Wave Equation
6.6.2. Diffusion Equation
6.6.3. Burger’s Equation
6.6.4. Maxwell’s Equations
6.7. Finite Volume Method
6.7.1. Surface Integral: Advection
6.7.2. Surface Integral: Diffusion
6.7.3. Combining Terms
6.7.4. Axisymmetric Formulation
Chapter 7: Interactive Applications
7.1. HTML
7.1.1. Common Elements
7.1.2. Styles
7.1.3. Classes and Ids
7.1.4. Dynamic Web Pages
7.2. Javascript
7.2.1. Developer Tools
7.2.2. Syntax
7.2.3. Mathematics
7.2.4. Arrays and Objects
7.2.5. Object-Oriented Programming
7.2.6. Accessing HTML Elements
7.2.7. Animation
7.3. Canvas
7.3.1. User Interaction
7.3.2. Keyboard and Mouse Interaction
7.3.3. Adding Dynamics
7.3.4. Colormap
7.4. File Access
7.4.1. XMLHttpRequest
7.4.2. External Javascript Files
7.4.3. File Input Button
7.4.4. Drag and Drop
7.4.5. File Output
7.5. WebGL
7.5.1. Shader Program
7.5.2. Shaders
7.5.3. Drawing Elements
7.5.4. Attributes, Varyings, and Uniforms
7.5.5. Textures
Chapter 8: Software Engineering
8.1. Debugging
8.1.1. Common Errors
8.1.2. Print Statements
8.1.3. Debuggers
8.1.4. Command Line Debugging
8.1.5. Memory Leaks
8.2. Large Projects
8.2.1. Make Files
8.2.2. Configuration Scripts
8.2.3. Libraries
8.3. Useful Libraries
8.3.1. BLAS and LAPACK
8.3.2. PETSc
8.3.3. OpenFOAM
8.3.4. VTK
8.3.5. Boost
8.3.6. Cython
8.3.7. Graphical User Interface Frameworks
8.4. Coding Standards
8.5. Code Testing
8.5.1. Verification and Validations
8.5.2. Uncertainty Analysis
8.5.3. Sensitivity Analysis
8.5.4. Convergence Studies
8.6. Version Control
8.7. Unit Testing
8.8. Code Documentation
8.9. LaTeX
8.9.1. Sections and References
8.9.2. Environments
8.9.3. Equations
8.9.4. Bibliography
Chapter 9: High-Performance Computing
9.1. Introduction
9.2. Serial Optimization
9.2.1. Profiling
9.2.2. Algorithm Modification
9.2.3. Code Optimization
9.2.4. Cache Misses
9.3. Parallel Processing
9.3.1. Multithreading
9.3.2. Thread Creation
9.3.3. Parallel Vector Addition
9.3.4. Parallel Efficiency
9.3.5. Threads with Classes
9.3.6. Dot Product
9.3.7. Locks and Mutexes
9.3.8. Atomics
9.4. Message Passing Interface (MPI)
9.4.1. MPI Dot Product
9.4.2. Send and Receive
9.4.3. Deadlock
9.4.4. Reduction
9.4.5. Domain Decomposition
9.4.6. Remote Access
9.4.7. Parallel Debugging
9.5. CUDA
9.5.1. Online Computational Resources
9.5.2. Vector Addition
9.5.3. Error Checking
9.5.4. Blocks
9.5.5. Timing
9.5.6. Pinned Memory
9.5.7. Streams
9.5.8. Dot Product
9.5.9. Concurrent MPI-CUDA Computation
9.5.10. Visualization
Chapter 10: Optimization and Machine Learning
10.1. Introduction
10.1.1. Cost Function
10.2. Optimization Approaches
10.2.1. Adaptive Search
10.2.2. Gradient Descent
10.2.3. Examples
10.3. Genetic Algorithms
10.4. Machine Learning
10.4.1. Neural Networks
10.4.2. Activation Functions
10.4.3. Cost Function
10.4.4. Back Propagation
10.4.5. Simple Neural Net in C++
10.4.6. Libraries
Chapter 11: Embedded Systems
11.1. Single-Board Computers
11.2. Microcontrollers
11.2.1. Electrical Components
11.2.2. Breadboards
11.2.3. Arduino Programming
11.2.4. Pin Interactions
11.2.5. Using Libraries
11.2.6. Interfacing with Python
11.2.7. Custom Libraries
11.3. FPGAs and Verilog
11.3.1. Development Environments
11.3.2. FPGA Hello World
11.3.3. Schematic View
11.3.4. Events
11.3.5. Data Types and Assignments
11.3.6. Clocks
11.3.7. Control Statements
11.3.8. IP Blocks
11.3.9. Simulation
11.3.10. FPGA Synergistic use with an Arduino
Appendix A: Fortran 77 Syntax
References
Index




پست ها تصادفی