Index: LMDZ5/trunk/libf/phylmd/readaerosol.F90
===================================================================
--- LMDZ5/trunk/libf/phylmd/readaerosol.F90	(revision 2840)
+++ LMDZ5/trunk/libf/phylmd/readaerosol.F90	(revision 2841)
@@ -42,5 +42,4 @@
   REAL, POINTER, DIMENSION(:,:,:) :: pt_2
   REAL, DIMENSION(klon,12)        :: psurf2, load2
-  REAL                            :: p0           ! Reference pressure
   INTEGER                         :: iyr1, iyr2, klev_src2
   INTEGER                         :: it, k, i
@@ -58,5 +57,5 @@
      ! get_aero_fromfile returns pt_out allocated and initialized with data for 12 month 
      ! pt_out has dimensions (klon, klev_src, 12)
-     CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, p0, pt_out, psurf, load)
+     CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, pt_out, psurf, load)
      
 
@@ -67,5 +66,5 @@
      ! get_aero_fromfile returns pt_out allocated and initialized with data for 12 month 
      ! pt_out has dimensions (klon, klev_src, 12)
-     CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, p0, pt_out, psurf, load)
+     CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, pt_out, psurf, load)
      
   ELSE IF (type == 'annuel') THEN
@@ -76,5 +75,5 @@
      ! get_aero_fromfile returns pt_out allocated and initialized with data for nbr_tsteps month 
      ! pt_out has dimensions (klon, klev_src, 12)
-     CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, p0, pt_out, psurf, load)
+     CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, pt_out, psurf, load)
      
   ELSE IF (type == 'scenario') THEN
@@ -86,5 +85,5 @@
         ! get_aero_fromfile returns pt_out allocated and initialized with data for 12 month 
         ! pt_out has dimensions (klon, klev_src, 12)
-        CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, p0, pt_out, psurf, load)
+        CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, pt_out, psurf, load)
         
      ELSE IF (iyr_in .GE. 2100) THEN
@@ -93,5 +92,5 @@
         ! get_aero_fromfile returns pt_out allocated and initialized with data for 12 month 
         ! pt_out has dimensions (klon, klev_src, 12)
-        CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, p0, pt_out, psurf, load)
+        CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, pt_out, psurf, load)
         
      ELSE
@@ -113,5 +112,5 @@
         ! get_aero_fromfile returns pt_out allocated and initialized with data for 12 month 
         ! pt_out has dimensions (klon, klev_src, 12)
-        CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, p0, pt_out, psurf, load)
+        CALL get_aero_fromfile(name_aero, cyear, filename, klev_src, pt_ap, pt_b, pt_out, psurf, load)
         
         ! If to read two decades:
@@ -125,5 +124,5 @@
            ! get_aero_fromfile returns pt_2 allocated and initialized with data for 12 month 
            ! pt_2 has dimensions (klon, klev_src, 12)
-           CALL get_aero_fromfile(name_aero, cyear, filename, klev_src2, pt_ap, pt_b, p0, pt_2, psurf2, load2)
+           CALL get_aero_fromfile(name_aero, cyear, filename, klev_src2, pt_ap, pt_b, pt_2, psurf2, load2)
            ! Test for same number of vertical levels
            IF (klev_src /= klev_src2) THEN
@@ -168,5 +167,5 @@
 
 
-  SUBROUTINE get_aero_fromfile(varname, cyr, filename, klev_src, pt_ap, pt_b, p0, pt_year, psurf_out, load_out)
+  SUBROUTINE get_aero_fromfile(varname, cyr, filename, klev_src, pt_ap, pt_b, pt_year, psurf_out, load_out)
 !****************************************************************************************
 ! Read 12 month aerosol from file and distribute to local process on physical grid. 
@@ -205,5 +204,4 @@
     REAL, POINTER, DIMENSION(:)           :: pt_ap        ! Pointer for describing the vertical levels      
     REAL, POINTER, DIMENSION(:)           :: pt_b         ! Pointer for describing the vertical levels      
-    REAL                                  :: p0           ! Reference pressure value
     REAL, POINTER, DIMENSION(:,:,:)       :: pt_year      ! Pointer-variabale from file, 12 month, grid : klon,klev_src
     REAL, DIMENSION(klon,12), INTENT(OUT) :: psurf_out    ! Surface pression for 12 months
@@ -292,13 +290,20 @@
        IF (ierr /= NF90_NOERR) THEN
           ! Coordinate axe lev not found. Check for presnivs.
-          ierr = nf90_inq_dimid(ncid, 'PRESNIVS', dimid)
+          ierr = nf90_inq_dimid(ncid, 'presnivs', dimid) 
           IF (ierr /= NF90_NOERR) THEN
-             ! Dimension PRESNIVS not found either
-             CALL abort_physic('get_aero_fromfile', 'dimension lev or presnivs not in file',1)
-          ELSE 
-             ! Old file found
-             new_file=.FALSE.
-             WRITE(lunout,*) 'Vertical interpolation for ',TRIM(varname),' will not be done'
-          END IF
+             ierr = nf90_inq_dimid(ncid, 'PRESNIVS', dimid)
+             IF (ierr /= NF90_NOERR) THEN
+                ! Dimension PRESNIVS not found either
+                CALL abort_physic('get_aero_fromfile', 'dimension lev,PRESNIVS or presnivs not in file',1)
+             ELSE 
+                ! Old file found
+                new_file=.FALSE.
+                WRITE(lunout,*) 'Vertical interpolation for ',TRIM(varname),' will not be done'
+             END IF
+          ELSE
+             ! New file found
+             new_file=.TRUE.
+             WRITE(lunout,*) 'Vertical interpolation for ',TRIM(varname),' will be done'
+          ENDIF
        ELSE
           ! New file found
@@ -328,5 +333,8 @@
 !**************************************************************************************************
        ierr = nf90_inq_dimid(ncid, 'TIME',dimid)
-       CALL check_err( nf90_inquire_dimension(ncid, dimid, len = nbr_tsteps),"pb inq dim TIME" )
+       if (ierr /= NF90_NOERR) THEN
+          ierr = nf90_inq_dimid(ncid, 'time_counter', dimid)
+       ENDIF
+       CALL check_err( nf90_inquire_dimension(ncid, dimid, len = nbr_tsteps),"pb inq dim TIME or time_counter" )
 !       IF (nbr_tsteps /= 12 .AND. nbr_tsteps /= 14) THEN
        IF (nbr_tsteps /= 12 ) THEN
@@ -382,10 +390,4 @@
           CALL check_err( nf90_get_var(ncid, varid, pt_b),"pb get var b" )
 
-! ++) Read p0 : reference pressure
-!****************************************************************************************
-          ! Get variable id
-          CALL check_err( nf90_inq_varid(ncid, "p0", varid),"pb inq var p0" )
-          ! Get the variable
-          CALL check_err( nf90_get_var(ncid, varid, p0),"pb get var p0" )
           
 
