Introduction to Scientific Programming and Simulation Using R - Owen Jones, Robert Maillardet, Andrew Robinson

Introduction to Scientific Programming and Simulation Using R

Buch | Hardcover
474 Seiten
2009
Chapman & Hall/CRC (Verlag)
978-1-4200-6872-6 (ISBN)
78,55 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Surveys a range of mathematical tools that either require or are illuminated by scientific computation. This work focuses on the use of R, an open-source programming environment. It covers input and output, functions, data structures, and flow programming, as well as numerical techniques, probability, simulation and stochastic modeling.
Known for its versatility, the free programming language R is widely used for statistical computing and graphics, but is also a fully functional programming language well suited to scientific programming.





An Introduction to Scientific Programming and Simulation Using R teaches the skills needed to perform scientific programming while also introducing stochastic modelling. Stochastic modelling in particular, and mathematical modelling in general, are intimately linked to scientific programming because the numerical techniques of scientific programming enable the practical application of mathematical models to real-world problems.





Following a natural progression that assumes no prior knowledge of programming or probability, the book is organised into four main sections:











Programming In R starts with how to obtain and install R (for Windows, MacOS, and Unix platforms), then tackles basic calculations and program flow, before progressing to function based programming, data structures, graphics, and object-oriented code
A Primer on Numerical Mathematics introduces concepts of numerical accuracy and program efficiency in the context of root-finding, integration, and optimization
A Self-contained Introduction to Probability Theory takes readers as far as the Weak Law of Large Numbers and the Central Limit Theorem, equipping them for point and interval estimation
Simulation teaches how to generate univariate random variables, do Monte-Carlo integration, and variance reduction techniques








In the last section, stochastic modelling is introduced using extensive case studies on epidemics, inventory management, and plant dispersal. A tried and tested pedagogic approach is employed throughout, with numerous examples, exercises, and a suite of practice projects. Unlike most guides to R, this volume is not about the application of statistical techniques, but rather shows how to turn algorithms into code. It is for those who want to make tools, not just use them.

University of Melbourne, Parkville, Australia

Part I: PROGRAMMING





Setting Up


Installing R


Starting R


Working Directory


Writing Scripts


Help


Supporting Material





R as a Calculating Environment


Arithmetic


Variables


Functions


Vectors


Missing data


Expressions and assignments


Logical expressions


Matrices


The workspace





Basic Programming


Introduction


Branching with if


Looping with for


Looping with while


Vector-based programming


Program flow


Basic debugging


Good programming habits





I/O: Input and Output


Text


Input from a file


Input from the keyboard


Output to a file


Plotting





Programming with Functions


Functions


Scope and its consequences


Optional arguments and default values


Vector-based programming using functions


Recursive programming


Debugging functions





Sophisticated Data Structures


Factors


Dataframes


Lists


The apply family





Better Graphics


Introduction


Graphics parameters: par


Graphical augmentation


Mathematical typesetting


Permanence


Grouped graphs: lattice


3D-plots





Pointers to Further Programming Techniques


Packages


Frames and environments


Debugging again


Object-oriented programming: S3


Object-oriented programming: S4


Compiled code


Further reading





Part II: NUMERICAL TECHNIQUES





Numerical Accuracy and Program Efficiency


Machine representation of numbers


Significant digits


Time


Loops versus vectors


Memory


Caveat





Root-Finding


Introduction


Fixed-point iteration


The Newton-Raphson method


The secant method


The bisection method





Numerical Integration


Trapezoidal rule


Simpson’s rule


Adaptive quadrature





Optimisation


Newton’s method for optimisation


The golden-section method


Multivariate optimisation


Steepest ascent


Newton’s method in higher dimensions


Optimisation in R and the wider world


A curve fitting example





Part III: PROBABILITY AND STATISTICS





Probability


The probability axioms


Conditional probability


Independence


The Law of Total Probability


Bayes’ theorem





Random Variables


Definition and distribution function


Discrete and continuous random variables


Empirical cdf’s and histograms


Expectation and finite approximations


Transformations


Variance and standard deviation


The Weak Law of Large Numbers





Discrete Random Variables


Discrete random variables in R


Bernoulli distribution


Geometric distribution


Negative binomial distribution


Poisson distribution





Continuous Random Variables


Continuous random variables in R


Uniform distribution 282


Lifetime models: exponential and Weibull


The Poisson process and the gamma distribution


Sampling distributions: normal, x2, and t





Parameter Estimation


Point Estimation


The Central Limit Theorem


Confidence intervals


Monte-Carlo confidence intervals





Part IV: SIMULATION





Simulation


Simulating iid uniform samples


Simulating discrete random variables


Inversion method for continuous rv


Rejection method for continuous rv


Simulating normals





Monte-Carlo Integration


Hit-and-miss method


(Improved) Monte-Carlo integration








Variance Reduction


Antithetic sampling


Importance sampling


Control variates





Case Studies


Introduction


Epidemics


Inventory


Seed dispersal





Student Projects


The level of a dam


Roulette


Buffon’s needle and cross


Insurance risk


Squash


Stock prices





Glossary of R commands


Programs and functions developed in the text


Index

Erscheint lt. Verlag 17.3.2009
Reihe/Serie Chapman & Hall/CRC: The R Series
Zusatzinfo 500+; 4 Tables, black and white; 95 Illustrations, black and white
Sprache englisch
Maße 156 x 234 mm
Gewicht 794 g
Themenwelt Mathematik / Informatik Informatik Theorie / Studium
Naturwissenschaften
ISBN-10 1-4200-6872-5 / 1420068725
ISBN-13 978-1-4200-6872-6 / 9781420068726
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Grundlagen – Anwendungen – Perspektiven

von Matthias Homeister

Buch | Softcover (2022)
Springer Vieweg (Verlag)
34,99
Eine Einführung in die Systemtheorie

von Margot Berghaus

Buch | Softcover (2022)
UTB (Verlag)
25,00