      subroutine initpost(nh)

       USE mod_vrbls
      USE mod_extra
       USE mod_masks
       USE mod_pvrbls
      implicit none
      include 'param_o.h'
!!JNT      include 'extra.comm'
      include 'mapot.comm'
      include 'const.h'
      include 'dynam.comm'
     
      
      integer,parameter::npes=nsub*nsub*nm
      integer::nh,n,mype0,ix,jy,imaxV,imaxH,imin,jmaxV,jmaxH,jmin, &
               mype,i,j,l
      real, dimension(0:ilm+1,0:jlm+1):: dum1
      real, dimension(0:ilm+1,0:jlm+1,lm):: dum2
      real, dimension(0:ilm+1,0:jlm+1,nsoil):: dum3!!!!!!!!!!!!!!!!!!!!!!!!
      
    !  character (len=03):: c_mype, c_nh !!!!!!!!DRAGAN
      character (len=04):: c_mype, c_nh  !DRAGAN
      !character (len=02):: c_mype!DRAGAN
      
      
      character (len=150):: c_filename1 !!!!!!!!!!!!!!!!!!!!!!!
     
     
      real::pbi
      integer::lmap1
      real,parameter::R=287.04

!      spl=(/50000./)
!      spl=(/100000./)
!GSM      spl=(/5000.,10000.,15000.,20000.,25000.,30000.,35000.,40000.,  &
!GSM            45000.,50000.,55000., &
!GSM            60000.,65000.,70000.,75000.,80000.,85000.,90000.,95000.,100000./)
!JBF: Niveis inclusos sao os mesmos do GFS (31 Níveis)

      spl=(/100.,200.,300.,500.,700.,1000.,2000.,3000., &
            5000.,7000.,10000.,15000.,20000.,25000., &
            30000.,35000.,40000., &
            45000.,50000.,55000., &
            60000.,65000.,70000.,75000.,80000.,85000., &
            90000.,92500.,95000.,97500.,100000./)


      alsl=alog(spl)

      write(c_nh,1000) nh
 !1000 format(i3.3) !!!!!!!!!!!DRAGAN
 
 1000 format(i4.4)
 
!* !$omp parallel do private(mype,n,mype0,jy,ix,list,c_filename1,c_mype,imaxV,imaxH,imin,jmaxV,jmaxH,jmin,dum1,dum2,dum3)
!***************************************************************************   
        do mype = 0, npes-1
!***************************************************************************
         n = mype/nxy + 1
         mype0 = mype - (n-1)*nxy
          jy = (mype0/ixm) + 1
          ix = mod(mype0, ixm)+1
          list = 110 + mype + 1
          if (mod(mype,100).eq.0) print *,'mype = ', mype, 'list = ', list

!-----------------------------------------------------------------------   
          write(c_mype,1000) mype
!          c_filename1='../../RUN/data/data_out/GEFfcst_'//   &

!!!          print*,"C_MYPE =", C_MYPE, "C_NH =", C_NH

         c_filename1='GEFfcst_'//   &
                  c_mype//"."//c_nh

!Dragan 03/07/2019
!           c_filename1='/scratchout/grupos/grpeta/projetos/tempo/oper/GEF_v1.0.0-KF/2018111300/GEFfcst_'//   &
!                  c_mype//"."//c_nh!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

         if (mod(mype,100).eq.0) print *,"c_fname1 = ", c_filename1
         open(unit=list, file=c_filename1, form='unformatted')
!-----------------------------------------------------------------------   
         imaxV = ix * ildom
         imaxH = imaxV + 1
         imin  = imaxH - ildom
         jmaxV = jy * jldom
         jmaxH = jmaxV + 1
         jmin  = jmaxH - jldom
