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
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
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
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
<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
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
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