Robert B. Scott
Ph.D., McGill (1999);
Currently a Visiting Senior Research Fellow, National Oceanography Centre, Southampton, U.K.
MOM4MOM4 is an Ocean General Circulation Model, freely available from NOAA's GFDL. See the fms homepage for documentation and downloads. Here are the model configuration files I used for the MOM4p0d simulations I did for the eddy-topography interaction study with Bill Merryfield .
FerretFerret is a free, data visualization and processing package. See the ferret homepage for documentation and downloads. Here I've collected some tips on using ferret. Some scripts that illustrate how to use some of the more advanced functions are also available:
Read Topex/Poseidon sea surface height data from a rectangular region from ASCII data file, save in a netCDF file.
Read output from previous script, convert to a y-axis where each j value corresponds to the same latitude, save in an ASCII file.
The American Meteorological Society has very particular requirements for their journal manuscript submissions. However, they don't supple any official LaTeX or BibTeX style files. Here, after many painful hours of fussing with LaTeX, are my unofficial versions: (I tried using other "unofficial" style files from the web and AMS complained about the formatting!) These styles managed to pass the test twice .
Style file for AMS (American Meteorological Society).
Corresponding bibliography style file for AMS (American Meteorological Society).
MatLabThe following MatLab scripts were developed for my research, and are provided "as is" to anyone that finds them useful. Of course, please let me know if you find any problems with them.
Comparing OGCMs and current meter moorings
This project was initially supported by a grant from NSF Grant No. 0526412, and then from KAUST.
rotate_occam.m The OCCAM ocean circulation model has a "rotated grid" for the North Atlantice and the Arctic Oceans, to avoid the polar singularity. The OCCAM team provide utilities , but in order to find the latitude and longitude of millions of grid points you need your own routines. Here's the routine I wrote, and tested against their utilities. See this sample routine to see its intended use. This material is based upon work supported by the National Science Foundation under Grant No. 0526412.
Ocean surface velocity statistics
gaussian_eddy_to_M.m The paper I wrote on anisotropy Scott et al. 2008 describes a measure "M" of anisotropy, and suggests that it arises from propagating eddies. This routine plots the M field from a Gaussian anticyclone propagating purely westward. The results would be identical for a cyclone, and if, by some unlikely event, the eddy were propagating purely eastward. The zonally elongated features we find in the M field are likely caused by eddies following preferred pathways in the ocean, as explained in the manuscript. We also speculate that the zonally elongated features in the zonal velocity field discussed by Maximenko et al. (2005) are also related to this mechanism. This material is based upon work supported by the National Science Foundation under Grant No. 0526412.
get_m_flex.m This was the main routine I used to calculate the M statistic.
get_m_flex_filtered_ts.m A sceptical reviewer insisted that the persistent features we found in M were due to low-frequency flow. We proved this was wrong by high-pass filtering the sea surface height (SSH) field in time, and optionally in space, using this routine.
get_corrcoef_M_flex.m The paper discusses the spatial correlation between two M fields from different time periods. This routine was used to calculate the spatial correlation.
make_movie_ssha_v2.m Make an animation of the sea surface height field.
Wind power input to surface geostrophic flowThis material is based upon work supported by the National Science Foundation under Grant No. 0526412.
get_WPI_ACC.m This script finds the area averaged wind power input over just the region 40S to 60S. You can easily modify it to use other regions. You'll need the data file . It was generated with the scripts below.
get_u_tau_flex.m The paper Yongsheng and I wrote on wind power input to the surface geostrophic flow, published in Deep Sea Research I, involved performing simple analysis on several different data products, each consisting of hundreds of netCDF files. This routines provides our solution to this challenge of keeping it all straight, minimizing the chance of user error, and efficiently reading in hundreds of files. It won't run unless you download all the appropriate data, and store it in the appropriate places.
qscat_read_u10_2_WPI_v2.m Read the QuikSCAT JPL vector wind product. Convert ascending and descending pass winds to stresses average to daily stresses. Reads in AVISO currents and interpolate to daily values. Calculates wind power input.
charnock_2d.m Needed for above routine. Finds 2D stress field from 2D wind field using the "Liu and Tang" algorithm, which is just a type of Charnock algorithm with specific parameters.
compare_cd_Charnock.m Simple littel routine to compare the stress from a Large and Pond algorithm and a Charnock-type algorithm. Wind speeds are in m/s. Parameters are set to the "Large and Pond" and "Tang and Liu" algorithms of JPL's QuikSCAT product.
charnock.m Needed for above routine. Finds 1D stress field from 1D wind field using the "Liu and Tang" algorithm, which is just a type of Charnock algorithm with specific parameters.
read_hadsst2.m The British Atmospheric Data Centre provide free access to climate data. The SST product HadSST2 is available in ascii format, which is a slight bother to read into MatLab. The read_hadsst2.m script does this, preforming error checking as it does so. BTW, I believe there is a problem with the data, since anomalies exceed 7 deg Celsius. The data is also available here directly from the Hadley centre in more formats.
BTW, if you're trying to submit electronically to an AMS journal, and can't find the instructions, go to page 51 of the complete guide. Note however, that if you're submitting electronically to JPO, you're supposed to FAX the cover letter and copyright directly to the editor that you choose, not the cheif editor as they claim in the guide. (I found this out by calling the JPO cheif editor's office and speaking with Sharon.)
The first baroclinic Rossby radius of deformation, and corresponding gravity-wave phase speed have been calculated recently by Chelton et al. 1998. To make it easier to use, I've put their data into a netCDF file, (which contains the grid and units information), using this FORTRAN 90 program , and ferret script. Please see Chelton deSzoeke and Schlax's web page for more info on the data, and the appropriate citation information.
Click here to obtain the netCDF file of Rossby radius, lr, and phase speed, c.
ReferencesChelton, D. B., R. A. deSzoeke, M. G. Schlax, K. El Naggar and N. Siwertz, 1998: Geographical variability of the first-baroclinic Rossby radius of deformation. J. Phys. Oceanogr., 28, 433-460.
If you're reading the books below, you may find my rough notes helpful. They provide an annotation to the text, and solutions to many of the problems.
Boas, M. L., 1983: Mathematical methods in the physical sciences . John Wiley and Sons, 793 pp.
A classic in elementary methods for physics and other sciences, my notes are mostly just solutions to the problems. I worked through Chapter 9 on Calculus of Veraitons in detail, and some of Chapter 1 on infinite series.
Schutz, B., 2009: A first course in General Relativity . Cambridge University Press. 393 + XV pp.
This short text provides a more gentle introduction to GR than the classic Gravitation by Misner, Thorne and Wheeler. The latter assumes you know Special Relativity, and introduces the math in a way that I find awkward. While Schutz's text is almost always clear, I find he occationally makes leaps or assumptions which are not mentioned at all. I've attempted to fill-in these gaps. My notes cover Chapters 1 and 2 only, but check back for updates. April 2010. I've included solutions to almost all of the problems at the end of the chapters. Starting in Chapter 2, I've also introduced my own problems to supplement those provided by Schutz. These are specifically designed to lead the student through some thought processes that I felt Schutz expected us to jump though without explanation or guide. And of course I provide the complete solutions.