Changeset 290


Ignore:
Timestamp:
11/18/19 17:08:48 (4 years ago)
Author:
dumas
Message:

ISMIP forcing : grad_smb is not interpolated between years

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SOURCES/Ant16_files/climat_InitMIP_years_perturb_mod.f90

    r288 r290  
    9090 
    9191  namelist/clim_smb_T_gen/smb_file,coef_smb_unit,temp_annual_file 
     92! version Aurelien Groenland avec file_lapse : 
     93!  namelist/smb_anom_initMIP/file_smb_anom,file_lapse,coef_smb_anom_unit,nb_snap,time_depart_snaps,massb_time 
     94! version utilisee pour Antarctique :   
    9295  namelist/smb_anom_initMIP/file_smb_anom,file_lapse,coef_smb_anom_unit,nb_snap,time_depart_snaps,massb_time 
    9396   
     
    353356     bm_time(:,:) = bm_0(:,:) 
    354357     tann_time(:,:) = ta0(:,:) 
     358     if (massb_time == 3 ) then 
     359        grad_smb_time(:,:) =   grad_smb (:,:,1) 
     360        grad_tann_time(:,:) = grad_tann(:,:,1) 
     361     endif 
    355362  else if (time.ge.time_snap(nb_snap)) then  ! time apres le forcage : constant = derniere année nb_snap 
    356363     bm_time(:,:) =  bm_0(:,:) + smb_anom (:,:,nb_snap) 
    357364     tann_time(:,:) = ta0(:,:) + tann_anom(:,:,nb_snap) 
    358365     if (massb_time == 3 ) then 
    359         grad_smb_time(:,:) =   grad_smb (:,:,1) 
    360         grad_tann_time(:,:) = grad_tann(:,:,1) 
     366        grad_smb_time(:,:) =   grad_smb (:,:,nb_snap) 
     367        grad_tann_time(:,:) = grad_tann(:,:,nb_snap) 
    361368     endif 
    362369!~   else if (time.ge.time_snap(nb_snap)) then  ! time apres le forcage : constant moy 20 dernieres années  
     
    375382           tann_time(:,:) = ta0(:,:) + tann_anom(:,:,k) 
    376383           if (massb_time == 3 ) then 
    377               grad_smb_time(:,:) =   grad_smb(:,:,k) + (grad_smb(:,:,k+1)-grad_smb(:,:,k)) *   & 
    378                 (time-time_snap(k))/(time_snap(k+1)-time_snap(k)) 
    379               grad_tann_time(:,:) = grad_tann(:,:,k) + (grad_tann(:,:,k+1)-grad_tann(:,:,k)) *   & 
    380                 (time-time_snap(k))/(time_snap(k+1)-time_snap(k)) 
     384              grad_smb_time(:,:) =   grad_smb(:,:,k) 
     385              grad_tann_time(:,:) = grad_tann(:,:,k) 
    381386           endif 
    382387           exit 
Note: See TracChangeset for help on using the changeset viewer.