*=*=*=*= iniwrite.html =*=*=*=*
SUBROUTINE iniwrite(unit,ldrs,idayref,phis) IMPLICIT NONE c======================================================================= c c Auteur: L. Fairhead , P. Le Van c ------- c c Objet: c ------ c c ecriture du fichier histoire c c======================================================================= c----------------------------------------------------------------------- c Declarations: c ------------- #include "dimensions.h" #include "paramet.h" #include "comconst.h" #include "comvert.h" #include "comgeom.h" #include "temps.h" #include "ener.h" #include "logic.h" #include "drsdef.h" #include "description.h" #include "serre.h" c Arguments: c ---------- INTEGER*4 idayref INTEGER unit LOGICAL ldrs REAL phis(ip1jmp1) c Local: c ------ INTEGER length,l parameter (length = 100) REAL tab_cntrl(length) ! tableau des parametres du run INTEGER loop INTEGER ierr, setvdim, putvdim, putdat, setname,cluvdb INTEGER setdim INTEGER ind1,indlast c----------------------------------------------------------------------- DO l=1,length tab_cntrl(l)=0. ENDDO do loop = 1, llm sig_s(loop) = s(loop) ** (1./kappa) enddo tab_cntrl(1) = float(iim) tab_cntrl(2) = float(jjm) tab_cntrl(3) = float(llm) tab_cntrl(4) = float(idayref) tab_cntrl(5) = rad tab_cntrl(6) = omeg tab_cntrl(7) = g tab_cntrl(8) = mugaz tab_cntrl(9) = kappa tab_cntrl(10) = daysec tab_cntrl(11) = dtvr tab_cntrl(12) = etot0 tab_cntrl(13) = ptot0 tab_cntrl(14) = ztot0 tab_cntrl(15) = stot0 tab_cntrl(16) = ang0 c c .......... P.Le Van ( ajout le 8/04/96 ) ......... c ..... parametres pour le zoom ...... tab_cntrl(17) = clon tab_cntrl(18) = clat tab_cntrl(19) = alphax tab_cntrl(20) = alphay c c ..... ajout le 6/05/97 ....... c IF ( fxyhypb ) THEN tab_cntrl(21) = 0. ELSE tab_cntrl(21) = 1. ENDIF c ......................................................... IF(ldrs) THEN c Ecriture DRS du tableau des parametres du run ierr = CLUVDB() ierr = SETDIM(1,'index',' ',length,1.,float(length)) ierr = SETNAME(descript,'controle','Tableau des parametres du run' . ,' ',' ') ierr = PUTDAT(unit,tab_cntrl) c Ecriture des longitudes et latitudes ierr = SETNAME(descript,'rlonu','Longitudes aux points u', . 'radians',' ') ierr = PUTVDIM(unit,iip1,rlonu,ind1,indlast) write(6,*)' INIECRIBA: ind1,indlast ',ind1,indlast ierr = SETNAME(descript,'rlatu','Latitudes aux points u', . 'radians',' ') ierr = PUTVDIM(unit,jjp1,rlatu,ind1,indlast) write(6,*)' INIECRIBA: ind1,indlast ',ind1,indlast ierr = SETNAME(descript,'rlonv','Longitudes aux points v', . 'radians',' ') ierr = PUTVDIM(unit,iip1,rlonv,ind1,indlast) write(6,*)' INIECRIBA: ind1,indlast ',ind1,indlast ierr = SETNAME(descript,'rlatv','Latitudes aux points v', . 'radians',' ') ierr = PUTVDIM(unit,jjm,rlatv,ind1,indlast) write(6,*)' INIECRIBA: ind1,indlast ',ind1,indlast c Ecriture des niveaux verticaux ierr = SETNAME(descript,'sig','Niveaux sigmas', . ' ',' ') ierr = PUTVDIM(unit,llm+1,sig,ind1,indlast) write(6,*)' INIECRIBA: ind1,indlast ',ind1,indlast ierr = SETNAME(descript,'s','Niveaux s', . ' ',' ') ierr = PUTVDIM(unit,llm,s,ind1,indlast) write(6,*)' INIECRIBA: ind1,indlast ',ind1,indlast ierr = SETNAME(descript,'sig_s','sigmas aux niveaux s', . ' ',' ') ierr = PUTVDIM(unit,llm,sig_s,ind1,indlast) write(6,*)' INIECRIBA: ind1,indlast ',ind1,indlast c Ecriture aire et coefficients de passage cov. <-> contra. <--> naturel ierr = CLUVDB() ierr = SETVDIM(1,' ','rlonu',' ',' ',rlonu(1),rlonu(iip1)) ierr = SETVDIM(2,' ','rlatu',' ',' ',rlatu(1),rlatu(jjp1)) ierr = SETNAME(descript,'cu', . 'Coefficients de passage cov <--> naturel',' ',' ') ierr = PUTDAT(unit,cu) ierr = CLUVDB() ierr = SETVDIM(1,' ','rlonv',' ',' ',rlonv(1),rlonv(iip1)) ierr = SETVDIM(2,' ','rlatv',' ',' ',rlatv(1),rlatv(jjm)) ierr = SETNAME(descript,'cv', . 'Coefficients de passage cov <--> naturel',' ',' ') ierr = PUTDAT(unit,cv) ierr = CLUVDB() ierr = SETVDIM(1,' ','rlonv',' ',' ',rlonv(1),rlonv(iip1)) ierr = SETVDIM(2,' ','rlatu',' ',' ',rlatu(1),rlatu(jjp1)) ierr = SETNAME(descript,'aire','Aires des mailles', . ' ',' ') ierr = PUTDAT(unit,aire) c Ecriture du geopentiel au sol ierr = CLUVDB() ierr = SETVDIM(1,' ','rlonv',' ',' ',rlonv(1),rlonv(iip1)) ierr = SETVDIM(2,' ','rlatu',' ',' ',rlatu(1),rlatu(jjp1)) ierr = SETNAME(descript,'phisinit','Geopotentiel au sol init', . 'm2/s2',' ') ierr = PUTDAT(unit,phis) ELSE WRITE(unit) tab_cntrl WRITE(unit) rlonu,rlatu,rlonv,rlatv,sig,s,sig_s,cu,cv,aire WRITE(unit) phis ENDIF PRINT*,'iim,jjm,llm,idayref',iim,jjm,llm,idayref PRINT*,'rad,omeg,g,mugaz,kappa', s rad,omeg,g,mugaz,kappa PRINT*,'daysec,dtvr',daysec,dtvr RETURN END