1st Edition

Introduction to Modern Scientific Programming and Numerical Methods

By Lubos Brieda, Joseph Wang Copyright 2024
    474 Pages 92 B/W Illustrations
    by CRC Press

    The ability to use computers to solve mathematical relationships is a fundamental skill for anyone planning a career in science or engineering. For this reason, numerical analysis is part of the core curriculum for just about every undergraduate physics and engineering department. But for most physics and engineering students, practical programming is a self-taught process.

    This book introduces the reader not only to the mathematical foundation but also to the programming paradigms encountered in modern hybrid software-hardware scientific computing. After completing the text, the reader will be well-versed in the use of different numerical techniques, programming languages, and hardware architectures, and will be able to select the appropriate software and hardware tool for their analysis.

    It can serve as a textbook for undergraduate courses on numerical analysis and scientific computing courses within engineering and physical sciences departments. It will also be a valuable guidebook for researchers with experimental backgrounds interested in working with numerical simulations, or for any new personnel working in scientific computing or data analysis.

    Key Features:

    •          Includes examples of solving numerical problems in multiple programming languages, including MATLAB, Python, Fortran, C++, Arduino, Javascript, and Verilog.

    •          Provides an introduction to modern high-performance computing technologies including multithreading, distributed computing, GPUs, microcontrollers, FPGAs, and web "cloud computing".

    •          Contains an overview of numerical techniques not found in other introductory texts including particle methods, finite volume and finite element methods, Vlasov solvers, and molecular dynamics.

    Companions websites for this book can be accessed at https://plasmasimulationsbyexample.com/ and https://www.scientificprogrammingbook.com/.

    Lubos Brieda holds a Ph.D. in Aerospace and Mechanical Aerospace Engineering from the George Washington University in Washington, D.C., USA and an M.Sc. in Aerospace and Ocean Engineering from Virginia Tech in Blacksburg, VA, USA. He is the president of Particle in Cell Consulting, LLC, Westlake Village, CA, USA, while also serving as a part-time lecturer in the Department of Astronautical Engineering at University of Southern California, Los Angeles, CA. Dr. Brieda is the author of numerous simulation codes utilized by the aerospace and plasma modeling communities. Additionally, he maintains an online blog found at particleincell.com/blog focusing on scientific computing and since 2014 he has been teaching online courses on plasma simulations through his website.

    Joseph Wang is a Professor of Astronautics and Aerospace and Mechanical Engineering at the University of Southern California. Prof. Wang received his Ph.D in Aeronautics and Astronautics from Massachusetts Institute of Technology in 1991. Prof. Wang conducts research in computational physics, space technology, and space and planetary science. He and his students have developed many computer simulation models utilizing particle-in-cell, Vlasov, and molecular dynamics simulation for large-scale first-principle-based simulations in these areas. He has more than 300 publications.

    Robert Martin received his B.S. in Aerospace Engineering from Iowa State University and his M.S. and Ph.D in Computational Science, Mathematics, and Engineering focused on modeling non-equilibrium gas and plasma at the University of California, San Diego. He joined the Air Force Research Laboratory (AFRL) In-Space Propulsion branch in 2011 leading the development of a new multiscale/multiphysics modeling framework for spacecraft plasma. He joined the Army Research Office to run the Modeling of Complex Systems Program in 2021.

    Chapter 1: Scientific Computing Basics. Chapter 2: Finite Difference and Linear Algebra. Chapter 3: Numerical Analysis. Chapter 4: Introduction to C++. Chapter 5: Kinetic Methods. Chapter 6: Eulerian Methods. Chapter 7: Interactive Applications. Chapter 8: Software Engineering. Chapter 9: High Performance Computing. Chapter 10: Optimization and Machine Learning. Chapter 11: Embedded Systems. Appendix A: Fortran 77 Syntax. References.   

    Biography

    Lubos Brieda holds a Ph.D. in Aerospace and Mechanical Aerospace Engineering from the George Washington University in Washington, D.C., USA and an M.Sc. in Aerospace and Ocean Engineering from Virginia Tech in Blacksburg, VA, USA. He is the president of Particle in Cell Consulting, LLC, Westlake Village, CA, USA, while also serving as a part time lecturer in the Department of Astronautical Engineering at University of Southern California, Los Angeles, CA. Dr. Brieda is the author of numerous simulation codes utilized by the aerospace and plasma modeling communities. Additionally, he maintains an online blog found at particleincell.com/blog focusing on scientific computing and since 2014 he has been teaching online courses on plasma simulations through his website.

    Joseph Wang is Professor of Astronautics and Aerospace and Mechanical Engineering at University of Southern California (USC). Prof. Wang received his Ph.D in Aeronautics and Astronautics from Massachusetts Institute of Technology in 1991. Prior to joining the faculty at USC in 2008, he had been a principal member of engineering staff at NASA’s Jet Propulsion Laboratory, and on the aerospace engineering faculty at Virginia Tech. Prof. Wang conducts research in computational physics, space technology, and space and planetary sciences. He and his students have developed many computer simulation models utilizing particle-in-cell (PIC), Vlasov, and molecular dynamics simulation for first-principle based large-scale simulations in these areas. He has more than 300 publications. Prof. Wang can be contacted at [email protected].

    Robert Martin received his B.S. in Aerospace Engineering from Iowa State University and his M.S. and Ph.D in Computational Science, Mathematics, and Engineering focused on modeling non-equilibrium gas and plasma at the University of California, San Diego. He joined the Air Force Research Laboratory (AFRL) In-Space Propulsion branch in 2011 leading the development of a new multiscale/multiphysics modeling framework for spacecraft plasma. He joined the Army Research Office to run the Modeling of Complex Systems Program in 2021.