New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 3275 for branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90 – NEMO

Ignore:
Timestamp:
2012-01-25T11:03:39+01:00 (12 years ago)
Author:
charris
Message:

Fix for #899, plus some vvl changes for the CICE interface code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90

    r3261 r3275  
    1414   USE oce             ! ocean dynamics and tracers 
    1515   USE dom_oce         ! ocean space and time domain 
     16   USE domvvl 
    1617   USE phycst, only : rcp, rau0 
    1718   USE in_out_manager  ! I/O manager 
     
    354355 
    355356! Freezing/melting potential 
    356 ! Calculated over NEMO leapfrog timestep (hence 2*dt), so uses tb in  
    357 ! frzmlt which is then applied in going from tb to ta. 
    358 ! May be better using sst_m if not coupling to CICE every time-step 
    359  
    360 !      nfrzmlt(:,:)=rau0*rcp*fse3t(:,:,1)*(Tocnfrz-sst_m(:,:))/(2.0*dt) 
    361       nfrzmlt(:,:)=rau0*rcp*fse3t_b(:,:,1)*(Tocnfrz-tsb(:,:,1,jp_tem))/(2.0*dt) 
     357! Calculated over NEMO leapfrog timestep (hence 2*dt) 
     358      nfrzmlt(:,:)=rau0*rcp*fse3t_n(:,:,1)*(Tocnfrz-sst_m(:,:))/(2.0*dt) 
    362359 
    363360      ztmp(:,:) = nfrzmlt(:,:) 
     
    499496! Sublimation from the ice is treated in a similar way (included in emp but not emps)   
    500497! 
    501 ! This will need re-thinking in the variable volume case and if ice is 'embedded' in the  
    502 ! ocean rather than floating on top 
    503  
    504       emp(:,:)  = emp(:,:) - tprecip(:,:)*fr_i(:,:) 
     498! This should not be done in the variable volume case 
     499 
     500      IF (.NOT. lk_vvl) THEN 
     501 
     502         emp(:,:)  = emp(:,:) - tprecip(:,:)*fr_i(:,:) 
    505503 
    506504! Take sublimation into account 
    507       IF (nsbc == 5 ) THEN  
    508          emp(:,:) = emp(:,:) + ( emp_ice(:,:) + sprecip(:,:) ) 
    509       ELSE IF (nsbc == 2 ) THEN 
    510          emp(:,:) = emp(:,:) - qla_ice(:,:,1) / Lsub 
     505         IF (nsbc == 5 ) THEN  
     506            emp(:,:) = emp(:,:) + ( emp_ice(:,:) + sprecip(:,:) ) 
     507         ELSE IF (nsbc == 2 ) THEN 
     508            emp(:,:) = emp(:,:) - qla_ice(:,:,1) / Lsub 
     509         ENDIF 
     510 
    511511      ENDIF 
    512512 
Note: See TracChangeset for help on using the changeset viewer.