𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Introduction to numerical programming: a practical guide for scientists and engineers using Python and C/C++

✍ Scribed by Titus A. Beu


Publisher
CRC Press
Year
2015
Tongue
English
Leaves
663
Series
Series in computational physics
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Makes Numerical Programming More Accessible to a Wider Audience

Bearing in mind the evolution of modern programming, most specifically emergent programming languages that reflect modern practice, Numerical Programming: A Practical Guide for Scientists and Engineers Using Python and C/C++ utilizes the author’s many years of practical research and teaching experience to offer a systematic approach to relevant programming concepts. Adopting a practical, broad appeal, this user-friendly book offers guidance to anyone interested in using numerical programming to solve science and engineering problems. Emphasizing methods generally used in physics and engineering?from elementary methods to complex algorithms?it gradually incorporates algorithmic elements with increasing complexity.

Develop a Combination of Theoretical Knowledge, Efficient Analysis Skills, and Code Design Know-How
The book encourages algorithmic thinking, which is essential to numerical analysis. Establishing the fundamental numerical methods, application numerical behavior and graphical output needed to foster algorithmic reasoning, coding dexterity, and a scientific programming style, it enables readers to successfully navigate relevant algorithms, understand coding design, and develop efficient programming skills. The book incorporates real code, and includes examples and problem sets to assist in hands-on learning.

Begins with an overview on approximate numbers and programming in Python and C/C++, followed by discussion of basic sorting and indexing methods, as well as portable graphic functionality
Contains methods for function evaluation, solving algebraic and transcendental equations, systems of linear algebraic equations, ordinary differential equations, and eigenvalue problems
Addresses approximation of tabulated functions, regression, integration of one- and multi-dimensional functions by classical and Gaussian quadratures, Monte Carlo integration techniques, generation of random variables, discretization methods for ordinary and partial differential equations, and stability analysis
This text introduces platform-independent numerical programming using Python and C/C++, and appeals to advanced undergraduate and graduate students in natural sciences and engineering, researchers involved in scientific computing, and engineers carrying out applicative calculations.

✦ Table of Contents


Content: Approximate NumbersSources of Errors in Numerical CalculationsAbsolute and Relative ErrorsRepresentation of NumbersSignificant DigitsErrors of Elementary OperationsReferences and Suggested Further ReadingBasic Programming TechniquesProgramming ConceptsFunctions and ParametersPassing Arguments to Python FunctionsPassing Arguments to C/C++ FunctionsArrays in PythonDynamic Array Allocation in C/C++Basic Matrix OperationsReferences and Suggested Further ReadingElements of Scientific GraphicsThe Tkinter PackageThe Canvas WidgetSimple Tkinter ApplicationsPlotting Functions of One VariableGraphics Library graphlib.pyCreating Plots in C++ Using the Library graphlib.pyReferences and Suggested Further ReadingSorting and IndexingIntroductionBubble SortInsertion SortQuicksortIndexing and RankingImplementations in C/C++ProblemsReferences and Suggested Further ReadingEvaluation of FunctionsEvaluation of Polynomials by Horner's SchemeEvaluation of Analytic FunctionsContinued FractionsOrthogonal PolynomialsSpherical Harmonics Associated Legendre FunctionsSpherical Bessel FunctionsImplementations in C/C++ProblemsReferences and Suggested Further ReadingAlgebraic and Transcendental EquationsRoot SeparationBisection MethodMethod of False PositionMethod of Successive ApproximationsNewton's MethodSecant MethodBirge-Vieta MethodNewton's Method for Systems of Nonlinear EquationsImplementations in C/C++ProblemsReferences and Suggested Further ReadingSystems of Linear EquationsIntroductionGaussian Elimination with Backward SubstitutionGauss-Jordan EliminationLU FactorizationInversion of Triangular MatricesCholesky FactorizationTridiagonal Systems of Linear EquationsBlock Tridiagonal Systems of Linear EquationsComplex Matrix EquationsJacobi and Gauss-Seidel Iterative MethodsImplementations in C/C++ProblemsReferences and Suggested Further ReadingEigenvalue ProblemsIntroductionDiagonalization of Matrices by Similarity TransformationsJacobi MethodGeneralized Eigenvalue Problems for Symmetric MatricesImplementations in C/C++ProblemsReferences and Suggested Further ReadingModeling of Tabulated FunctionsInterpolation and RegressionLagrange Interpolation PolynomialNeville's Interpolation MethodCubic Spline InterpolationLinear RegressionMultilinear Regression ModelsNonlinear Regression: The Levenberg-Marquardt MethodImplementations in C/C++ProblemsReferences and Suggested Further ReadingIntegration of FunctionsIntroductionTrapezoidal Rule
A Heuristic ApproachThe Newton-Cotes Quadrature FormulasTrapezoidal RuleSimpson's RuleAdaptive Quadrature MethodsRomberg's MethodImproper Integrals: Open FormulasMidpoint RuleGaussian QuadraturesMultidimensional IntegrationAdaptive Multidimensional IntegrationImplementations in C/C++ProblemsReferences and Suggested Further ReadingMonte Carlo MethodIntroductionIntegration of FunctionsImportance SamplingMultidimensional IntegralsGeneration of Random NumbersImplementations in C/C++ProblemsReferences and Suggested Further ReadingOrdinary Differential EquationsIntroductionTaylor Series MethodEuler's MethodRunge-Kutta MethodsAdaptive Step Size ControlMethods for Second-Order ODEsNumerov's MethodShooting Methods for Two-Point ProblemsFinite-Difference Methods for Linear Two-Point ProblemsImplementations in C/C++ProblemsReferences and Suggested Further ReadingPartial Differential EquationsIntroductionBoundary-Value Problems for Elliptic Differential EquationsInitial-Value Problems for Parabolic Differential EquationsTime-Dependent Schrodinger EquationInitial-value Problems for Hyperbolic Differential EquationsImplementations in C/C++ProblemsReferences and Suggested Further ReadingAppendicesIndex

