## Computational Skills Tutorials

The material on this page covers the computational techniques one must master in order to do the problems in the WorkBook. The topics covered under Basic Computer Skills are Python-specific. For the numerical analysis topics, the Tutorial section will always provide enough information to allow the reader to implement the algorithm in any computer language, though some of the detailed implementation hints are given in Python. For each of the topics, three Python example scripts are provided. The first script is avoids plotting and other machine-specific operations, and limits the Python vocabulary to just those elements common to all computer languages -- looping, functions, etc. This script can be thought of as a kid of pseudocode which can be easily translated into other languages. However, this level of programming leaves out most of the fun -- the power ;you get from list processing, array arithmetic, and especially object-oriented programming. The second script introduces that. Parts of these scripts can be easily translated into other languages that handle object orientation and arrays, but other aspects (notably the use of lists) don't have widespread counterparts in other languages. Finally, a third script is provided which illustrates the use of the ready-made full-featured implementation of the algorithm available as part of the ClimateUtilities module .

### Basic computer skills

• Plot a function
• Read in tabular data from a text file
• Write out tabular data to a text file

### Basic numerical analysis

• Finding zeros of a function of one variable:.
• Tutorial
• Basic script
• ClimateUtilities implementation
• Quadrature (Compute a definite integral.):
• Tutorial
• Basic script
• ClimateUtilities implementation
• Solve a differential equation with one dependent variable (dy/dx = F(x,y)):

• Solve a differential equation with multiple dependent variables
• Tutorial
• Basic script
• ClimateUtilities implementation
• Solve the 1D unsteady diffusion equation
• Tutorial
• Basic script