Changeset 118 for trunk/SRC/Grid
- Timestamp:
- 06/27/06 17:47:06 (18 years ago)
- Location:
- trunk/SRC/Grid
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SRC/Grid/computegrid.pro
- Property svn:keywords changed from Author Date Id Revision to Id
r114 r118 11 11 ; or a suitable mix... 12 12 ; 13 ; horizontal parameters: 14 ; glam[tf], gphi[tf], e1t and e2t 15 ; and if FULLCGRID keyword is defined: 16 ; glam[uv], gphi[uv], e1[uvf] and e2[uvf] 13 ; glamt 14 ; glamf 15 ; gphit 16 ; gphif 17 ; e1t 18 ; e2t 19 ; horizontal parameters 20 ; 21 ; glamu {in} 22 ; glamv {in} 23 ; gphiu {in} 24 ; gphiv {in} 25 ; e1u {in} 26 ; e1v {in} 27 ; e1f {in} 28 ; e2u {in} 29 ; e2v {in} 30 ; e2f {in} 31 ; horizontal parameters if FULLCGRID keyword is defined 17 32 ; 18 ; verticals parameters: 19 ; gdep[tw], e3[tw] 20 ; 21 ; masks: tmask 22 ; and if FULLCGRID keyword is defined:[uv]maskred fmaskred[xy] 23 ; 24 ; triangulation: triangles_list 25 ; 26 ; key_ parameters: 27 ; key_shift, key_periodic, key_zreverse, key_yreverse, 28 ; key_stride, key_onearth, key_partialstep 33 ; gdept 34 ; gdepw 35 ; e3t 36 ; e3w 37 ; verticals parameters 38 ; 39 ; tmask 40 ; masks 41 ; 42 ; umaskred {in} 43 ; vmaskred {in} 44 ; fmaskredx {in} 45 ; fmaskredy {in} 46 ; masks if FULLCGRID keyword is defined 47 ; 48 ; triangles_list 49 ; triangulation 29 50 ; 30 51 ; @categories grid 31 52 ; 32 ; 33 ; 34 ; 53 ; @param startx {in}{required} scalar, x starting point 54 ; @param starty {in}{required} scalar, y starting point 55 ; @param stepxin {in}{required} scalar or vector: x direction step, must be > 0 35 56 ; if vector nx is not used 36 ; 57 ; @param stepyin {in}{required} scalar or vector: y direction step, 37 58 ; could be > 0 (south to north) or < 0 (north to south) 38 59 ; if vector ny is not used 39 ; 40 ; 41 ; 42 ; 60 ; @param nxin {in}{required} scalar, number of points in x direction 61 ; @param nyin {in}{required} scalar, number of points in y direction 62 ; 63 ; @keyword /FULLCGRID activate to specify that you want to compute 43 64 ; all the paremeters of a C grid. Computation of glam[uv], 44 65 ; gphi[uv], e1[uvf], e2[uvf], [uv]maskred and fmaskred[xy] 45 66 ; will be add to the default computations 46 67 ; 47 ; 68 ; @keyword GLAMBOUNDARY a 2 elements vector, [lon1,lon2], the longitute 48 69 ; boundaries that should be used to visualize the data. 49 70 ; we must have lon2 > lon1 and lon2 - lon1 le 360 … … 52 73 ; key_shift will /= 0 only if key_periodic = 1 53 74 ; 54 ; 55 ; 56 ; 75 ; @keyword MASK to specify the mask with a 2 or 3 dimension array 76 ; 77 ; @keyword ONEARTH = 0 or 1 to force the manual definition of 57 78 ; key_onearth (to specify if the data are on earth -> use longitude 58 79 ; /latitude etc...). By default, key_onearth = 1. … … 60 81 ; and is cancelling GLAMBOUNDARY 61 82 ; 62 ; 83 ; @keyword PERIODIC = 0 or 1 to force the manual definition of 63 84 ; key_periodic. By default, key_periodic is automaticaly 64 85 ; computed by using the first line of glamt. 65 86 ; 66 ; 87 ; @keyword /PLAIN force PERIODIC = 0, SHIFT = 0, STRIDE = [1, 1, 1] and 67 88 ; suppress the automatic redefinition of the domain in case of 68 89 ; x periodicity overlap, y periodicity overlap (ORCA type only) 69 90 ; and mask border to 0. 70 91 ; 71 ; 92 ; @keyword SHIFT = scalar to force the manual definition of key_shift. By 72 93 ; debault, key_shift is automaticaly computed according to 73 94 ; glamboundary (when defined) by using the FIRST LINE of glamt. if 74 95 ; key_periodic=0 then in any case key_shift = 0. 75 96 ; 76 ; 97 ; @keyword STRCALLING a string containing the calling command used to 77 98 ; call computegrid (this is used by xxx.pro) 78 99 ; 79 ; 100 ; @keyword STRIDE a 3 elements vector to specify the stride in x, y, z 80 101 ; direction. Default definition is [1, 1, 1]. The resulting value 81 102 ; will be stored in the common (cm_4mesh) variable key_stride 82 103 ; 83 ; 104 ; @keyword XAXIS to specify longitude1 with a 1 or 2 dimension array, in 84 105 ; this case startx, stepx and nx are not used but could be 85 106 ; necessary if the y axis is not defined with yaxis. It must be … … 87 108 ; order by shifting its elements. 88 109 ; 89 ; 110 ; @keyword YAXIS to specify latitudes with a 1 or 2 dimension array, in 90 111 ; this case starty, stepy and ny are not used but starty and 91 112 ; stepy could be necessary if the x axis is not defined with xaxis. … … 93 114 ; (along each column if 2d array). 94 115 ; 95 ; 116 ; @keyword /XYINDEX activate to specify that the horizontal grid should 96 117 ; be simply defined by using the index of the points 97 118 ; (xaxis = findgen(nx) and yaxis = findgen(ny)) 98 119 ; using this keyword forces key_onearth=0 99 120 ; 100 ; 101 ; 102 ; 121 ; @keyword XMINMESH 122 ; @keyword YMINMESH 123 ; @keyword ZMINMESH 103 124 ; to define the common variables i[xyz]minmesh 104 125 ; used to define the grid only in a zoomed part of the original 105 126 ; grid. Defaut values are 0L, max value is [XYZ]MAXMESH 106 127 ; 107 ; 108 ; 109 ; 128 ; @keyword XMAXMESH 129 ; @keyword YMAXMESH 130 ; @keyword ZMAXMESH 110 131 ; to define the common variables i[xyz]maxmesh 111 132 ; used to define the grid only in a zoomed part of the original … … 115 136 ; [XYZ]MAXMESH 116 137 ; 117 ; @keyword ZAXIS to specify the vertical axis with a 1 dimension 138 ; @keyword FBASE2TBASE 139 ; 140 ; @keyword STRCALLING 141 ; 142 ; @keyword ZAXIS to specify the vertical axis with a 1 dimension 118 143 ; array. Must be sorted in the increasing or deceasing order 144 ; 145 ; @keyword _EXTRA used to pass your keywords to the created function. 119 146 ; 120 147 ; @uses cm_4mesh cm_4data cm_4cal … … 134 161 ; Sept 2004, several bug fixs to suit C grid type... 135 162 ; Aug 2005, rewritte almost everything... 163 ; 164 ; @version $Id$ 165 ; 136 166 ;- 137 167 ;------------------------------------------------------------ -
trunk/SRC/Grid/micromeshmask.pro
- Property svn:keywords set to Id
r114 r118 2 2 ; 3 3 ; @file_comments reduce the size of the NetCDF meshmask created by OPA by 4 ; using bit (and not byte) format for the masks and the f oat format5 ; for the other fields. 4 ; using bit (and not byte) format for the masks and the float format 5 ; for the other fields. 6 6 ; 7 7 ; @categories for OPA meshmask files 8 8 ; 9 ; @examples 10 ; IDL> reducencmeshmask, ncfilein[, ncfileout] 11 ; 12 ; @examples 13 ; IDL> meshdir='/d1fes2-raid2/smasson/DATA/ORCA05/' 14 ; IDL> micromeshmask, 'meshmask_ORCA_R05.nc',iodir=meshdir 9 ; @param inid {in}{required} 10 ; @param outid {in}{required} 11 ; @param inname {in}{required} 12 ; @param outname {in}{optional} 15 13 ; 16 14 ; @history 17 15 ; July 2004 Sebastien Masson (smasson\@lodyc.jussieu.fr) 16 ; 17 ; @version $Id$ 18 ; 18 19 ;- 19 20 ;------------------------------------------------------ … … 30 31 ; 31 32 ;+ 32 ; @keyword IODIR to define the files path.33 ; 33 34 ; @param ncfilein {in}{required} 34 35 ; 1) the name of the meshmask file to be reduced. In that case, … … 40 41 ; xxx.mask.nc. In that case, the meshmask is split into 3 files. 41 42 ; 42 ; @param ncfileout {in}{required} the name of the uniq reduced meshmask file. default 43 ; definition is micromeshmask.nc 43 ; @param ncfileout {in}{optional} the name of the uniq reduced meshmask file. 44 ; default definition is micromeshmask.nc 45 ; 46 ; @keyword IODIR to define the files path. 47 ; 48 ; @examples 49 ; IDL> meshdir='/d1fes2-raid2/smasson/DATA/ORCA05/' 50 ; IDL> micromeshmask, 'meshmask_ORCA_R05.nc',iodir=meshdir 44 51 ; 45 52 ;- 46 53 PRO micromeshmask, ncfilein, ncfileout, IODIR = iodir 47 ;48 54 ; 49 55 compile_opt idl2, strictarrsubs … … 68 74 ; get the horizontal dimensions 69 75 IF n_elements(filein_hgr) NE 0 THEN cdfid = ncdf_open(filein_hgr) $ 70 ELSE cdfid = ncdf_open(filein) 76 ELSE cdfid = ncdf_open(filein) 71 77 ncdf_diminq, cdfid, 'x', name, jpi 72 78 ncdf_diminq, cdfid, 'y', name, jpj … … 81 87 ENDIF 82 88 listdims = strlowcase(ncdf_listdims(cdfid)) 83 IF (where(listdims EQ 'z'))[0] NE -1 THEN ncdf_diminq, cdfid, 'z', name, jpk ELSE BEGIN 89 IF (where(listdims EQ 'z'))[0] NE -1 THEN ncdf_diminq, cdfid, 'z', name, jpk ELSE BEGIN 84 90 dimid = (where(strmid(listdims, 0, 5) EQ 'depth'))[0] 85 IF dimid NE -1 THEN ncdf_diminq, cdfid, dimid, name, jpk ELSE BEGIN 91 IF dimid NE -1 THEN ncdf_diminq, cdfid, dimid, name, jpk ELSE BEGIN 86 92 dummy = report('We could not find the vertical dimension..., its name must be z or start with depth') 87 93 return 88 ENDELSE 89 ENDELSE 94 ENDELSE 95 ENDELSE 90 96 ;; get the variables list related to the partial steps 91 97 varlist_ps = ncdf_listvars(cdfid) … … 174 180 FOR z = 0, n_elements(zgrlist)-1 DO $ 175 181 ncdf_transfer, cdfid, cdfidout, zgrlist[z] 176 ; partial step variables 182 ; partial step variables 177 183 IF (where(varlist_ps EQ 'hdept'))[0] NE -1 THEN $ 178 184 ncdf_transfer, cdfid, cdfidout, 'hdept' -
trunk/SRC/Grid/n128gaussian.pro
- Property svn:keywords set to Id
r114 r118 13 13 ; Sebastien Masson (smasson\@lodyc.jussieu.fr) 14 14 ; June 2004 15 ; 16 ; @version $Id$ 17 ; 15 18 ;- 16 19 ; -
trunk/SRC/Grid/n160gaussian.pro
- Property svn:keywords set to Id
r114 r118 14 14 ; Sebastien Masson (smasson\@lodyc.jussieu.fr) 15 15 ; June 2004 16 ; 17 ; @version $Id$ 18 ; 16 19 ;- 17 20 ; -
trunk/SRC/Grid/n256gaussian.pro
- Property svn:keywords set to Id
r114 r118 14 14 ; Sebastien Masson (smasson\@lodyc.jussieu.fr) 15 15 ; June 2004 16 ; 17 ; @version $Id$ 18 ; 16 19 ;- 17 20 ; -
trunk/SRC/Grid/n48gaussian.pro
- Property svn:keywords set to Id
r114 r118 14 14 ; Sebastien Masson (smasson\@lodyc.jussieu.fr) 15 15 ; June 2004 16 ; 17 ; @version $Id$ 18 ; 16 19 ;- 17 20 ; -
trunk/SRC/Grid/n80gaussian.pro
- Property svn:keywords set to Id
r114 r118 14 14 ; Sebastien Masson (smasson\@lodyc.jussieu.fr) 15 15 ; June 2004 16 ; 17 ; @version $Id$ 18 ; 16 19 ;- 17 20 ; -
trunk/SRC/Grid/ncdf_meshread.pro
- Property svn:keywords set to Id
r114 r118 11 11 ; IDL> ncdf_meshread [,' filename'] 12 12 ; 13 ; 13 ; @param filename {in}{optional} the name of the meshmask file to read. Default is 14 14 ; meshmask.nc. if this name does not contain any / and if 15 15 ; iodirectory keyword is not specify, then the common variable 16 16 ; iodir will be use to define the mesh file path. 17 17 ; 18 ; 18 ; @keyword GLAMBOUNDARY a 2 elements vector, {lon1,lon2], the longitute 19 19 ; boundaries that should be used to visualize the data. 20 20 ; lon2 > lon1 … … 22 22 ; key_shift will be automaticaly defined according to GLAMBOUNDARY. 23 23 ; 24 ; 24 ; @keyword /CHECKDAT Suppressed. Use micromeshmask.pro to create an 25 25 ; appropriate meshmask. 26 26 ; 27 ; 27 ; @keyword ONEARTH = 0 or 1 to force the manual definition of 28 28 ; key_onearth (to specify if the data are on earth -> use longitude 29 29 ; /latitude etc...). By default, key_onearth = 1. … … 31 31 ; cancelling GLAMBOUNDARY 32 32 ; 33 ; @keyword PERIODIC = 0 or 1 to force the manual definition of 33 ; @keyword GETDIMENSIONS 34 ; 35 ; @keyword PERIODIC = 0 or 1 to force the manual definition of 34 36 ; key_periodic. By default, key_periodic is automaticaly 35 37 ; computed by using the first line of glamt. 36 38 ; 37 ; 39 ; @keyword SHIFT to force the manual definition of key_shift. By 38 40 ; debault, key_shift is automaticaly computed according to the 39 41 ; glamboundary (when defined) by using the first line of glamt. if 40 42 ; key_periodic=0 then in any case key_shift = 0. 41 43 ; 42 ; 44 ; @keyword STRCALLING a string containing the calling command used to call 43 45 ; computegrid (this is used by xxx.pro) 44 46 ; 45 ; 47 ; @keyword STRIDE a 3 elements vector to specify the stride in x, y, z 46 48 ; direction. Default definition is key_stride. The resulting value 47 49 ; will be stored in the common (cm_4mesh) variable key_stride 50 ; 51 ; 52 ; @keyword _EXTRA used to pass your keywords to the created function. 53 ; 48 54 ; 49 55 ; @uses cm_4mesh cm_4data cm_4cal … … 65 71 ; Oct. 2004, Sebastien Masson: add PERIODIC and SHIFT 66 72 ; Aug. 2005, Sebastien Masson: some cleaning + english 73 ; 74 ; @version $Id$ 75 ; 67 76 ;- 68 77 ;------------------------------------------------------------ -
trunk/SRC/Grid/restoreboxparam.pro
- Property svn:keywords set to Id
r114 r118 19 19 ; @history Sebastien Masson (smasson\@lodyc.jussieu.fr) 20 20 ; July 2005 21 ; 22 ; @version $Id$ 23 ; 21 24 ;- 22 25 ;------------------------------------------------------------ -
trunk/SRC/Grid/saveboxparam.pro
- Property svn:keywords set to Id
r114 r118 20 20 ; @history Sebastien Masson (smasson\@lodyc.jussieu.fr) 21 21 ; June 2005 22 ; 23 ; @version $Id$ 24 ; 22 25 ;- 23 26 ;------------------------------------------------------------ -
trunk/SRC/Grid/smallmeshmask.pro
- Property svn:keywords set to Id
r114 r118 3 3 ; 4 4 ; @categories for OPA meshmask files 5 ; 6 ; @param inid {in}{required} 7 ; @param outid {in}{required} 8 ; @param inname {in}{required} 9 ; @param outname {in}{optional} 5 10 ; 6 11 ; @history 7 12 ; July 2004 Sebastien Masson (smasson\@lodyc.jussieu.fr) 13 ; 14 ; @version $Id$ 15 ; 8 16 ;- 9 17 ;------------------------------------------------------ … … 21 29 ;+ 22 30 ; @file_comments reduce the size of the NetCDF meshmask created by OPA by 23 ; using byte format for the masks and the f oat format for the other31 ; using byte format for the masks and the float format for the other 24 32 ; fields. 25 33 ; … … 45 53 ; @history 46 54 ; July 2004 Sebastien Masson (smasson\@lodyc.jussieu.fr) 55 ; 56 ; @version $Id$ 57 ; 47 58 ;- 48 59 PRO smallmeshmask, ncfilein, ncfileout, IODIR = iodir
Note: See TracChangeset
for help on using the changeset viewer.