Web-Books
in the Austria-Forum
Austria-Forum
Web-Books
Informatik
Programming for Computations – Python - A Gentle Introduction to Numerical Simulations with Python
Page - VI -
  • User
  • Version
    • full version
    • text only version
  • Language
    • Deutsch - German
    • English

Page - VI - in Programming for Computations – Python - A Gentle Introduction to Numerical Simulations with Python

Image of the Page - VI -

Image of the Page - VI - in Programming for Computations – Python - A Gentle Introduction to Numerical Simulations with Python

Text of the Page - VI -

vi Preface 3. It is easy to use excellent ready-made software the wrong way. Insight in programming and the mathematics behind is fundamental for understanding complexsoftware, avoidingpitfalls, andbecomeasafeuser. 4. Bugs (errors in computer code) are present inmost larger computer programs (also in the ones from the shop!). What do you do when your ready-made softwaregivesunexpected results? Is it a bug, is itwronguse, or is it themath- ematically correct result? Experiencewith programmingofmathematics gives you a good background for answering these questions. The onewho can pro- gram,can alsomake tailoredcode for a simplifiedproblemsettinganduse that toverify thecomputationsdonewithoff-the-shelf software. 5. Lots of skilledpeople around theworld solve computational problemsbywrit- ingtheirowncodeandoffertheircodeforfreeontheInternet. Totakeadvantage ofthis trulygreatsourceofsoftware inareliableway,onemustnormallybeable tounderstandandpossiblymodifycomputercodeofferedbyothers. 6. It is recognizedworldwidethatstudentsstrugglewithmathematicsandphysics. Toomanyfind such subjects difficult and boring. With programming,we can execute the good old subjects in a brand newway! According to the authors’ ownexperience, students find itmuchmoremotivating and enlighteningwhen programming ismade an integrated part ofmathematics and physical science courses. Inparticular, theproblembeingsolvedcanbemuchmorerealistic than when themathematics is restricted towhatyoucandowithpenandpaper. 7. Finally,welaunchourmost importantargumentforlearningcomputerprogram- ming: thealgorithmic thinking thatcomeswith theprocessofwritingaprogram for a computational problem enforces a thorough understanding of both the problem and solution method. We can simply quote the famous Norwegian computer scientistKristenNyggaard: “Programmingisunderstanding”. In the authors’ experience, programming is an excellent pedagogical tool for un- derstandingmathematics: “You thinkyouknowwhenyoucan learn, aremore sure when you can write, even more when you can teach, but certain when you can program”(AlanPerlis, computer scientist, 1922-1990). Consider, for example, in- tegration. Anumericalmethod for integration has amuch stronger focus onwhat the integral actually is andmeans compared to analytical methods, where much timeandeffortmust bedevoted to integrationbyparts, integrationby substitution, etc. Moreover,when programming the numerical integration formula, it becomes evident that itworks for “all”mathematical functions and that the implementation should be in terms of ageneral function applicable to “all” integrals. In thisway, students learn to recognize a special problemas belonging to a class of problems (e.g., integration, differential equations, root finding), forwhichwe have general numericalmethods implemented inwidely applicable software. When theywrite this software, aswedo in this book, they learn how to generalize and increase the abstraction level of themathematical problem. When they use this software, they learn how a special case should be attacked by generalmethods and software for the class of problems that comprises the special case at hand. This is thepowerof mathematics in anutshell, and it is paramount that studentsunderstand thiswayof thinking.
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
Web-Books
Library
Privacy
Imprint
Austria-Forum
Austria-Forum
Web-Books
Programming for Computations – Python