Christophe: Try something like this: 1. Get init_mod.F into your modsrc directory (use "cpsrc init_mod.F") 2. In subroutine init (in init_mod.F), add a call to a new subroutine (named something like init_peymirat), say after "call init_amie". 3. Add the new subroutine at end of init_mod.F (after "end subroutine init_buff" and before "end module init_module"). The new subroutine might look something like this: subroutine init_peymirat ! ! Read initial data for peymirat model: ! ! Declare locals and commons. ! ! Local: character(len=80) :: file1,file2 integer :: lu integer,external :: nextlu ! ! Open and read from file1: ! (imaxm and jmaxmh are in params.h, which is included in init module) file1 = 'pey9770.2kev' lu = nextlu() ! get logical unit number open(unit=lu,file=file1,form='FORMATTED',status='OLD', | err=1000) read (lu,*) ((epot0(i,j),i=1,imaxm),j=1,jmaxmh) close(lu) ! ! Open and read from file2: file2 = 'pey9770.2kev' lu = nextlu() ! get logical unit number open(unit=lu,file=file2,form='FORMATTED',status='OLD', | err=2000) read (lu,*) ((epot0(i,j),i=1,imaxm),j=1,jmaxmh) close(lu) ! ! Do whatever else needs to be done here...(transfer from local ! to common, print to stdout, etc) ! return 1000 continue write(6,"('>>> init_peymirat: Error opening file ',a)") | trim(file1) stop 'file1' 2000 continue write(6,"('>>> init_peymirat: Error opening file ',a)") | trim(file2) stop 'file2' end subroutine init_peymirat 4. Put INCLUDE statements for the 2 files in your job script, say after the INCLUDE of the namelist input file, and before the INCLUDE of tgcm.exec. Be sure to use -h option to INCLUDE, e.g.: INCLUDE -h pey9770.2kev INCLUDE -h istati9770.0010