Opened 6 months ago

Closed 3 months ago

Last modified 3 months ago

#806 closed enhancement (fixed)

Add test if missmatch for land/sea mask in model and restart files

Reported by: jgipsl Owned by: somebody
Priority: major Milestone:
Component: Physical processes Version: trunc
Keywords: Cc:


If changing the land/sea mask during a run, keeping the same restart files will make ORCHIDEE crash with unclear error messages, memory fault for example. This is the case for example when running LMDZ-ORCHIDEE and changing files during the run. If the new file is not having the same mask, this problem is seen.

One test for this can be done on the variable njsc in slowproc after reading from restart file. For example, add section ELSIF as here below (this has not been tested):

    CALL restget_p (rest_id, var_name, nbp_glo, 1, 1, kjit, .TRUE., tmp_real, "gather", nbp_glo, index_g)

    IF ( ALL( tmp_real(:) .EQ. val_exp) ) THEN
       ! The variable is not in the restart file. This case is treated further below.
       njsc (:) = undef_int
    ELSEIF ( ANY( tmp_real(:) .EQ. val_exp) ) THEN
       ! Here we have a mix of val_exp and correct values. This is not good. 
       ! Stop the model with clear error message.
       CALL ipslerr_p(3, 'slowproc_init', 'There is a missmatch in the land/sea mask in the model and in the restart file.','Start the model again without any restart file for ORCHIDEE','')
       ! Keep values read from restart file
       njsc = NINT(tmp_real)

But maybe it would be nicer testing on the variable veget which is read earlier in slowproc, using the same princip should work.

Change History (2)

comment:1 Changed 3 months ago by jgipsl

  • Resolution set to fixed
  • Status changed from new to closed

Done in the trunk: [7487]
The test commited was done on the variable coszang_noon instead of njsc. coszang_noon is the first variable read from restart file in orchidee.

comment:2 Changed 3 months ago by jgipsl

Also done in ORCHIDEE_2_2 but on variable njsc as in this version njsc is the first variable read from restart file: [7502]

Note: See TracTickets for help on using tickets.