making test function is matter of choosing ffaand band then checking the value of ri for the largest idef test_trapezoidal_conv_rate()"""check empirical convergence rates against the expected - ""from math import exp lambda *( ** )*exp( ** lambda texp( ** convergence_rates(vvab print tol msg str( [- :]show last estimated rates assert (abs( [- ] tolmsg running the test shows that all ri except the first oneequal the target limit within two decimals this observation suggest tolerance of remark about version control of files having suite of test functions for automatically checking that your software works is considered as fundamental requirement for reliable computing equally important is system that can keep track of different versions of the files and the testsknown as version control system today' most popular version control system is git which the authors strongly recommend the reader to use for programming and writing reports the combination of git and cloud storage such as github is very common way of organizing scientific or engineering work we have quick intro to git and github that gets you up and running within minutes the typical workflow with git goes as follows before you start working with filesmake sure you have the latest version of them by running git pull edit filesremove or create files (new files must be registered by git add when natural piece of work is donecommit your changes by the git commit command implement your changes also in the cloud by doing git push nice feature of git is that people can edit the same file at the same time and very often git will be able to automatically merge the changes (!thereforeversion control is crucial when you work with others or when you do your work on different types of computers another key feature is that anyone can at any time view the history of filesee who did what whenand roll back the entire file collection to previous commit this feature isof coursefundamental for reliable work