List routines by category:
Atmospheric Sciences |
Benchmarking |
Color |
Date/Time |
Doc |
File & I/O |
BPCH Format |
Scientific Data Formats |
GAMAP Examples |
GAMAP Internals |
GAMAP Utilities |
GAMAP Data Manipulation |
GAMAP Models &
Grids |
GAMAP Plotting |
General |
Graphics |
Math & Units |
Plotting |
Regridding |
Strings |
Structures |
Time Series
List routines by alphabetical order:
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z
NAME: HCOLORBAR PURPOSE: Plot a horizontal colorbar. %%% NOTE: This is obsolete, you should use COLORBAR instead! %%% CATEGORY: Color CALLING SEQUENCE: HCOLORBAR, CX, CY, [,keywords] INPUTS: CX -> [Min X, Max X] vector in NORMAL coords CY -> [Min Y, Max Y] vector in NORMAL coords KEYWORD PARAMETERS: COLORS -> array of color levels LABELS -> string array of labels for the color levels OUTPUTS: None SUBROUTINES: None REQUIREMENTS: HCOLORBAR assumes n_elements(COLORS) >= n_elements(LABELS)+1 NOTES: (1) HCOLORBAR is more or less obsolete. You should use the COLORBAR routine instead. However, there may be some applications where HCOLORBAR is required, so we keep this routine for backwards compatibility with older IDL code. (2) The colorbar will be plotted as follows: LABELS(0) LABELS(1) LABELS(NL-1) +-----------+-----------+----------- // --------------+------------+ | COLORS(0) | COLORS(1) | COLORS(2) // COLORS(NL-1) | COLORS(NL) | +-----------+-----------+----------- // --------------+------------+ COLORS(0) = color index for data < first contour level COLORS(1) = color index for data between 1st and 2nd levels ... COLORS(NL) = color index for data >= the last contour level LABELS(0) = label for the first contour level LABELS(1) = label for the 2nd contour level, etc... ... LABELS(NL) = label for data >= the last contour level EXAMPLE: HCOLORBAR, [0.025, 0.275], [0.680, 0.690], $ COLORS=[0,1,2,3,4,5], LABELS=['1','2','3','4','5'] MODIFICATION HISTORY: bmy, 10 Nov 1994: VERSION 1.00 bmy, 24 Jun 1997: VERSION 1.01 bmy, 30 Sep 1997: TOOLS VERSION 1.10 bmy, 20 Nov 1997: TOOLS VERSION 1.11 bmy, 02 Aug 1999: TOOLS VERSION 1.43 - minor bug fix bmy & phs, 13 Jul 2007: GAMAP VERSION 2.10 - Updated comments, cosmetic changes
(See /n/home09/ryantosca/IDL/gamap2/color/hcolorbar.pro)
NAME: HDF_GETSD PURPOSE: Convenience routine to read scientific dataset variables from Hierarchical Data Format (HDF) files CATEGORY: File & I/O, Scientific Data Formats CALLING SEQUENCE: DATA = HDF_GETSD( FID, NAME [, _EXTRA=e ] ) INPUTS: FID -> HDF File ID, as returned by routine HDF_SD_START. NAME -> Name of the scientific dataset variable that you want to extract from the file. KEYWORD PARAMETERS: _EXTRA=e -> Passes extra keywords to routine HDF_SD_GETDATA. OUTPUTS: DATA -> Array containing extracted data from the HDF file. SUBROUTINES: None REQUIREMENTS: Need to use a version of IDL w/ HDF routines installed. NOTES: Taken from MOP02Viewer by Yottana Khunatorn (bmy, 7/17/01) EXAMPLE: ; Make sure HDF is supported on this platform IF ( HDF_EXISTS() eq 0 ) then MESSAGE, 'HDF not supported!' ; Open the HDF file and get the file ID # (FID) FID = HDF_SD_START( 'fvdas_flk_01.ana.eta.20011027.hdf', /Read ) IF ( FID lt 0 ) then MESSAGE, 'Error opening file!' ; Read the UWND field from disk DATA = HDF_GETSD( fId, 'UWND' ) ; Close the file HDF_SD_END, FID MODIFICATION HISTORY: bmy, 05 Nov 2001: VERSION 1.00 bmy, 23 Apr 2002: TOOLS VERSION 1.50 - updated documentation bmy & phs, 13 Jul 2007: GAMAP VERSION 2.10
(See /n/home09/ryantosca/IDL/gamap2/file_io/hdf_getsd.pro)
NAME: HDF_GETSDATTR PURPOSE: Convenience routine to read attributes (global or variable- associated) from Hierarchical Data Format (HDF) files. CATEGORY: File & I/O, Scientific Data Formats CALLING SEQUENCE: DATA = HDF_GETSDATTR( ID, NAME [ , Keywords ] ) INPUTS: ID -> HDF File ID as returned by routine HDF_SD_START, or scientific dataset ID, as returned by routine HDF_SD_SELECT. NAME -> Name of the attribute to be read from the HDF file. KEYWORD PARAMETERS: COUNT -> Returns the total number of values in the specified attribute to the calling program. HDF_TYPE -> Returns the HDF type of the attribute to the calling program. HDF types are returned as a scalar string. Possible returned values are DFNT_NONE, DFNT_CHAR, DFNT_FLOAT32, DFNT_FLOAT64, DFNT_INT8, DFNT_INT16, DFNT_INT32, DFNT_UINT8, DFNT_UINT16, and DFNT_UINT32. TYPE -> Returns the IDL type pf the attribute to the calling program. The type of the attribute is returned as a scalar string. Possible returned values are BYTE, INT, LONG, FLOAT, DOUBLE, STRING, or UNKNOWN. OUTPUTS: DATA -> Array containing attribute data from the HDF file. SUBROUTINES: IDL HDF routines used: ========================== HDF_SD_AttrInfo HDF_SD_AttrFind (function) REQUIREMENTS: Need to use a version of IDL w/ HDF routines installed. NOTES: None EXAMPLE: ; Make sure HDF is supported on this platform IF ( NCDF_EXISTS() eq 0 ) then MESSAGE, 'HDF not supported!' ; Open the HDF file and get the file ID # (FID) FID = HDF_SD_START( 'fvdas_flk_01.ana.eta.20011027.hdf', /READ ) IF ( FID lt 0 ) then MESSAGE, 'Error opening file!' ; Read the Ak, Bk, and PTOP attributes from the HDF file ; These are GLOBAL attributes associated w/ the file AK = HDF_GETSDATTR( FID, 'ak' ) BK = HDF_GETSDATTR( FID, 'bk' ) PTOP = HDF_GETSDATTR( FID, 'ptop' ) ; Close the HDF file HDF_SD_END, FID MODIFICATION HISTORY: bmy, 30 Apr 2002: TOOLS VERSION 1.50 bmy & phs, 13 Jul 2007: GAMAP VERSION 2.10
(See /n/home09/ryantosca/IDL/gamap2/file_io/hdf_getsdattr.pro)
NAME: HDF_GETVD PURPOSE: Convenience routine to read VDATA variables from Hierarchical Data Format (HDF) files CATEGORY: File & I/O, Scientific Data Formats CALLING SEQUENCE: VDATA = HDF_GETVD( FID, NAME [, _EXTRA=e ] ) INPUTS: FID -> HDF File ID, as returned by routine HDF_OPEN. NAME -> Name of the VDATA variable that you want to extract from the file. KEYWORD PARAMETERS: _EXTRA=e -> Passes extra keywords to routine HDF_VD_READ. OUTPUTS: VDATA -> Array containing extracted data from the HDF file. SUBROUTINES: None REQUIREMENTS: Need to use a version of IDL w/ HDF routines installed. NOTES: Taken from MOP02Viewer by Yottana Khunatorn (bmy, 7/17/01) EXAMPLE: FID = HDF_OPEN( 'fvdas_flk_01.ana.eta.20011027.hdf', /Read ) IF ( FID lt 0 ) then Message, 'Error opening file!' PTOP = HDF_GETVD( fId, 'PTOP' ) HDF_CLOSE, FID ; Opens an HDF-format file and gets the file ID. Then ; call HDF_GETSD to return the PTOP variable from the ; file. Then close the file and quit. MODIFICATION HISTORY: bmy, 05 Nov 2001: VERSION 1.00 bmy & phs, 13 Jul 2007: GAMAP VERSION 2.10
(See /n/home09/ryantosca/IDL/gamap2/file_io/hdf_getvd.pro)
NAME: HDF_SETSD PURPOSE: Convenience routine to write data into the Hierarchical Data Format Scientific Dataset (HDF-SD) structure CATEGORY: File & I/O, Scientific Data Formats CALLING SEQUENCE: HDF_SETSD, FID, DATA, NAME [, Keywords ] INPUTS: FID -> HDF File ID, as returned by routine HDF_SD_START. DATA -> Data (array or scalar) to be written to HDF-SD format. NAME -> Name under which the data array will be saved to the HDF file. KEYWORD PARAMETERS: LONGNAME -> Longer descriptive name for the data. This will be saved as the "long_name" attribute. Default is ''. RANGE -> A 2-element vector containing the [min,max] of the data array. If not passed, RANGE will be computed (but only for numeric data types). RANGE will be saved to the HDF file as the "valid_range" attribute. _EXTRA=e -> picks up extra keywords for HDF_SD_SETINFO, such as FILL, UNIT, COORDSYS, etc... OUTPUTS: None SUBROUTINES: Uses the following IDL HDF routines: =========================================== HDF_SD_Create (function) HDF_SD_SetInfo HDF_SD_AddData HDF_SD_EndAccess DATATYPE (function) REQUIREMENTS: Need to use a version of IDL w/ HDF routines installed. NOTES: (1) Since HDF supports the STRING type, we do not have to treat BYTE data like ASCII characters (cf ncdf_set.pro) EXAMPLE: ; Find out if HDF is supported on this platform IF ( HDF_EXISTS() eq 0 ) then MESSAGE, 'HDF not supported!' ; Open the HDF file FID = HDF_SD_START( 'myhdf.hdf', /Create ) IF ( FID lt 0 ) then Message, 'Error opening file!' ; Write data to disk HDF_SETSD, FID, DATA, 'NOx', $ LONGNAME='Nitrogen Oxide',$ UNIT='v/v', $ FILL=0.0, ; Close HDF File HDF_SD_END, FID ; Writes NOx data to an HDF file. MODIFICATION HISTORY: bmy, 17 Apr 2002: TOOLS VERSION 1.50 bmy, 11 Sep 2002: TOOLS VERSION 1.51 - Now call routine DATATYPE to determine the type of the data so that we can write all data types to the HDF file. - Don't add the RANGE attribute to the HDF file for a string type value. - Updated comments bmy & phs, 13 Jul 2007: GAMAP VERSION 2.10
(See /n/home09/ryantosca/IDL/gamap2/file_io/hdf_setsd.pro)
NAME: HIST_ND PURPOSE: Perform an N-dimensional histogram, also known as the joint density function of N variables, ala HIST_2D. CATEGORY: Regridding CALLING SEQUENCE: hist=HIST_ND(V,BINSIZE,MIN=,MAX=,NBINS=,REVERSE_INDICES=) INPUTS: V: A NxP array representing P data points in N dimensions. BINSIZE: The size of the bin to use. Either an N point vector specifying a separate size for each dimension, or a scalar, which will be used for all dimensions. If BINSIZE is not passed, NBINS must be. OPTIONAL INPUTS: MIN: The minimum value for the histogram. Either a P point vector specifying a separate minimum for each dimension, or a scalar, which will be used for all dimensions. If omitted, the natural minimum within the dataset will be used. MAX: The maximum value for the histogram. Either a P point vector specifying a separate maximmum for each dimension, or a scalar, which will be used for all dimensions. If omitted, the natural maximum within the dataset will be used. NBINS: Rather than specifying the binsize, you can pass NBINS, the number of bins in each dimension, which can be a P point vector, or a scalar. If BINSIZE it also passed, NBINS will be ignored, otherwise BINSIZE will then be calculated as binsize=(max-min)/nbins. Note that *unlike* RSI's version of histogram as of IDL 5.4, this keyword actually works as advertised, giving you NBINS bins over the range min to max. KEYWORD PARAMETERS: MIN,MAX,NBINS: See above REVERSE_INDICES: Set to a named variable to receive the reverse indices, for mapping which points occurred in a given bin. Note that this is a 1-dimensional reverse index vector (see HISTOGRAM). E.g., to find the indices of points which fell in a histogram bin [i,j,k], look up: ind=[i+nx*(j+ny*k)] ri[ri[ind]:ri[ind+1]-1] See also ARRAY_INDICES for converting in the other direction. OUTPUTS: hist: The N-Dimensional histogram, of size N1xN2xN3x...xND where the Ni's are the number of bins implied by the data, and/or optional inputs min, max and binsize. OPTIONAL OUTPUTS: The reverse indices. EXAMPLE: v=randomu(sd,3,100) h=hist_nd(v,.25,MIN=0,MAX=1,REVERSE_INDICES=ri) SEE ALSO: HISTOGRAM, HIST_2D MODIFICATION HISTORY: Mon Mar 5 09:45:53 2007, J.D. SmithCorrectly trim out of range elements from the histogram, when MIN/MAX are specified. Requires IDL v6.1 or later. Tue Aug 19 09:13:43 2003, J.D. Smith Slight update to BINSIZE logic to provide consistency with HIST_2D. Fri Oct 11 10:10:01 2002, J.D. Smith Updated to use new DIMENSION keyword to MAX/MIN. Fri Apr 20 12:57:34 2001, JD Smith Slight update to NBINS logic. More aggressive keyword checking. Wed Mar 28 19:41:10 2001, JD Smith Written, based on HIST_2D, and suggestions of CM. phs, bmy, 30 May 2008: GAMAP VERSION 2.12 - Added to GAMAP under "Regridding" category
(See /n/home09/ryantosca/IDL/gamap2/regridding/hist_nd.pro)
NAME: HYSTAT (function) PURPOSE: Compute atmospheric pressures in hydrostatic equilibrium. This function is adapted from the Harvard photochemical point model (CHEM1D). CATEGORY: Atmospheric Sciences CALLING SEQUENCE: pressure = HYSTAT,alt,temp,psurf,g0,rearth INPUTS: ALT -> Altitude in km. This can be a single value or an array. TEMP -> Temperatures corresponding to the altitudes in ALT PSURF -> A surface pressure value in mbar. Default is 1013.25 mbar. G0 -> acceleration du eto gravity in m/s2. Default is 9.80665 m/s2 . REARTH -> Radius of the earth in km. Default is 6356.77 km. KEYWORD PARAMETERS: none OUTPUTS: None SUBROUTINES: None REQUIREMENTS: None NOTES: None EXAMPLE: ALT = FINDGEN(20) ; create altitude array 0..19 km TEMP = TEMP = 205.+(19-ALT)*4. ; a semi-realistic temperature ; profile PRESS = HYSTAT(ALT,TEMP) ; compute pressures PRINT, PRESS 1013.25 896.496 791.815 698.104 614.349 539.613 473.041 413.843 361.298 314.745 273.581 237.254 205.261 177.146 152.492 130.924 112.098 95.7080 81.4736 69.1443 MODIFICATION HISTORY: mgs, 21 Aug 1998: VERSION 1.00 bmy & phs, 13 Jul 2007: GAMAP VERSION 2.10 - Updated comments
(See /n/home09/ryantosca/IDL/gamap2/atm_sci/hystat.pro)