Changeset 353 for trunk


Ignore:
Timestamp:
11/18/21 10:25:18 (3 years ago)
Author:
aquiquet
Message:

Very minor correction to climat_transient_GCM so that we can use it without applying the anomalies (massb_time=0)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SOURCES/climat_transient_GCM_mod.f90

    r350 r353  
    275275! after -> last value 
    276276 
    277   if(time.lt.time_snap(1)) then              ! time before forcing fields 
    278      prec_anomtime(:,:,:) = prec_anom(:,:,:,1) 
    279      tmoi_anomtime(:,:,:) = tmoi_anom(:,:,:,1) 
    280      time_prec    = time 
    281   else if (time.ge.time_snap(nb_snap)) then  ! time after forcing fields 
    282      prec_anomtime(:,:,:) = prec_anom(:,:,:,nb_snap) 
    283      tmoi_anomtime(:,:,:) = tmoi_anom(:,:,:,nb_snap) 
    284      if (abs(time-time_prec-1.).lt.dt) then    
    285         time_prec = time_prec + 1 
     277  if (massb_time.eq.1) then 
     278      
     279     if(time.lt.time_snap(1)) then              ! time before forcing fields 
     280        prec_anomtime(:,:,:) = prec_anom(:,:,:,1) 
     281        tmoi_anomtime(:,:,:) = tmoi_anom(:,:,:,1) 
     282        time_prec    = time 
     283     else if (time.ge.time_snap(nb_snap)) then  ! time after forcing fields 
     284        prec_anomtime(:,:,:) = prec_anom(:,:,:,nb_snap) 
     285        tmoi_anomtime(:,:,:) = tmoi_anom(:,:,:,nb_snap) 
     286        if (abs(time-time_prec-1.).lt.dt) then    
     287           time_prec = time_prec + 1 
     288        endif 
     289     else                                       ! general case 
     290        do k = 1 , nb_snap-1 
     291           if((time.ge.time_snap(k)).and.(time.lt.time_snap(k+1))) then ! between k and k+1  
     292 
     293              prec_anomtime(:,:,:) = prec_anom(:,:,:,k) + (prec_anom(:,:,:,k+1)-prec_anom(:,:,:,k)) *   & 
     294                   (time-time_snap(k))/(time_snap(k+1)-time_snap(k)) 
     295              tmoi_anomtime(:,:,:) = tmoi_anom(:,:,:,k) + (tmoi_anom(:,:,:,k+1)-tmoi_anom(:,:,:,k)) *   & 
     296                   (time-time_snap(k))/(time_snap(k+1)-time_snap(k)) 
     297              if ((abs(time-time_snap(k)).le.dt).and.(abs(time-time_prec-1.).lt.dt)) then     
     298                 time_prec = time_snap(k)     ! time_prec est le temps du precedent 
     299              endif 
     300              exit 
     301           endif 
     302        end do 
    286303     endif 
    287   else                                       ! general case 
    288      do k = 1 , nb_snap-1 
    289         if((time.ge.time_snap(k)).and.(time.lt.time_snap(k+1))) then ! between k and k+1  
    290  
    291            prec_anomtime(:,:,:) = prec_anom(:,:,:,k) + (prec_anom(:,:,:,k+1)-prec_anom(:,:,:,k)) *   & 
    292                 (time-time_snap(k))/(time_snap(k+1)-time_snap(k)) 
    293            tmoi_anomtime(:,:,:) = tmoi_anom(:,:,:,k) + (tmoi_anom(:,:,:,k+1)-tmoi_anom(:,:,:,k)) *   & 
    294                 (time-time_snap(k))/(time_snap(k+1)-time_snap(k)) 
    295            if ((abs(time-time_snap(k)).le.dt).and.(abs(time-time_prec-1.).lt.dt)) then     
    296               time_prec = time_snap(k)     ! time_prec est le temps du precedent 
    297            endif 
    298            exit 
    299         endif 
    300      end do 
    301   endif 
    302  
    303  
     304 
     305  else 
     306      
     307     tmoi_anomtime(:,:,:) = 0. 
     308     prec_anomtime(:,:,:) = 1. 
     309      
     310  end if 
    304311   
    305312! put back climate fields on the topography of the model: 
Note: See TracChangeset for help on using the changeset viewer.