✦ Subjects


Physics;Data processing.;Engineering;Data processing.;Computer programming.;Python (Computer program language);C (Computer program language);C++ (Computer program language)


πŸ“œ SIMILAR VOLUMES


Introduction to Numerical Programming: A
✍ Titus A. Beu πŸ“‚ Library πŸ“… 2014 πŸ› CRC Press 🌐 English

Makes Numerical Programming More Accessible to a Wider Audience Bearing in mind the evolution of modern programming, most specifically emergent programming languages that reflect modern practice, Numerical Programming: A Practical Guide for Scientists and Engineers Using Python and C/C++ utilizes th

Python Programming and Numerical Methods
✍ Qingkai Kong, Timmy Siauw, Alexandre Bayen πŸ“‚ Library πŸ“… 2020 πŸ› Academic Press 🌐 English

Python Programming and Numerical Methods: A Guide for Engineers and Scientists introduces programming tools and numerical methods to engineering and science students, with the goal of helping the students to develop good computational problem-solving techniques through the use of numerical methods a

An Introduction to Python Programming fo
✍ Johnny Wei-Bing Lin, Hannah Aizenman, Erin Manette Cartas Espinel, Kim Gunnerson πŸ“‚ Library πŸ“… 2022 πŸ› Cambridge University Press 🌐 English

<span>Python is one of the most popular programming languages, widely used for data analysis and modelling, and is fast becoming the leading choice for scientists and engineers. Unlike other textbooks introducing Python, typically organised by language syntax, this book uses many examples from acros

C for Engineers and Scientists: An Intro
✍ Gary J. Bronson, Howard Silver πŸ“‚ Library πŸ“… 1993 πŸ› Thomson Learning 🌐 English

This text introduces the C programming language using a range of engineering and science applications in the examples and exercises. The book assumes no programming experience and is suitable for an introduction to programming course (using C instead of Fortran or Pascal). Structured programming pri

C for Engineers and Scientists: An Intro
✍ Gary J. Bronson, Howard Silver πŸ“‚ Library πŸ“… 1993 πŸ› West Publishing Company 🌐 English

This text introduces the C programming language using a range of engineering and science applications in the examples and exercises. The book assumes no programming experience and is suitable for an introduction to programming course (using C instead of Fortran or Pascal). Structured programming pri