Changeset 495 for trunk/SRC/Grid
- Timestamp:
- 04/17/14 10:49:43 (10 years ago)
- Location:
- trunk/SRC/Grid
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SRC/Grid/computegrid.pro
r493 r495 379 379 ENDIF 380 380 IF keyword_set(xalreadycut) THEN BEGIN 381 xmin = 0 382 xmax = jpi - 1 381 xmin = 0 382 xmax = jpi - 1 383 383 nxx = jpi 384 384 ENDIF ELSE BEGIN … … 390 390 ixminmesh = 0 > ixminmesh < ixmaxmesh 391 391 jpi = ixmaxmesh-ixminmesh+1 392 xmin = ixminmesh 392 xmin = ixminmesh 393 393 xmax = ixmaxmesh 394 394 nxx = jpiglo … … 401 401 ENDIF 402 402 IF keyword_set(yalreadycut) THEN BEGIN 403 ymin = 0 404 ymax = jpj - 1 403 ymin = 0 404 ymax = jpj - 1 405 405 nyy = jpj 406 ENDIF ELSE BEGIN 406 ENDIF ELSE BEGIN 407 407 jpjglo = long(ny) 408 408 IF n_elements(yminmesh) NE 0 THEN iyminmesh = long(yminmesh[0]) ELSE iyminmesh = 0l … … 413 413 iyminmesh = 0 > iyminmesh < iymaxmesh 414 414 jpj = iymaxmesh-iyminmesh+1 415 ymin = iyminmesh 415 ymin = iyminmesh 416 416 ymax = iymaxmesh 417 417 nyy = jpjglo … … 422 422 ENDIF 423 423 IF keyword_set(zalreadycut) THEN BEGIN 424 zmin = 0 425 zmax = jpk - 1 424 zmin = 0 425 zmax = jpk - 1 426 426 nzz = jpk 427 ENDIF ELSE BEGIN 427 ENDIF ELSE BEGIN 428 428 jpkglo = long(nz) 429 429 IF n_elements(zminmesh) NE 0 THEN izminmesh = long(zminmesh[0]) ELSE izminmesh = 0l … … 433 433 izminmesh = 0 > izminmesh < izmaxmesh 434 434 jpk = izmaxmesh-izminmesh+1 435 zmin = izminmesh 435 zmin = izminmesh 436 436 zmax = izmaxmesh 437 437 nzz = jpkglo … … 516 516 ELSE glamt = reform(glamt, nxx, /over) 517 517 CASE size(glamt, /n_dimensions) OF 518 1:BEGIN 518 1:BEGIN 519 519 IF n_elements(glamt) EQ 1 THEN glamt = replicate(glamt[0], jpi, jpj) $ 520 520 ELSE glamt = glamt[xmin:xmax]#replicate(1, jpj) … … 550 550 ELSE gphit = reform(gphit, nyy, /over) 551 551 CASE size(gphit, /n_dimensions) OF 552 1:BEGIN 552 1:BEGIN 553 553 IF n_elements(gphit) EQ 1 THEN gphit = replicate(gphit[0], jpi, jpj) $ 554 554 ELSE gphit = replicate(1, jpi)#gphit[ymin:ymax] … … 644 644 ;==================================================== 645 645 ; 646 IF n_elements(yreverse) EQ 0 THEN BEGIN 646 IF n_elements(yreverse) EQ 0 THEN BEGIN 647 647 IF jpj GT 1 THEN BEGIN 648 648 IF total(gphit[0, 1:jpj-1] LT gphit[0, 0:jpj-2]) GT jpj/2 THEN key_yreverse = 1 ELSE key_yreverse = 0 … … 993 993 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 994 994 ; 995 ;996 995 ;==================================================== 997 996 ; e1[tuvf] from degree to meters … … 1125 1124 AND total(tmask[*, 0, *]) EQ 0 AND total(tmask[*, jpj-1, *]) EQ 0 $ 1126 1125 AND total(tmask[0, *, *]) EQ 0 AND total(tmask[jpi-1, *, *]) EQ 0 THEN BEGIN 1127 IF NOT keyword_set(key_periodic) THEN BEGIN 1126 IF NOT keyword_set(key_periodic) THEN BEGIN 1128 1127 xminmesh = ixminmesh + 1 1129 1128 xmaxmesh = ixmaxmesh - 1 … … 1136 1135 gphit = reverse(gphit, 2) 1137 1136 glamt = reverse(glamt, 2) 1138 tmask = reverse(tmask, 2) 1137 tmask = reverse(tmask, 2) 1139 1138 IF jpk EQ 1 THEN tmask = reform(tmask, jpi, jpj, jpk, /over) 1140 1139 ENDIF -
trunk/SRC/Grid/micromeshmask.pro
r451 r495 104 104 zgr_varlist = strtrim(strlowcase(zgr_varlist), 2) 105 105 ; is e3t a real 3D array? 106 IF (where(zgr_varlist EQ 'e3t'))[0] NE -1 THEN BEGIN 106 IF (where(zgr_varlist EQ 'e3t'))[0] NE -1 THEN BEGIN 107 107 varinq = ncdf_varinq(cdfid, 'e3t') 108 108 if varinq.ndims GE 3 THEN BEGIN … … 111 111 ncdf_diminq, cdfid, varinq.dim[2], name, kkk 112 112 IF iii EQ jpi AND jjj EQ jpj AND kkk EQ jpk THEN key_e3_3d = 1 113 ENDIF 113 ENDIF 114 114 ENDIF 115 115 ; is gdept a real 3D array? 116 IF (where(zgr_varlist EQ 'gdept'))[0] NE -1 THEN BEGIN 116 IF (where(zgr_varlist EQ 'gdept'))[0] NE -1 THEN BEGIN 117 117 varinq = ncdf_varinq(cdfid, 'gdept') 118 118 if varinq.ndims GE 3 THEN BEGIN … … 121 121 ncdf_diminq, cdfid, varinq.dim[2], name, kkk 122 122 IF iii EQ jpi AND jjj EQ jpj AND kkk EQ jpk THEN key_gdep_3d = 1 123 ENDIF 123 ENDIF 124 124 ENDIF 125 125 ;------------------------------------------------------ … … 137 137 dimidy_m = ncdf_dimdef(cdfidout, 'y_m', jpj_m) 138 138 dimidz = ncdf_dimdef(cdfidout, 'z', jpk) 139 ; global attribut s139 ; global attributes 140 140 ncdf_attput, cdfidout, 'IDL_Program_Name', 'micromeshmask.pro', /GLOBAL 141 141 ncdf_attput, cdfidout, 'Creation_Date', systime(), /GLOBAL -
trunk/SRC/Grid/ncdf_meshread.pro
r493 r495 297 297 ncdf_diminq, cdfid, varinq.dim[2], name, kkk 298 298 IF iii EQ jpiglo AND jjj EQ jpjglo AND kkk EQ jpkglo THEN key_gdep_3d = 1 299 ENDIF 300 ENDIF 299 ENDIF 300 ENDIF 301 301 ; for compatibility with old versions of meshmask/partial steps 302 302 e3t_ps = -1 … … 315 315 key_partialstep = 1 316 316 ENDIF 317 ENDIF 317 ENDIF 318 318 ENDIF 319 319 ; … … 465 465 ENDIF 466 466 ; boundary conditions used to compute umask. 467 IF ncdf_varid(cdfid, 'umask') NE -1 THEN BEGIN 467 IF ncdf_varid(cdfid, 'umask') NE -1 THEN BEGIN 468 468 varinq = ncdf_varinq(cdfid, 'umask') 469 469 name = varinq.name … … 482 482 ENDIF ELSE umaskred = bytarr(jpj, jpk) 483 483 ; boundary conditions used to compute fmask (1). 484 IF ncdf_varid(cdfid, 'fmask') NE -1 THEN BEGIN 484 IF ncdf_varid(cdfid, 'fmask') NE -1 THEN BEGIN 485 485 varinq = ncdf_varinq(cdfid, 'fmask') 486 486 name = varinq.name … … 497 497 ENDIF ELSE fmaskredy = bytarr(jpj, jpk) 498 498 ; boundary conditions used to compute vmask 499 IF ncdf_varid(cdfid, 'vmask') NE -1 THEN BEGIN 499 IF ncdf_varid(cdfid, 'vmask') NE -1 THEN BEGIN 500 500 varinq = ncdf_varinq(cdfid, 'vmask') 501 501 name = varinq.name … … 525 525 ENDIF ELSE vmaskred = bytarr(jpi, jpk) 526 526 ; boundary conditions used to compute fmask (2). 527 IF ncdf_varid(cdfid, 'fmask') NE -1 THEN BEGIN 527 IF ncdf_varid(cdfid, 'fmask') NE -1 THEN BEGIN 528 528 varinq = ncdf_varinq(cdfid, 'fmask') 529 529 name = varinq.name … … 548 548 ;------------------------------------------------------- 549 549 IF (where(allvarname EQ 'e3t_0'))[0] NE -1 THEN fnamevar = ['e3t_0', 'e3w_0', 'gdept_0', 'gdepw_0'] $ 550 ELSE fnamevar = ['e3t', 'e3w', 'gdept', 'gdepw'] 550 ELSE fnamevar = ['e3t', 'e3w', 'gdept', 'gdepw'] 551 551 for i = 0, n_elements(fnamevar)-1 do begin 552 552 varinq = ncdf_varinq(cdfid, fnamevar[i]) -
trunk/SRC/Grid/smallmeshmask.pro
r475 r495 109 109 zgr_varlist = strtrim(strlowcase(zgr_varlist), 2) 110 110 ; is e3t a real 3D array? 111 IF (where(zgr_varlist EQ 'e3t'))[0] NE -1 THEN BEGIN 111 IF (where(zgr_varlist EQ 'e3t'))[0] NE -1 THEN BEGIN 112 112 varinq = ncdf_varinq(cdfid, 'e3t') 113 113 if varinq.ndims GE 3 THEN BEGIN … … 116 116 ncdf_diminq, cdfid, varinq.dim[2], name, kkk 117 117 IF iii EQ jpi AND jjj EQ jpj AND kkk EQ jpk THEN key_e3_3d = 1 118 ENDIF 118 ENDIF 119 119 ENDIF 120 120 ; is gdept a real 3D array? 121 IF (where(zgr_varlist EQ 'gdept'))[0] NE -1 THEN BEGIN 121 IF (where(zgr_varlist EQ 'gdept'))[0] NE -1 THEN BEGIN 122 122 varinq = ncdf_varinq(cdfid, 'gdept') 123 123 if varinq.ndims GE 3 THEN BEGIN … … 126 126 ncdf_diminq, cdfid, varinq.dim[2], name, kkk 127 127 IF iii EQ jpi AND jjj EQ jpj AND kkk EQ jpk THEN key_gdep_3d = 1 128 ENDIF 128 ENDIF 129 129 ENDIF 130 130 ;------------------------------------------------------ … … 141 141 dimidy = ncdf_dimdef(cdfidout, 'y', jpj) 142 142 dimidz = ncdf_dimdef(cdfidout, 'z', jpk) 143 ; global attribut s143 ; global attributes 144 144 ncdf_attput, cdfidout, 'IDL_Program_Name', 'smallmeshmask.pro', /GLOBAL 145 145 ncdf_attput, cdfidout, 'Creation_Date', systime(), /GLOBAL
Note: See TracChangeset
for help on using the changeset viewer.