Index: LMDZ5/trunk/libf/dyn3d/conf_gcm.F
===================================================================
--- LMDZ5/trunk/libf/dyn3d/conf_gcm.F	(revision 2039)
+++ LMDZ5/trunk/libf/dyn3d/conf_gcm.F	(revision 2083)
@@ -150,4 +150,11 @@
       raz_date = 0
       CALL getin('raz_date', raz_date)
+
+!Config  Key  = resetvarc
+!Config  Desc = Reinit des variables de controle
+!Config  Def  = n
+!Config  Help = Reinit des variables de controle
+      resetvarc = .false.
+      CALL getin('resetvarc',resetvarc)
 
 !Config  Key  = nday
Index: LMDZ5/trunk/libf/dyn3d/iniacademic.F90
===================================================================
--- LMDZ5/trunk/libf/dyn3d/iniacademic.F90	(revision 2039)
+++ LMDZ5/trunk/libf/dyn3d/iniacademic.F90	(revision 2083)
@@ -4,12 +4,12 @@
 SUBROUTINE iniacademic(vcov,ucov,teta,q,masse,ps,phis,time_0)
 
-  USE filtreg_mod
+  USE filtreg_mod, ONLY: inifilr
   USE infotrac, ONLY : nqtot
   USE control_mod, ONLY: day_step,planet_type
 #ifdef CPP_IOIPSL
-  USE IOIPSL
+  USE IOIPSL, ONLY: getin
 #else
   ! if not using IOIPSL, we still need to use (a local version of) getin
-  USE ioipsl_getincom
+  USE ioipsl_getincom, ONLY: getin
 #endif
   USE Write_Field
@@ -40,13 +40,14 @@
   !   ----------
 
-  real time_0
-
-  !   variables dynamiques
-  REAL vcov(ip1jm,llm),ucov(ip1jmp1,llm) ! vents covariants
-  REAL teta(ip1jmp1,llm)                 ! temperature potentielle
-  REAL q(ip1jmp1,llm,nqtot)               ! champs advectes
-  REAL ps(ip1jmp1)                       ! pression  au sol
-  REAL masse(ip1jmp1,llm)                ! masse d'air
-  REAL phis(ip1jmp1)                     ! geopotentiel au sol
+  REAL,INTENT(OUT) :: time_0
+
+  !   fields
+  REAL,INTENT(OUT) :: vcov(ip1jm,llm) ! meridional covariant wind
+  REAL,INTENT(OUT) :: ucov(ip1jmp1,llm) ! zonal covariant wind
+  REAL,INTENT(OUT) :: teta(ip1jmp1,llm) ! potential temperature (K)
+  REAL,INTENT(OUT) :: q(ip1jmp1,llm,nqtot) ! advected tracers (.../kg_of_air)
+  REAL,INTENT(OUT) :: ps(ip1jmp1) ! surface pressure (Pa)
+  REAL,INTENT(OUT) :: masse(ip1jmp1,llm) ! air mass in grid cell (kg)
+  REAL,INTENT(OUT) :: phis(ip1jmp1) ! surface geopotential
 
   !   Local:
@@ -76,4 +77,14 @@
   character(len=80) :: abort_message
 
+
+  ! Sanity check: verify that options selected by user are not incompatible
+  if ((iflag_phys==1).and.(read_start==.false.)) then
+    write(lunout,*) trim(modname)," error: if read_start is set to ", &
+    " false then iflag_phys should not be 1"
+    write(lunout,*) "You most likely want an aquaplanet initialisation", &
+    " (iflag_phys >= 100)"
+    call abort_gcm(modname,"incompatible iflag_phys==1 and read_start==.false.",1)
+  endif
+  
   !-----------------------------------------------------------------------
   ! 1. Initializations for Earth-like case
