Atjaunināt sīkdatņu piekrišanu

E-grāmata: Plasma Simulations by Example

  • Formāts: 368 pages
  • Izdošanas datums: 13-Dec-2019
  • Izdevniecība: CRC Press
  • Valoda: eng
  • ISBN-13: 9780429801068
Citas grāmatas par šo tēmu:
  • Formāts - PDF+DRM
  • Cena: 57,60 €*
  • * ši ir gala cena, t.i., netiek piemērotas nekādas papildus atlaides
  • Ielikt grozā
  • Pievienot vēlmju sarakstam
  • Šī e-grāmata paredzēta tikai personīgai lietošanai. E-grāmatas nav iespējams atgriezt un nauda par iegādātajām e-grāmatām netiek atmaksāta.
  • Formāts: 368 pages
  • Izdošanas datums: 13-Dec-2019
  • Izdevniecība: CRC Press
  • Valoda: eng
  • ISBN-13: 9780429801068
Citas grāmatas par šo tēmu:

DRM restrictions

  • Kopēšana (kopēt/ievietot):

    nav atļauts

  • Drukāšana:

    nav atļauts

  • Lietošana:

    Digitālo tiesību pārvaldība (Digital Rights Management (DRM))
    Izdevējs ir piegādājis šo grāmatu šifrētā veidā, kas nozīmē, ka jums ir jāinstalē bezmaksas programmatūra, lai to atbloķētu un lasītu. Lai lasītu šo e-grāmatu, jums ir jāizveido Adobe ID. Vairāk informācijas šeit. E-grāmatu var lasīt un lejupielādēt līdz 6 ierīcēm (vienam lietotājam ar vienu un to pašu Adobe ID).

    Nepieciešamā programmatūra
    Lai lasītu šo e-grāmatu mobilajā ierīcē (tālrunī vai planšetdatorā), jums būs jāinstalē šī bezmaksas lietotne: PocketBook Reader (iOS / Android)

    Lai lejupielādētu un lasītu šo e-grāmatu datorā vai Mac datorā, jums ir nepieciešamid Adobe Digital Editions (šī ir bezmaksas lietotne, kas īpaši izstrādāta e-grāmatām. Tā nav tas pats, kas Adobe Reader, kas, iespējams, jau ir jūsu datorā.)

    Jūs nevarat lasīt šo e-grāmatu, izmantojot Amazon Kindle.

"The study of plasmas is crucial in improving our understanding of the universe, and they are being increasingly utilised in key technologies such as spacecraft thrusters, plasma medicine, and fusion energy. Providing readers with an easy to follow set of examples that clearly illustrate how simulation codes are written, this book guides readers through how to develop C++ computer codes for simulating plasmas primarily with the kinetic Particle in Cell (PIC) method. This text will be invaluable to advanced undergraduates and graduate students in physics and engineering looking to learn how to put the theory to the test. Features: Provides a step-by-step introduction to plasma simulations with easy to follow examples Discusses the electrostatic and electromagnetic Particle in Cell (PIC) method on structured and unstructured meshes, magnetohydrodynamics (MHD), and Vlasov solvers Covered topics include Direct Simulation Monte Carlo (DSMC) collisions, surface interactions, axisymmetry, and parallelization strategies"--

The study of plasmas is crucial in improving our understanding of the universe, and they are being increasingly utilised in key technologies such as spacecraft thrusters, plasma medicine, and fusion energy. Providing readers with an easy to follow set of examples that clearly illustrate how simulation codes are written, this book guides readers through how to develop C++ computer codes for simulating plasmas primarily with the kinetic Particle in Cell (PIC) method. This text will be invaluable to advanced undergraduates and graduate students in physics and engineering looking to learn how to put the theory to the test.