!-----------------------------------------------------------------------   
         read(list) dum1 
         pd(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 read(list)dum2
         t(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	 read(list)dum2
         u(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
 	 read(list)dum2
         v(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
 	 read(list)dum2
         q(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
!! 	   read(list)dum2
!!         q2(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
 	 read(list)dum2

        
         cwm(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
         read(list) dum1 
         ths(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
         read(list) dum1 
         u00(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

          read(list)ul
       
!         read(list) dum1 
!         tshltr(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
          

!         read(list) dum1 
!         qshltr(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
 
!         read(list) dum1 
!         plm(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

!!!!!!!!!!!!!!!!!!!!non-hydrostatic!!!!!!!!!!!!!!!

!!!avg2017         w(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
!!!avg2017 	 read(list)dum2
	 
!!!avg2017	 dwdt(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
!!!avg2017 	 read(list)dum2
	 
!!!avg2017	 z(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
!!!avg2017 	 read(list)dum2
!!!!!!!!!!!!!!!!!!!!!





      close(list)


!+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

!         c_filename1='../../RUN/data/data_out/GEFfcstVEG_'//   &
!                  c_mype//"."//c_nh
         c_filename1='GEFfcstVEG_'//  &
	 c_mype//"."//c_nh

!Dragan 03/07/2019
!         c_filename1='/scratchout/grupos/grpeta/projetos/tempo/oper/GEF_v1.0.0-KF/2018111300/GEFfcstVEG_'//  &
!	 c_mype//"."//c_nh

	 
         if (mod(mype,100).eq.0) print *,"c_fname1 = ", c_filename1
	 open(unit=list, file=c_filename1, form='unformatted')
         
	 read(list) dum1 
         tshltr(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 read(list) dum1 
         qshltr(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 
	 read(list) dum1 
         plm(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 
	 
	 read(list) dum1 
         sfclhx(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	 read(list) dum1 
         sfcshx(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	   read(list) dum1   !!!avg2017
           qwbs(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)  !!!avg2017
	 
	   read(list) dum1   !!!avg2017
           twbs(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)  !!!avg2017
	 
	   read(list) dum1   !!!avg2017
           grnflx(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)  !!!avg2017
	 
	 read(list) dum1 
         vegfrc(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	   read(list) dum1   !!!avg2017
           IVGTYP(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)  !!!avg2017
	 
	   read(list) dum1   !!!avg2017
           ISLTYP(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)  !!!avg2017
	
	   read(list) dum1   !!!avg2017
           glat(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)  !!!avg2017
	 
	   read(list) dum1   !!!avg2017
           glon(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)  !!!avg2017
	 
	 read(list) dum1 
         sm(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	    read(list)dum2  !!!avg2017
            htm(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	 
	    read(list)dum2  !!!avg2017
            vtm(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	
	 read(list) dum1 
         sice(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 read(list) dum1 
         z0(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	 read(list)dum2
         omgalf(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	
	 read(list) dum1 
         albedo(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 read(list) dum1 
         albase(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1 !!!avg2017
            mxsnal(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1  !!!avg2017
            czen(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	    read(list) dum1   !!!avg2017
            czmean(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	    read(list) dum1   !!!avg2017
            fis(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1   !!!avg2017
            q10(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1   !!!avg2017
            th10(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1   !!!avg2017
            qz0(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1   !!!avg2017
            thz0(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	read(list) dum1 
        u10(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	read(list) dum1 
        v10(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
            read(list) dum1   !!!avg2017
            uz0(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1   !!!avg2017
            vz0(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1   !!!avg2017
            ustar(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	    read(list) dum1   !!!avg2017
            ths(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm) 
	 
            read(list)dum2  !!!avg2017
            q2(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	 
	    read(list)dum2    !!!avg2017
            tcucn(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	 
	    read(list)dum2   !!!avg2017
            train(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	 
	    read(list)dum2    !!!avg2017
            div(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	 
	    read(list)dum2    !!!avg2017
            rtop(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)

      close(list)


!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


!         c_filename1='../../RUN/data/data_out/GEF_sw_rdtn'//   &
!Dragan 03/07/2019  
             c_filename1='GEF_sw_rdtn'//   &
                  c_mype//"."//c_nh

!             c_filename1='/scratchout/grupos/grpeta/projetos/tempo/oper/GEF_v1.0.0-KF/2018111300/GEF_sw_rdtn'//   &
!                  c_mype//"."//c_nh

         if (mod(mype,100).eq.0) print *,"c_fname1 = ", c_filename1
         open(unit=list, file=c_filename1, form='unformatted')
             read(list) dum1   !!!avg2017
             RSWIN(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	     read(list) dum1    !!!avg2017
             RSWOUT(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	     read(list) dum1    !!!avg2017
             RSWTOA(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 read(list) dum1 
         ASWIN(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	 read(list) dum1 
         ASWOUT(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
  	     read(list) dum1   !!!avg2017
             ASWTOA(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
             read(list) dum1   !!!avg2017
             rswnet(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
             read(list)dum2   !!!avg2017
             RSWTT(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)

         close(list)
!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


!         c_filename1='../../RUN/data/data_out/GEF_lw_rdtn'//   &
!Dragan 03/07/2019 
             c_filename1='GEF_lw_rdtn'//   &
                   c_mype//"."//c_nh


!             c_filename1='/scratchout/grupos/grpeta/projetos/tempo/oper/GEF_v1.0.0-KF/2018111300/GEF_lw_rdtn'//   &
!                  c_mype//"."//c_nh



         if (mod(mype,100).eq.0) print *,"c_fname1 = ", c_filename1
         open(unit=list, file=c_filename1, form='unformatted')
             read(list) dum1   !!!avg2017
             RLWIN(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
       	     read(list) dum1   !!!avg2017
             RLWOUT(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
             read(list) dum1    !!!avg2017
             RLWTOA(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 read(list) dum1 
         ALWIN(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	 read(list) dum1 
         ALWOUT(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	 read(list) dum1 
         ALWTOA(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
  	     read(list) dum1    !!!avg2017
             rlwnet(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
             read(list)dum2    !!!avg2017
             RLWTT(imin:imaxH, jmin:jmaxH,n,:) = dum2(1:ilm,1:jlm,:)
	 
             read(list) dum1     !!!avg2017
             epsr(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

             read(list) dum1    !!!avg2017
             radot(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
             read(list) dum1     !!!avg2017
             sigt4(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

         close(list)
!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
!        c_filename1='../../RUN/data/data_out/GEF_clouds'//   &


!Dragan 03/07/2019     
             c_filename1='GEF_clouds'//   &
                   c_mype//"."//c_nh


!             c_filename1='/scratchout/grupos/grpeta/projetos/tempo/oper/GEF_v1.0.0-KF/2018111300/GEF_clouds'//   &
!                  c_mype//"."//c_nh

         if (mod(mype,100).eq.0) print *,"c_fname1 = ", c_filename1
         open(unit=list, file=c_filename1, form='unformatted')
             read(list) dum1   !!!avg2017
             CUPPT(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
             read(list) dum1   !!!avg2017
             cfracl(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
             read(list) dum1   !!!avg2017
             cfracm(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
             read(list) dum1   !!!avg2017
             cfrach(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

             read(list) dum1   !!!avg2017
             acfrcv(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
             read(list) dum1    !!!avg2017
             acfrst(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

             read(list) dum1    !!!avg2017
             f_ice(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	     read(list) dum1     !!!avg2017
             f_rain(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	     read(list) dum1     !!!avg2017
             f_RimeF(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

             read(list) dum1     !!!avg2017
             cnvtop(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
             read(list) dum1    !!!avg2017
             cnvbot(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
       read(list) dum1 
       htop(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
       read(list) dum1 
       hbot(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)


         close(list)
!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
!        c_filename1='../../RUN/data/data_out/GEF_precANDsoil'//   &

!Dragan 03/07/2019  
             c_filename1='GEF_precandsoil'//   &
                  c_mype//"."//c_nh


!             c_filename1='/scratchout/grupos/grpeta/projetos/tempo/oper/GEF_v1.0.0-KF/2018111300/GEF_precandsoil'//   &
!                  c_mype//"."//c_nh

         if (mod(mype,100).eq.0) print *,"c_fname1 = ", c_filename1
         open(unit=list, file=c_filename1, form='unformatted')
         
	 read(list) dum1 
         acprec(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	 read(list) dum1 
         cuprec(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 read(list) dum1 
         aprec(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 read(list) dum1 
         acsnow(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

              read(list) dum1 !!!avg2017
              acsnom(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

         read(list) dum1 
         prec(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
!- - - - - - - - - - - 
     
         read(list)dum3
         stc(imin:imaxH, jmin:jmaxH,n,:) = dum3(1:ilm,1:jlm,:)


         read(list)dum3
         smc(imin:imaxH, jmin:jmaxH,n,:) = dum3(1:ilm,1:jlm,:)

         read(list) dum1 
         SMSTAV(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
	 read(list) dum1 
         BGROFF(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

         read(list) dum1 
         SSROFF(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

              read(list) dum1   !!!avg2017
              cmc(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	 
        read(list) dum1 
        potevp (imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)

        read(list) dum1 
        potflx(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
           	 
        read(list) dum1 
        sfcevp(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm) 
	
	read(list) dum1 
        subshx(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	read(list) dum1 
        snopcx(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	read(list) dum1 
        si(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
   	      read(list) dum1   !!!avg2017
              sno(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
   	      read(list) dum1    !!!avg2017
              smstot(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
              read(list) dum1    !!!avg2017
              soiltb(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
  	      read(list) dum1   !!!avg2017
              tg(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
   	      read(list) dum1  !!!avg2017 
              sr(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	      read(list) dum1   !!!avg2017
              akhs(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm)
	
	      read(list) dum1    !!!avg2017
              akms(imin:imaxH, jmin:jmaxH,n) = dum1(1:ilm,1:jlm) 

   close(list)



!***********************************************************************
            end do

!* !$omp end parallel do
  
!***********************************************************************



!-----------------------------------------------------------------------   
       

	do j=1,jm
	do i=1,im
!	   print *,i,j,q2(i,j,3,36)
        enddo
        enddo
	
         open(1,file='sfceta.dat',form='unformatted')

!Dragan 03/07/1982        open(1,file='/scratchout/grupos/grpeta/projetos/tempo/oper/GEF_v1.0.0-KF/2018111300/sfceta.dat',form='unformatted')

	read(1)fis,res,htm,vtm,lmh,lmv
	close(1)


	open(1,file='dynam.dat',form='unformatted')
!Dragan 03/07/1982        open(1,file='/scratchout/grupos/grpeta/projetos/tempo/oper/GEF_v1.0.0-KF/2018111300/dynam.dat',form='unformatted')
	read(1)fadv, fadv2,fadt, rd,  f4d,f4q2, ef4t, fkin, &
                    deta, rdeta, aeta, eta, dfl, daeta
	close(1)

!      print *,fadv,fadt,rd,f4d
      do l=1,lp1
!        print *,l,deta(l),dfl(l)
      enddo
!      stop

      do n=1,nm
      DO J=1,jm
      DO I=1,IM
        PDSL(I,J,n)    =RES(I,J,n)*PD(I,J,n)
        PBI            =PD(I,J,n)+PT
        PINT(I,J,n,LP1)  =PBI
        ALPINT(I,J,n,LP1)=ALOG(PBI)
	if(i.eq.56.and.j.eq.65.and.n.eq.6)then
!	  print *,i,j,n,pd(i,j,n),pdsl(i,j,n),res(i,j,n),pint(i,j,n,lp1)
        endif
      ENDDO
      ENDDO
      ENDDO

!
!     COMPUTE PRESSURE VALUES ABOVE THE SURFACE.
!
      DO L=LM,1,-1
      do n=1,nm
      DO J=1,jm
      DO I=1,IM
          PBI          =PDSL(I,J,n)*ETA(L)+PT
          PINT(I,J,n,L)  =PBI
          ALPINT(I,J,n,L)=ALOG(PBI)
	if(i.eq.1.and.j.eq.21.and.n.eq.1)then
!	  print *,i,j,n,l,pbi,pdsl(i,j,n),res(i,j,n),eta(l)
        endif
      ENDDO
      ENDDO
      ENDDO
      ENDDO

      do n=1,nm
      DO J=1,JM-1
      DO I=1,IM-1
        PDVP1(I,J,n)=0.25*(PDSL(I,J,n)+PDSL(I+1,J,n)  &
                       +PDSL(I,J+1,n)+PDSL(I+1,J+1,n))
      ENDDO
      ENDDO
      ENDDO

!C
!C       COMPUTE ALPINT AND PINT ONLY FOR THOSE POINTS THAT WE OWN
!C
!C       IF ( J .GE. JSTA .AND. J .LE. JEND ) THEN
!C
      do n=1,nm
      do j=1,jm
      do i=1,im
        LMAP1=LMH(I,J,n)+1
        DO L=LMAP1,LM
          ALPINT(I,J,n,L+1)=(DFL(L)-DFL(L+1))/(R*T(I,J,n,L))  &
                        +ALPINT(I,J,n,L)
          PINT(I,J,n,L+1)=EXP(ALPINT(I,J,n,L+1))
        ENDDO
      enddo
      enddo
      enddo

      do l=1,lm
!        print *,l,t(30,101,3,l),t(30,81,3,l),q(30,101,3,l)
      enddo

      end subroutine initpost
