Index: LMDZ.3.3/trunk/libf/dyn3d/create_limit.F
===================================================================
--- LMDZ.3.3/trunk/libf/dyn3d/create_limit.F	(revision 70)
+++ LMDZ.3.3/trunk/libf/dyn3d/create_limit.F	(revision 71)
@@ -137,5 +137,10 @@
         STOP
       ENDIF
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlon_msk)
+c     ierr = NF_GET_VAR_REAL(ncid,dimid,dlon_msk)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlon_msk)
+c$$$      zbidon=0.0
+c$$$      ierr = NF_GET_VAR_REAL(ncid,dimid,zbidon(1:imdep))
+c$$$      dlon_msk(1 : imdep) = dble(zbidon(1:imdep))
+c
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -153,10 +158,20 @@
         STOP
       ENDIF
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlat_msk)
-      if (ierr.ne.0) then
-        print *, NF_STRERROR(ierr)
-        STOP
-      ENDIF
-      ierr = NF_GET_VAR_REAL(ncid,varid,champ_msk)
+c      ierr = NF_GET_VAR_REAL(ncid,dimid,dlat_msk)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlat_msk)
+c$$$      zbidon=0.
+c$$$      ierr = NF_GET_VAR_REAL(ncid,dimid,zbidon(1:jmdep))
+c$$$      dlat_msk=dble(zbidon(1:jmdep))
+c
+      if (ierr.ne.0) then
+        print *, NF_STRERROR(ierr)
+        STOP
+      ENDIF
+c      ierr = NF_GET_VAR_REAL(ncid,varid,champ_msk)
+      ierr = NF_GET_VAR_DOUBLE(ncid,varid,champ_msk)
+c$$$      zbidon=0.
+c$$$      ierr = NF_GET_VAR_REAL(ncid,varid,zbidon(1:imdep*jmdep))
+c$$$      champ_msk(1: imdep*jmdep) = zbidon(1:imdep*jmdep)
+c
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -211,5 +226,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlon)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlon)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -227,5 +242,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlat)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlat)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -243,5 +258,5 @@
         STOP
       ENDIF
-      ierr = NF_GET_VAR_REAL(ncid,dimid,timecoord)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,timecoord)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -260,5 +275,5 @@
          PRINT*,'Lecture temporelle et int. horizontale ',l,timecoord(l)
          print*,dimfirst,dimlast
-         ierr = NF_GET_VARA_REAL(ncid,varid,dimfirst,dimlast,champ)
+         ierr = NF_GET_VARA_DOUBLE(ncid,varid,dimfirst,dimlast,champ)
          if (ierr.ne.0) then
            print *, NF_STRERROR(ierr)
@@ -343,5 +358,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlon)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlon)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -359,5 +374,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlat)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlat)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -375,5 +390,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,timecoord)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,timecoord)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -391,5 +406,5 @@
 c
          PRINT*,'Lecture temporelle et int. horizontale ',l,timecoord(l)
-         ierr = NF_GET_VARA_REAL(ncid,varid,dimfirst,dimlast,champ)
+         ierr = NF_GET_VARA_DOUBLE(ncid,varid,dimfirst,dimlast,champ)
          if (ierr.ne.0) then
            print *, NF_STRERROR(ierr)
@@ -480,5 +495,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlon)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlon)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -496,5 +511,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlat)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlat)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -512,5 +527,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,timecoord)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,timecoord)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -528,5 +543,5 @@
 c
          PRINT*,'Lecture temporelle et int. horizontale ',l,timecoord(l)
-         ierr = NF_GET_VARA_REAL(ncid,varid,dimfirst,dimlast,champ)
+         ierr = NF_GET_VARA_DOUBLE(ncid,varid,dimfirst,dimlast,champ)
          if (ierr.ne.0) then
            print *, NF_STRERROR(ierr)
@@ -606,5 +621,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlon)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlon)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -622,5 +637,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,dlat)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,dlat)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -638,5 +653,5 @@
         STOP
       ENDIF 
-      ierr = NF_GET_VAR_REAL(ncid,dimid,timecoord)
+      ierr = NF_GET_VAR_DOUBLE(ncid,dimid,timecoord)
       if (ierr.ne.0) then
         print *, NF_STRERROR(ierr)
@@ -654,5 +669,5 @@
 c
          PRINT*,'Lecture temporelle et int. horizontale ',l,timecoord(l)
-         ierr = NF_GET_VARA_REAL(ncid,varid,dimfirst,dimlast,champ)
+         ierr = NF_GET_VARA_DOUBLE(ncid,varid,dimfirst,dimlast,champ)
          if (ierr.ne.0) then
            print *, NF_STRERROR(ierr)