Features:

  • Provides a step-by-step introduction to plasma simulations with easy to follow examples
  • Discusses the electrostatic and electromagnetic Particle in Cell (PIC) method on structured and unstructured meshes, magnetohydrodynamics (MHD), and Vlasov solvers
    • Covered topics include Direct Simulation Monte Carlo (DSMC) collisions, surface interactions, axisymmetry, and parallelization strategies.
  • Lubos Brieda

    has over 15 years of experience developing plasma and gas simulation codes for electric propulsion, contamination transport, and plasma-surface interactions. As part of his master’s research work, he developed a 3D ES-PIC electric propulsion plume code, Draco, which is to this date utilized by government labs and private aerospace firms to study plasma thruster plumes. His Ph.D, obtained in 2012 from George Washington University, USA, focused on a multi-scale model for Hall thrusters utilizing fluid-kinetic hybrid PIC codes. He has since then been involved in numerous projects involving development and the use of plasma simulation tools. Since 2014 he has been teaching online courses on plasma simulations through his website: particleincell.com.



    Providing the reader with an easy to follow set of examples, this new book guides readers how to develop C++ computer codes for simulating plasmas primarily with the kinetic Particle in Cell (PIC) method. This text would be invaluable to advanced undergraduates and graduate students looking to learn how to put the theory to the test.

    Preface xvii
    Chapter 1 Fundamentals
    1(44)
    1.1 Introduction
    1(1)
    1.2 Gas Simulation Approaches
    1(10)
    1.2.1 Direct Method
    2(1)
    1.2.2 Boltzmann Equation
    3(2)
    1.2.3 Maxwell-Boltzmann Distribution Function
    5(1)
    1.2.4 Fluid and Kinetic Methods
    6(2)
    1.2.5 Lagrangian and Eulerian Descriptions
    8(1)
    1.2.6 Comparison of Fluid and Kinetic Approaches
    9(2)
    1.3 Electrostatic Particle in Cell Method
    11(3)
    1.3.1 Lorentz Force
    11(1)
    1.3.2 Maxwell's Equations
    12(1)
    1.3.3 Poisson's Equation
    13(1)
    1.3.4 Simulation Main Loop
    13(1)
    1.4 Single Particle Motion
    14(27)
    1.4.1 Domain Discretization
    15(4)
    1.4.2 Finite Difference Method
    19(1)
    1.4.3 Potential Solver
    20(1)
    1.4.3.1 Tridiagonal Algorithm
    21(2)
    1.4.3.2 Jacobi Iteration
    23(1)
    1.4.3.3 Gauss-Seidel Scheme
    24(1)
    1.4.3.4 Successive Over Relaxation
    24(1)
    1.4.3.5 Convergence Check
    25(2)
    1.4.4 Electric Field
    27(2)
    1.4.5 Particle Motion
    29(1)
    1.4.5.1 Forward Euler Method
    30(1)
    1.4.5.2 Backward Euler
    31(1)
    1.4.5.3 Leapfrog Method
    31(2)
    1.4.5.4 Alternative Approaches
    33(1)
    1.4.6 Interpolation
    34(2)
    1.4.7 Diagnostics
    36(5)
    1.5 Summary
    41(4)
    Chapter 2 Grounded Box
    45(58)
    2.1 Introduction
    45(1)
    2.2 Simulation Setup
    45(2)
    2.2.1 Pseudocode
    46(1)
    2.3 World Object
    47(7)
    2.3.1 Constructor
    48(1)
    2.3.2 Declaration and Implementation
    49(1)
    2.3.3 Multiple Files
    50(2)
    2.3.4 Header Guards
    52(1)
    2.3.5 Implementation
    52(1)
    2.3.6 Mesh Resolution
    53(1)
    2.4 Field Object
    54(12)
    2.4.1 Memory Allocation
    55(1)
    2.4.2 Operator Overloading
    56(2)
    2.4.3 Templates
    58(1)
    2.4.4 Move and Copy Constructors
    59(1)
    2.4.5 Additional Operators
    60(1)
    2.4.6 Output
    61(1)
    2.4.7 Three-Component Vectors
    61(2)
    2.4.8 Adding Fields to World
    63(1)
    2.4.9 Initial Output
    63(2)
    2.4.10 Visualization
    65(1)
    2.5 Potential Solver
    66(4)
    2.6 Electric Field
    70(2)
    2.7 Particles
    72(9)
    2.7.1 Particle Loading
    73(1)
    2.7.2 Random Numbers
    74(3)
    2.7.3 Node Volumes
    77(1)
    2.7.4 Scatter: Particle to Mesh Interpolation
    78(3)
    2.7.5 Number Density
    81(1)
    2.8 Charge Density
    81(4)
    2.8.1 Numerical Noise
    82(1)
    2.8.2 Quiet Start
    83(2)
    2.9 Particle Push
    85(7)
    2.9.1 Gather: Mesh to Particle Interpolation
    86(1)
    2.9.2 Velocity and Position Update
    87(1)
    2.9.3 Particle Boundary Check
    88(1)
    2.9.4 Velocity Rewind
    89(2)
    2.9.5 Time Step
    91(1)
    2.10 Diagnostics
    92(4)
    2.10.1 Elapsed Time
    94(1)
    2.10.2 Particle Counts, Momentum, and Energy
    94(1)
    2.10.3 Animation
    95(1)
    2.11 Main Loop
    96(1)
    2.12 Results
    97(1)
    2.12.1 Convergence Check
    98(1)
    2.13 Summary
    98(5)
    Chapter 3 Flow Around a Sphere
    103(34)
    3.1 Introduction
    103(1)
    3.2 Simulation Domain
    103(2)
    3.3 Potential Solver
    105(7)
    3.3.1 Sugarcubing
    105(2)
    3.3.2 Neumann Boundaries
    107(1)
    3.3.3 Boltzmann Electron Model
    108(1)
    3.3.4 Non-Linear Poisson Solver
    109(3)
    3.4 Particle Injection and Removal
    112(6)
    3.4.1 Cold Beam Source
    113(2)
    3.4.2 Particle Removal
    115(2)
    3.4.3 Alternate Storage Schemes
    117(1)
    3.5 Steady State and Data Averaging
    118(3)
    3.6 Potential Solver Revisited
    121(13)
    3.6.1 Matrix Representation
    122(2)
    3.6.2 Sparse Matrix
    124(3)
    3.6.3 Preconditioned Conjugate Gradient Solver
    127(2)
    3.6.4 Newton-Raphson Linearization
    129(3)
    3.6.5 Quasi-Neutral Approximation
    132(2)
    3.7 Summary
    134(3)
    Chapter 4 Material Interactions
    137(46)
    4.1 Introduction
    137(1)
    4.2 Multiple Species
    137(1)
    4.3 Surface Interactions
    138(8)
    4.3.1 Rebound Algorithm
    138(3)
    4.3.2 Diffuse Reflection
    141(2)
    4.3.3 Reflection Velocity
    143(1)
    4.3.4 Species Change
    144(1)
    4.3.5 Sputtering and Surface Emission
    145(1)
    4.4 Warm Beam
    146(8)
    4.4.1 Velocity Sampling
    149(4)
    4.4.2 Particle Merge
    153(1)
    4.5 Diagnostics
    154(8)
    4.5.1 Macroscopic Properties
    154(4)
    4.5.2 Macroparticle Count
    158(1)
    4.5.3 Particle Plots
    159(3)
    4.6 Collisions
    162(6)
    4.6.1 Collision Cross Section
    163(1)
    4.6.2 Collision Modeling
    164(1)
    4.6.3 Chemistry
    164(2)
    4.6.4 Monte Carlo Collisions (MCC)
    166(2)
    4.7 DSMC
    168(5)
    4.7.1 Particle Sorting
    169(1)
    4.7.2 Collision Groups
    169(1)
    4.7.3 Collision Probability
    170(1)
    4.7.4 Momentum Exchange Collision Handler
    171(2)
    4.8 Subcycling
    173(1)
    4.9 Dielectric Boundaries
    174(2)
    4.10 Discretized Surfaces
    176(4)
    4.10.1 Line Triangle Intersection
    177(1)
    4.10.2 Particle Impacts
    178(1)
    4.10.3 Caveats
    179(1)
    4.11 Summary
    180(3)
    Chapter 5 Symmetry
    183(22)
    5.1 Introduction
    183(1)
    5.2 Symmetry
    183(2)
    5.2.1 Domain Boundary Condition
    183(1)
    5.2.2 Particles
    184(1)
    5.2.3 Results
    185(1)
    5.3 Periodic Systems
    185(4)
    5.3.1 Domain Boundary
    186(2)
    5.3.2 Particles
    188(1)
    5.3.3 Density Synchronization
    188(1)
    5.3.4 Results
    189(1)
    5.4 Two-Dimensional Codes
    189(1)
    5.5 Planar (XY) Codes
    190(4)
    5.5.1 Node Volumes
    191(1)
    5.5.2 Data Containers
    192(1)
    5.5.3 Scatter and Gather
    193(1)
    5.5.4 Output
    194(1)
    5.6 Axisymmetric (RZ) Codes
    194(8)
    5.6.1 Node Volumes
    194(1)
    5.6.2 Finite Volume Method
    195(3)
    5.6.3 Particle Source
    198(1)
    5.6.4 Scatter and Gather
    199(1)
    5.6.5 Particle Rotation
    200(2)
    5.6.6 Results
    202(1)
    5.7 Summary
    202(3)
    Chapter 6 Unstructured Meshes
    205(44)
    6.1 Introduction
    205(1)
    6.2 Mesh Geometry
    205(10)
    6.2.1 Mesh Generation
    206(1)
    6.2.2 Mesh Formats
    207(3)
    6.2.3 Mesh Import
    210(2)
    6.2.4 Cell Volumes
    212(1)
    6.2.5 Field Object
    212(1)
    6.2.6 Node Volumes
    213(1)
    6.2.7 Output
    213(2)
    6.3 Particle Injection
    215(2)
    6.4 Mesh Interpolation
    217(7)
    6.4.1 Shape Factors
    218(2)
    6.4.2 Cell Search
    220(2)
    6.4.3 Cell Neighbors
    222(1)
    6.4.4 Scatter and Gather
    223(1)
    6.5 Particle Motion
    224(1)
    6.5.1 Number Density
    224(1)
    6.5.2 Neutral Results
    225(1)
    6.6 Finite Element Method
    225(12)
    6.6.1 Strong Form
    226(1)
    6.6.2 Weak Form
    226(1)
    6.6.3 Galerkin Form
    227(1)
    6.6.4 Formulation with Shape Functions
    228(1)
    6.6.5 Matrix Form
    228(2)
    6.6.6 Element View
    230(1)
    6.6.7 Matrix Assembly
    231(1)
    6.6.8 Quadrature
    231(2)
    6.6.9 Shape Functions
    233(1)
    6.6.10 Coordinate Transformation
    234(1)
    6.6.11 Single Element Algorithm
    235(1)
    6.6.12 Derivatives
    236(1)
    6.6.13 Tetrahedral Element
    236(1)
    6.7 Putting It all Together
    237(8)
    6.7.1 Initialization
    237(1)
    6.7.2 Matrix Assembly
    238(2)
    6.7.3 Shape Function Derivatives
    240(2)
    6.7.4 Nonlinear Solver
    242(2)
    6.7.5 Solution Assembly
    244(1)
    6.7.6 Electric Field
    245(1)
    6.7.7 Results
    245(1)
    6.8 Summary
    245(4)
    Chapter 7 Electromagnetics
    249(24)
    7.1 Introduction
    249(1)
    7.2 Classification
    249(1)
    7.3 Magnetization
    249(4)
    7.3.1 Boris Push
    250(3)
    7.4 Magnetostatics
    253(5)
    7.4.1 Vector Potential
    254(1)
    7.4.2 Scalar Potential
    254(1)
    7.4.3 Magnetized Sphere
    255(3)
    7.5 Electromagnetic PIC
    258(11)
    7.5.1 Curl
    259(1)
    7.5.2 Staggered Grid
    260(1)
    7.5.3 Time Integration
    261(1)
    7.5.4 Boundary Conditions
    262(1)
    7.5.5 Gauss' Law
    262(1)
    7.5.6 Putting It All Together
    263(1)
    7.5.7 Approximations
    264(1)
    7.5.8 Relativistic Push
    264(1)
    7.5.9 Example
    265(4)
    7.6 Summary
    269(4)
    Chapter 8 Eulerian Methods
    273(32)
    8.1 Introduction
    273(1)
    8.2 Magnetohydrodynamics
    273(5)
    8.2.1 Conservation Equations
    273(3)
    8.2.2 Single Fluid MHD Equations
    276(2)
    8.3 Advection-Diffusion Equation
    278(15)
    8.3.1 Steady State Form
    279(4)
    8.3.2 Unsteady Problem
    283(3)
    8.3.3 Stability Analysis
    286(1)
    8.3.4 Alternative Time Integration Methods
    287(2)
    8.3.5 Example
    289(4)
    8.4 Electron Models
    293(3)
    8.4.1 Polytropic Relationship
    294(1)
    8.4.2 Detailed Electron Model
    295(1)
    8.5 Vlasov Solvers
    296(6)
    8.5.1 Two-Stream Instability Example
    297(5)
    8.6 Summary
    302(3)
    Chapter 9 Parallel Programming
    305(34)
    9.1 Introduction
    305(1)
    9.2 Architectures
    305(6)
    9.2.1 Multithreading
    307(1)
    9.2.2 MPI
    308(2)
    9.2.3 CUDA
    310(1)
    9.3 Caveats
    311(6)
    9.3.1 Race Condition
    311(1)
    9.3.2 Locks
    312(1)
    9.3.3 Deadlock
    313(1)
    9.3.4 Overhead
    314(3)
    9.4 Profiling
    317(1)
    9.5 Parallelization Strategies
    318(2)
    9.5.1 Domain Decomposition
    318(1)
    9.5.2 Ensemble Averaging
    319(1)
    9.5.3 GPU Concurrent Computing
    319(1)
    9.6 Examples
    320(16)
    9.6.1 Multithreaded Particle Push
    320(1)
    9.6.1.1 Number of Threads
    321(1)
    9.6.1.2 Density Calculation
    321(2)
    9.6.1.3 Parallel Efficiency
    323(1)
    9.6.2 MPI Domain Decomposition
    323(1)
    9.6.2.1 Subdomains
    324(2)
    9.6.2.2 Particle Transfer
    326(3)
    9.6.2.3 Boundary Update
    329(2)
    9.6.2.4 Potential Solve
    331(2)
    9.6.3 CUDA Potential Solve
    333(3)
    9.7 Summary
    336(3)
    Bibliography 339(6)
    Index 345
    Lubos Brieda has over 10 years of experience developing plasma and gas simulation codes for electric propulsion, contamination transport, and plasma-surface interactions. As part of his masters research work, he developed a 3D ES-PIC electric propulsion plume code, Draco, which is to this date utilized by AFRL and private aerospace firms to study plasma thruster plumes. His Ph.D, obtained in 2012 from George Washington University, USA, focused on a multi-scale model for Hall thrusters utilizing fluid-kinetic hybrid PIC codes. Recently, after four years working as an engineer at NASA's Goddard Space Flight Centre, he developed a 3D particle-based contamination transport simulation program CTSP for modeling plume impingement, particulate redistribution during launch, and molecular transport in vacuum chambers. Since 2014 he has been teaching online courses on plasma simulations through his website.