Subversion Repositories lagranto.ecmwf

Rev

Rev 31 | Rev 36 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 31 Rev 33
Line 335... Line 335...
335
 
335
 
336
c     If not full list of vertical levels, reduce AK,BK arrays
336
c     If not full list of vertical levels, reduce AK,BK arrays
337
      if ( (leveltype.eq.'hybrid_sigma_pressure').and.
337
      if ( (leveltype.eq.'hybrid_sigma_pressure').and.
338
     >     (nakbktmp.ne.vardim(3) ) )
338
     >     (nakbktmp.ne.vardim(3) ) )
339
     >then
339
     >then
340
         print*,' WARNING: only subset of vertical levels used...'
340
c         print*,' WARNING: only subset of vertical levels used...'
341
         do k=1,vardim(3)
341
         do k=1,vardim(3)
342
            if ( vertical_swap.eq.1 ) then
342
            if ( vertical_swap.eq.1 ) then
343
               aktmp(k) = aktmp( k+nakbktmp-vardim(3) )
343
               aktmp(k) = aktmp( k+nakbktmp-vardim(3) )
344
               bktmp(k) = bktmp( k+nakbktmp-vardim(3) )
344
               bktmp(k) = bktmp( k+nakbktmp-vardim(3) )
345
            endif
345
            endif
Line 416... Line 416...
416
         if ( leveltype.eq.'hybrid_sigma_pressure' ) then
416
         if ( leveltype.eq.'hybrid_sigma_pressure' ) then
417
           do k=1,vardim(3)
417
           do k=1,vardim(3)
418
              if ( vertical_swap.eq.1 ) then
418
              if ( vertical_swap.eq.1 ) then
419
                 ak(k) = aktmp(vardim(3)-k+1)
419
                 ak(k) = aktmp(vardim(3)-k+1)
420
                 bk(k) = bktmp(vardim(3)-k+1)
420
                 bk(k) = bktmp(vardim(3)-k+1)
-
 
421
              else
-
 
422
                 ak(k) = aktmp(k)
-
 
423
                 bk(k) = bktmp(k)
421
              endif
424
              endif
422
           enddo
425
           enddo
423
         elseif (leveltype.eq.'air_pressure' ) then
426
         elseif (leveltype.eq.'air_pressure' ) then
424
           do k=1,vardim(3)
427
           do k=1,vardim(3)
425
              if ( vertical_swap.eq.1 ) then
428
              if ( vertical_swap.eq.1 ) then
Line 679... Line 682...
679
      if (abs(delta+dx).lt.eps) then
682
      if (abs(delta+dx).lt.eps) then
680
          closear = 1
683
          closear = 1
681
      else
684
      else
682
          closear = 0
685
          closear = 0
683
      endif
686
      endif
684
      print*,'2: closear=',closear,varmax(1),varmin(1)
-
 
685
 
687
 
686
c     Save output array - close array and swap on demand
688
c     Save output array - close array and swap on demand
687
      do j=1,vardim(2)
689
      do j=1,vardim(2)
688
        do k=1,vardim(3)
690
        do k=1,vardim(3)
689
          do i=1,vardim(1)
691
          do i=1,vardim(1)