Date: Wed, 11 Apr 2001 15:25:39 -0400
From: Carlie Coats
Organization: MCNC/NCSC Environmental Programs
To: peter@usfca.edu
Subject: erratum:  Parallel Programming with MPI

Dear Prof. Pacheco:

In Chapter 1, section 1 you give estimates for weather forecasts
for continental North America, on the basis of 1-hour time steps
for a 0.1KM grid.  As an applied mathematician dealing with
atmospheric modeling (meteorology + air pollution), I would like
to suggest that your estimates are off by [six orders of magnitude].

First of all, because of the Courant stability requirement, one
must do time steps small enough that air does not advect all the
way across a cell within a time step.  At 100 meters resolution,
with typical upper-level winds of 50 m/s, that means 2-second
time steps, i.e., 1800 time steps per hour, not just one time step.

100 arithmetic operations per time step per grid node is _very_
optimistic; 1000 operations is a more realistic lower bound.
Remember that one must not only model the compressible fluid
dynamics, one must also model both turbulence, thermodynamics
that includes multiple  nonlinear phase changes of the aqueous
component, and must filter to suppress acoustic-mode oscillations
that would otherwise cause the system to go unstable.

Then, because of the vertical stratification of the atmosphere,
one must go to a much more detailed vertical stratification in
order for the modeling of convectively driven turbulence to be
computationally stable... at least 2000 vertical layers, not 200.

I think you are probably underestimating the computational
requirements by six orders of magnitude; the teraflop turnaround
time is more like 60 years than 30 minutes.

On the other hand, your 100-meter resolution is right on the 
mark in terms of specifying what resolution is necessary to do
a really proper job of forecasting in order to get the clouds
and precipitation correct.

fwiw-- 

Carlie J. Coats, Jr., Ph.D.
