Page - VII - in Programming for Computations β Python - A Gentle Introduction to Numerical Simulations with Python
Image of the Page - VII -
Text of the Page - VII -
Preface vii
Targetaudienceandbackgroundknowledge Thisbookwaswrittenforstudents,
teachers, engineers and scientists that know nothing about programming and nu-
mericalmethods frombefore, butwho seek aminimum of the fundamental skills
required to get startedwith programmingas a tool for solving scientific and engi-
neeringproblems. Someknowledgeofone-andmulti-variablecalculus isassumed.
The basic programming concepts are presented in only 50 pages (Chapters 1 and
2), before practical applications of these concepts are demonstrated in important
mathematical subjects addressed in the remainingpartsof thebook(Chapters3-6).
Eachchapter is followedbyasetofexercises thatcoverawiderangeofapplication
areas,e.g.biology,geology,statistics,physicsandmathematics. Theexerciseswere
particularlydesignedtobringacross importantpointsfromthetext. Thereaderwill
realize that themodest content of thefirst 50pages can in fact bring youquite far
inpowerfulproblemsolving!
Learning theverybasics of programmingshouldnot take long, but aswith any
other craft, mastering the skill requires continued and extensive practice. Some
beginningpractice isgained throughChapters3-6,but theauthorsstronglyempha-
size that this is only a start. Students should continue to practice programming in
subsequent courses,while thosewhoexercise self-study, shouldkeepup the learn-
ingprocess throughcontinuedapplicationof the craft. Thebook is agoodstarting
pointwhen teaching computer programmingas an integratedpart of standard uni-
versity courses inmathematics and physical sciences. In our experience, such an
integration isdoableand indeed rewarding.
Numericalmethods Anoverall goalwith this book is tomotivate computer pro-
grammingasaverypowerful tool fordoingmathematics. All examplesare related
tomathematics and its use in engineering and science. However, to solvemath-
ematical problems through computer programming, we need numericalmethods.
Explainingbasic numericalmethods is therefore an integral part of the book. Our
choiceof topics isgovernedbywhat ismost needed in scienceandengineering, as
well as in the teaching of applied physical science courses. Mathematicalmodels
are then central, with differential equations constituting themost frequent type of
models. Consequently, thenumerical focusin thisbookisondifferentialequations.
Asasoftpedagogical starter for theprogrammingofmathematics,wehavechosen
the topic of numerical integration. There is also a chapter on root finding, which
is important for the numerical solution onnonlinear differential equations. We re-
mark that thebook is deliberatelybrief onnumericalmethods. This is becauseour
focus is on implementing numerical algorithms, but to develop reliable, working
programs, theprogrammermustbeconfidentabout thebasic ideasof thenumerical
approximations involved.
The computer language: Python Wehave chosen to use the programming lan-
guage Python, because this language gives very compact and readable code that
closely resembles themathematical recipe for solving theproblemathand. Python
also has a gentle learning curve. There is aMATLAB/Octave companion of this
book in case that language is preferred. Comparing these twoversionsof thebook
provides an excellent demonstration of how similar these languages are. Other
computer languages, like Fortran, C, and C++, have a strong position in science
andengineering.During the last twodecades,however, therehasbeenasignificant
back to the
book Programming for Computations β Python - A Gentle Introduction to Numerical Simulations with Python"
Programming for Computations β Python
A Gentle Introduction to Numerical Simulations with Python
- Title
- Programming for Computations β Python
- Subtitle
- A Gentle Introduction to Numerical Simulations with Python
- Authors
- Svein Linge
- Hans Petter Langtangen
- Publisher
- Springer Open
- Date
- 2016
- Language
- English
- License
- CC BY-NC 4.0
- ISBN
- 978-3-319-32428-9
- Size
- 17.8 x 25.4 cm
- Pages
- 248
- Keywords
- Programmiersprache, Informatik, programming language, functional, imperative, object-oriented, reflective
- Category
- Informatik