From 637b22b04dbe20667e16b09771c117729c6faf4c Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Mon, 8 Jul 2024 16:42:39 +0200 Subject: [PATCH] Philippe 08/07/2024: bugfix: CCPLFILE/TCPLFILE: initialize and allocate at the right places --- src/MNH/default_desfmn.f90 | 1 - src/MNH/ini_cpl.f90 | 2 ++ src/MNH/ini_segn.f90 | 1 - src/MNH/modd_lunitn.f90 | 6 +++++- src/MNH/read_exsegn.f90 | 1 - src/MNH/spawn_model2.f90 | 1 - 6 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/MNH/default_desfmn.f90 b/src/MNH/default_desfmn.f90 index d7248e18c..31b7b67ad 100644 --- a/src/MNH/default_desfmn.f90 +++ b/src/MNH/default_desfmn.f90 @@ -313,7 +313,6 @@ TYPE(TFILEDATA) TFILENAM ! Empty file to satisfy interface of PHYEX_init r ! ! CINIFILE='INIFILE' CINIFILEPGD='' !Necessary to keep this line to prevent problems with spawning -CCPLFILE(:)='' ! !------------------------------------------------------------------------------- ! diff --git a/src/MNH/ini_cpl.f90 b/src/MNH/ini_cpl.f90 index 4a294b736..2b9948e5c 100644 --- a/src/MNH/ini_cpl.f90 +++ b/src/MNH/ini_cpl.f90 @@ -343,6 +343,8 @@ ILUOUT = TLUOUT%NLU !* 2. CHECK COUPLING FILES DATES ! -------------------------- ! +IF ( .NOT.ASSOCIATED( TCPLFILE ) ) ALLOCATE( TCPLFILE(NCPL_NBR) ) + DO JCI=1,NCPL_NBR WRITE(YCI,'(I0)') JCI CALL IO_File_add2list(TCPLFILE(JCI)%TZFILE,CCPLFILE(JCI),'MNH','READ',KLFITYPE=2,KLFIVERB=NVERB) diff --git a/src/MNH/ini_segn.f90 b/src/MNH/ini_segn.f90 index ab8d86ea0..1be7ab863 100644 --- a/src/MNH/ini_segn.f90 +++ b/src/MNH/ini_segn.f90 @@ -462,7 +462,6 @@ CALL READ_EXSEG_n(KMI,TZFILE_DES,YCONF,GFLAT,GUSERV,GUSERC, & IF (CPROGRAM=='SPAWN ' .OR. CPROGRAM=='DIAG ' .OR. CPROGRAM=='SPEC ' & .OR. CPROGRAM=='REAL ') THEN CINIFILE_n = YINIFILE - CCPLFILE(:) = '' NMODEL=1 LSTEADYLS=.TRUE. END IF diff --git a/src/MNH/modd_lunitn.f90 b/src/MNH/modd_lunitn.f90 index 0b4fafb18..f10bfbf10 100644 --- a/src/MNH/modd_lunitn.f90 +++ b/src/MNH/modd_lunitn.f90 @@ -86,7 +86,9 @@ INTEGER, INTENT(IN) :: KFROM, KTO !JUAN IF (LUNIT_FIRST_CALL(KTO)) THEN ALLOCATE (LUNIT_MODEL(KTO)%CCPLFILE(NPCPLFILEMAX)) -ALLOCATE (LUNIT_MODEL(KTO)%TCPLFILE(NPCPLFILEMAX)) +LUNIT_MODEL(KTO)%CCPLFILE(:) = '' +! TCPLFILE allocation is done in ini_cpl directly at the right size => commented here +! ALLOCATE (LUNIT_MODEL(KTO)%TCPLFILE(NPCPLFILEMAX)) LUNIT_FIRST_CALL(KTO) = .FALSE. ENDIF !JUAN @@ -94,6 +96,8 @@ ENDIF TFILE_OUTPUTLISTING => LUNIT_MODEL(KTO)%TLUOUT ! ! Save current state for allocated arrays +LUNIT_MODEL(KFROM)%CCPLFILE => CCPLFILE +LUNIT_MODEL(KFROM)%TCPLFILE => TCPLFILE ! ! Current model is set to model KTO CINIFILE=>LUNIT_MODEL(KTO)%CINIFILE diff --git a/src/MNH/read_exsegn.f90 b/src/MNH/read_exsegn.f90 index 6e6c12581..d1b6a37b8 100644 --- a/src/MNH/read_exsegn.f90 +++ b/src/MNH/read_exsegn.f90 @@ -495,7 +495,6 @@ ILUSEG = TPEXSEGFILE%NLU ILUOUT = TLUOUT%NLU ! CALL INIT_NAM_LUNITN -CCPLFILE(:)='' CALL INIT_NAM_CONFN CALL INIT_NAM_DYNN CALL INIT_NAM_ADVN diff --git a/src/MNH/spawn_model2.f90 b/src/MNH/spawn_model2.f90 index 39c8b4b70..ceddaa533 100644 --- a/src/MNH/spawn_model2.f90 +++ b/src/MNH/spawn_model2.f90 @@ -642,7 +642,6 @@ END IF !* 3.5 model 2 configuration in MODD_NESTING to be written !* on the FM-file to allow nesting or coupling ! -CCPLFILE(:) = '' LSTEADYLS=.TRUE. ! NDXRATIO_ALL(:) = 0 -- GitLab