;------------------------------------------------------------ ;------------------------------------------------------------ ;------------------------------------------------------------ ;+ ; NAME:computegrid ; ; PURPOSE:calcule les parametres (necessaires aux traces) d''une ; grille reguliere avec ; - les points T, U et V sont confondus ; - un seul niveau vertical. ; ; CATEGORY:grille ; ; CALLING SEQUENCE:computegrid, departx, departy, pasx, pasy, nx, ny ; ; INPUTS:des saclaires. ; departx:la longitude minimum ; departy:la latitude minimum ; pasx:la pas suivant la longitude ; pasy:la pas suivant la latitude ; nx:le nombre de points en longitude ; ny:le nombre de points en latitude ; ; KEYWORD PARAMETERS: ; ; OUTPUTS: ; ; COMMON BLOCKS:common.pro ; ; SIDE EFFECTS:definit aussi les parametres pour les grilles U et V ; meme si on n''en a pas besoin. ; ; RESTRICTIONS:programme vite fait, avec les latitudes qui doivent ; aller du sud vers le nord. ; ; EXAMPLE: ; ; MODIFICATION HISTORY:Sebastien Masson (smasson@lodyc.jussieu.fr) ; 2000-04-20 ;- ;------------------------------------------------------------ ;------------------------------------------------------------ ;------------------------------------------------------------ PRO computegrid, departx, departy, pasx, pasy, nx, ny @common ;------------------------------------------------------------ jpiglo = long(nx) jpjglo = long(ny) jpkglo = 1l ; jpi = jpiglo jpj = jpjglo jpk = jpkglo ; ixminmesh =0l ixmaxmesh =long(jpi-1) iyminmesh =0l iymaxmesh =long(jpj-1) izminmesh =0l izmaxmesh =long(jpk-1) ; glamt = departx+findgen(jpi)*pasx glamt = glamt#replicate(1, jpj) glamf = glamt+pasx/2. gphit = departy+findgen(jpj)*pasy gphit = replicate(1, jpi)#gphit gphif = gphit+pasy/2. glamu = glamf glamv = glamt gphiu = gphit gphiv = gphif gdept = 5. gdepw = 5. ; pasx = abs(pasx) pasy = abs(pasy) ; facteurs d'echelle: r = 6371000. rprojete = r*cos(gphit[0,*]*!pi/180.) e1t = rprojete*pasx*!pi/180. e1t = reform(replicate(1, jpi)#e1t[*], jpi, jpj) e2t = replicate(r*pasy*!pi/180., jpi, jpj) ; e1u = e1t e2u = e2t ; rprojete = r*cos(gphiv[0,*]*!pi/180.) e1v = rprojete*pasx*!pi/180. e1v = reform(replicate(1, jpi)#e1v[*], jpi, jpj) e2v = e2t ; e1f = e1v e2f = e2t ; e3t = 10. e3w = 10. ; mask par defauyt a 1 tmask = replicate(1, jpi, jpj) umaskred = replicate(1, jpj) vmaskred = replicate(1, jpi) fmaskredy = replicate(1, jpj) fmaskredx = replicate(1, jpi) ;------------------------------------------------------------ return end