id summary reporter owner description type status priority milestone component version resolution keywords cc 786 Compatibility problems between new driver and certain forcing files aducharne aducharne "This problem was found by Agnès and Xiaoni with r7263 of branch 2.2, but it is also very likely present in the trunk and branch 3.0. In branch 2.2, the new driver was found to work fine with the following forcing datasets including the correct attributes (cell_methods = ""time:..."") : - uncompressed 2D : CRUJRA/v2.1/twodeg; CRU-NCEP/v7.2/twodeg; CRU-NCEP/v7.2/onedeg - compressed in land points without contfrac variable: WFDEI_GPCC/v2/leap; CRU-NCEP/v7.2/halfdeg BUT the simulation fails with the following files, which include correct attributes (cell_methods = ""time:..."") : - compressed in land points WITH contfrac(y,x) variable : CRUJRA/v2.1/halfdeg; CRUJRA/v2.2/halfdeg has the same structure and should also crash, but it was not tested. The old driver driver works fine with these files. The problem occurs in src_driver_forcing_tools.f90, as shown by Debug/JobName_out_execution_error: {{{ Forcing file with dimensions : 720 360 67420 Zoom forcing : lon = -180.000000000000 180.000000000000 Zoom forcing : lat = -90.0000000000000 90.0000000000000 nbindex_g after calling globgrd_getdomsz in orchideedriver 0 forcing_givegrid:: nbpoint_loc= 67420 forcing_givegrid:: nbland_loc= 0 FATAL ERROR FROM ROUTINE forcing_givegrid --> nbpoint_loc and nbland_loc do match --> The calculation of land points is not correct --> Fatal error from IOIPSL. STOP in ipslerr with code 1 srun: error: r1i1n11: task 0: Exited with exit code 1 srun: Terminating job step 609241.0 slurmstepd: error: *** STEP 609241.0 ON r1i1n11 CANCELLED AT 2021-07-29T18:51:00 *** forrtl: error (78): process killed (SIGTERM) }}} == Analysis by Xiaoni == When I looked at the results of CRU JRA 2deg, the variable 'compressed' in subroutine forcing_getglogrid is False. But it is True with CRU JRA 0.5 deg. This is due to different values of 'landvar_id'. In fact the 0.5deg file has a variable 'land', while 2deg has no such variable. This is why we got different values of 'landvar_id' and 'compressed', and why we call different functions. The 'land' variable is 1D array, with a length of land points, given by input data. The variable 'Qair' has the dimension of time x length(land) in the 0.5 deg file, but Qair has time x lat x lon in 2deg file. This is why we have to call different functions when dealing with 0.5 deg.... The calling of forcing_buildindex and forcing_reindex should be necessary in this case, which was not included in the original driver code. I am not sure yet if some extra adaptation is necessary when using these two subroutines in the case. == Conclusion == Two options seem possible: either to change the forcing files, or to change the code of forcing_tools.f90. Since the old driver manages to use compressed files with an uncompressed contfrac (which can be useful for uncompressing), it is probably better to update the code. " defect closed major ORCHIDEE_2_2 Driver files trunc fixed