Index: /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbc_ice.F90
===================================================================
--- /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbc_ice.F90	(revision 8349)
+++ /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbc_ice.F90	(revision 8350)
@@ -116,4 +116,5 @@
    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::  a_i
    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::  ht_i, ht_s
+   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)   ::  fmdice
 #endif
 
@@ -175,4 +176,5 @@
 #if defined key_cice || defined key_lim2
       IF( ln_cpl )   ALLOCATE( ht_i(jpi,jpj,jpl) , ht_s(jpi,jpj,jpl) , STAT=ierr(5) )
+      IF( ln_cpl )   ALLOCATE( fmdice(jpi,jpj) , STAT=ierr(5) ) 
 #endif
 
Index: /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90
===================================================================
--- /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90	(revision 8349)
+++ /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90	(revision 8350)
@@ -147,5 +147,6 @@
    INTEGER, PARAMETER ::   jps_bio_co2 = 34           ! MEDUSA air-sea CO2 flux in
    INTEGER, PARAMETER ::   jps_bio_dms = 35           ! MEDUSA DMS surface concentration in
-   INTEGER, PARAMETER ::   jpsnd      = 35            ! total number of fields sent
+   INTEGER, PARAMETER ::   jps_fmdice = 36            ! ice form drag
+   INTEGER, PARAMETER ::   jpsnd      = 36            ! total number of fields sent
 
    REAL(wp), PARAMETER :: dms_unit_conv = 1.0e+6      ! Coversion factor to get outgong DMS in standard units for coupling
@@ -161,5 +162,5 @@
    END TYPE FLD_C
    ! Send to the atmosphere                           !
-   TYPE(FLD_C) ::   sn_snd_temp, sn_snd_alb, sn_snd_thick, sn_snd_crt, sn_snd_co2, sn_snd_cond, sn_snd_mpnd, sn_snd_sstfrz, sn_snd_thick1
+   TYPE(FLD_C) ::   sn_snd_temp, sn_snd_alb, sn_snd_thick, sn_snd_crt, sn_snd_co2, sn_snd_cond, sn_snd_mpnd, sn_snd_sstfrz, sn_snd_thick1, sn_snd_fmd
    TYPE(FLD_C) ::   sn_snd_bio_co2, sn_snd_bio_dms                       
 
@@ -236,5 +237,5 @@
       !!
       NAMELIST/namsbc_cpl/  sn_snd_temp, sn_snd_alb   , sn_snd_thick , sn_snd_crt   , sn_snd_co2,     &
-         &                  sn_snd_cond, sn_snd_mpnd  , sn_snd_sstfrz, sn_snd_thick1,                 &
+         &                  sn_snd_cond, sn_snd_mpnd  , sn_snd_sstfrz, sn_snd_thick1, sn_snd_fmd,     &
          &                  sn_rcv_w10m, sn_rcv_taumod, sn_rcv_tau   , sn_rcv_dqnsdt, sn_rcv_qsr,     &
          &                  sn_rcv_qns , sn_rcv_emp   , sn_rcv_rnf   , sn_rcv_cal   , sn_rcv_iceflx,  &
@@ -308,4 +309,5 @@
          WRITE(numout,*)'      meltponds fraction & depth      = ', TRIM(sn_snd_mpnd%cldes  ), ' (', TRIM(sn_snd_mpnd%clcat   ), ')'
          WRITE(numout,*)'      sea surface freezing temp       = ', TRIM(sn_snd_sstfrz%cldes   ), ' (', TRIM(sn_snd_sstfrz%clcat   ), ')'
+         WRITE(numout,*)'      ice formdrag                    = ', TRIM(sn_snd_fmd%cldes   ), ' (', TRIM(sn_snd_fmd%clcat   ), ')'
 
          WRITE(numout,*)'  nn_cplmodel                         = ', nn_cplmodel
@@ -926,5 +928,10 @@
          ENDIF
       ENDIF
-
+      !                                                      ! ------------------------- !
+      !                                                      !    Ice form drag          !
+      !                                                      ! ------------------------- !
+      ssnd(jps_fmdice )%clname = 'OIceFmd'
+      ssnd(jps_fmdice)%laction = .FALSE.
+      IF( TRIM( sn_snd_fmd%cldes ) == 'coupled' ) ssnd(jps_fmdice)%laction = .TRUE.      
       !
       ! ================================ !
@@ -2529,4 +2536,12 @@
       IF( ssnd(jps_sstfrz)%laction )  CALL cpl_snd( jps_sstfrz, isec, RESHAPE ( ztmp1, (/jpi,jpj,1/) ), info )
 #endif
+      !                                                      !------------------------!
+      !                                                      ! Sea ice form drag      !
+      !                                                      !------------------------!
+      SELECT CASE( sn_snd_fmd%cldes)
+         CASE( 'coupled' )   
+             ztmp1(:,:) = fmdice(:,:)
+      END SELECT
+      IF( ssnd(jps_fmdice)%laction )   CALL cpl_prism_snd( jps_fmdice, isec, RESHAPE ( ztmp1, (/jpi,jpj,1/) ), info ) 
       !
       CALL wrk_dealloc( jpi,jpj, zfr_l, ztmp1, ztmp2, zotx1, zoty1, zotz1, zitx1, zity1, zitz1 )
Index: /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90
===================================================================
--- /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90	(revision 8349)
+++ /branches/UKMO/dev_r5518_GO6_package_r7750_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90	(revision 8350)
@@ -68,5 +68,5 @@
 #endif
    USE ice_forcing, only: frcvdr,frcvdf,frcidr,frcidf
-   USE ice_atmo, only: calc_strair
+   USE ice_atmo, only: calc_strair, z0atm
 
    USE CICE_InitMod
@@ -786,4 +786,7 @@
       ENDIF       
 
+! Surface roughness length for form drag
+      CALL cice2nemo(z0atm,fmdice,'T', 1. )
+
       !
       IF( nn_timing == 1 )  CALL timing_stop('cice_sbc_hadgam')
