Python Notes - University of Chicago

Contents

Preface

i

Contents

2

1 Getting Started

3

1.1 Basic Skills . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.1.1 Using xterms and logging in to the server . . . . . . . . . . . . 4

1.1.2 About the Python Shell and idle . . . . . . . . . . . . . . . . 5

1.1.3 Running Python Locally . . . . . . . . . . . . . . . . . . . . . 7

1.2 Fun with Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.2.1 Basic operations . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.2.2 Lists, tuples and strings . . . . . . . . . . . . . . . . . . . . . 9

1.2.3 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

1.2.4 Getting help . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

1.2.5 Program control: Looping, conditionals and functions . . . . . 12

1.3 Progressing in Python . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.3.1 Writing your own modules and executable scripts . . . . . . . 17

1.3.2 List comprehension . . . . . . . . . . . . . . . . . . . . . . . . 18

1.3.3 Using objects in Python . . . . . . . . . . . . . . . . . . . . . 18

1.3.4 The Numeric array package . . . . . . . . . . . . . . . . . . . 20

1.3.5 The Curve object and its uses . . . . . . . . . . . . . . . . . . 25

1.4 Advanced Python Topics . . . . . . . . . . . . . . . . . . . . . . . . . 28

1.4.1 Defining your own objects . . . . . . . . . . . . . . . . . . . . 28

v

1.4.2 Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 1.4.3 Writing text data to files . . . . . . . . . . . . . . . . . . . . . 37 1.4.4 Reading text data from a file . . . . . . . . . . . . . . . . . . 38

2 Thermodynamics and vertical structure

39

2.1 Tutorial: Getting physical properties and constants . . . . . . . . . . 40

2.2 Problem set: Dry thermodynamics . . . . . . . . . . . . . . . . . . . 41

2.2.1 Pressure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.2.2 Ideal gas law . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.2.3 Atmospheric composition and mixing ratios . . . . . . . . . . 42

2.2.4 Specific heat: Some basic problems . . . . . . . . . . . . . . . 42

2.2.5 Temperature-dependent specific heat . . . . . . . . . . . . . . 43

2.2.6 Potential Temperature and the Dry Adiabat . . . . . . . . . . 43

2.2.7 Inhomogeneous mixtures; Potential density and "virtual temperature" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2.3 Data Lab: Analysis of temperature profile data . . . . . . . . . . . . 44

2.3.1 Analysis of tropical Earth soundings . . . . . . . . . . . . . . 44

2.3.2 Analysis of midlatitude Earth soundings . . . . . . . . . . . . 46

2.3.3 Analysis of planetary soundings . . . . . . . . . . . . . . . . . 47

2.4 Tutorial: Numerical solution of differential equations . . . . . . . . . 48

2.5 Problem set: Hydrostatics . . . . . . . . . . . . . . . . . . . . . . . . 52

2.5.1 Mass of carbon in the Earth's atmosphere . . . . . . . . . . . 52

2.5.2 Mass of Titan's atmosphere . . . . . . . . . . . . . . . . . . . 52

2.5.3 The dry adiabatic lapse rate . . . . . . . . . . . . . . . . . . . 53

2.5.4 Heat capacity of atmospheric columns . . . . . . . . . . . . . 53

2.6 Problem set: Moist thermodynamics . . . . . . . . . . . . . . . . . . 53

2.6.1 Latent heat . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

2.6.2 Using the simplified form of the Clausius-Clapeyron relation . 53

2.6.3 Methane on Titan . . . . . . . . . . . . . . . . . . . . . . . . . 54

2.6.4 Boiling vs. evaporation . . . . . . . . . . . . . . . . . . . . . . 54

vi

1

2.6.5 Comparison of idealized vs. empirical saturation vapor pressure 55 2.6.6 Variable latent heat . . . . . . . . . . . . . . . . . . . . . . . . 55 2.6.7 Latent heat from Clausius-Clapeyron . . . . . . . . . . . . . . 55 2.6.8 Water content of the atmosphere . . . . . . . . . . . . . . . . 57 2.6.9 CO2 condensation in the Martian Winter . . . . . . . . . . . . 57 2.6.10 CO2 condensation on Snowball Earth . . . . . . . . . . . . . . 57 2.6.11 Moist adiabat for atmosphere with two condensible components 58 2.6.12 Springtime for Europa . . . . . . . . . . . . . . . . . . . . . . 58 2.7 Computation Lab: Computing the moist adiabat . . . . . . . . . . . 59 2.8 Problem set: Rayleigh fractionation . . . . . . . . . . . . . . . . . . . 60

3 Elementary radiation balance problems

61

4 Continuous atmosphere radiation problems

63

5 Radiative-convective model problems

65

6 Scattering problems

67

7 Data analysis problems: Earth radiation budget

69

8 Surface energy budget problems

71

9 Seasonal Cycle problems

73

10 Atmospheric evolution modelling problems

75

11 Meridional heat transport modelling problems

77

12 Appendix A: Hints for the user of Unix and its relatives

79

12.1 Simple Unix for the masses . . . . . . . . . . . . . . . . . . . . . . . . 79

12.2 A few useful Unix utilities . . . . . . . . . . . . . . . . . . . . . . . . 80

12.3 Nasty Unix stuff I hope you won't have to deal with . . . . . . . . . . 80

12.4 Public domain software to install on the server . . . . . . . . . . . . . 83

2 12.5 Installing the courseware . . . . . . . . . . . . . . . . . . . . . . . . . 85

Chapter 1 Getting Started

3

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download