Opened 2 years ago

Last modified 2 years ago

#162 new Enhancement

Add version information to preprocessing files in FPV9.3.1

Reported by: donaldjmorton Owned by:
Priority: major Milestone:
Component: FP other Version: FLEXPART 9.3
Keywords: Cc:

Description

One user has suggested that, given the ongoing changes in the preprocessed met file format, it would be useful to have a version string in each preprocessed file so that we can easily identify the version, and hence the format, of preprocessed files.

Change History (3)

comment:1 Changed 2 years ago by donaldjmorton

Strategy -

  • Make this specific to dealing with preprocessed files.
  • Isolate it to the fpmetbinary_mod.F90 source.
  • Create constant-size string (16 characters is more than enough) PREPROC_FORMAT_VERSION parameter, and have this be the first thing written to a preproc file
  • When reading a preproc file, read the first 16 characters into temporary variable, and insure that that the string is the same as PREPROC_FORMAT_VERSION

Do the development in new, temporary branch fp9.3.1-preproc-ver, test as follows

  • Normal operation (generate preproc files with grib2flexpart, read them into flexpart)
  • Do case where I generate preproc files, then change the version string, recompile, and confirm that flexpart bombs when it tries to read the different string

Then, merge back into mother branch (FPv9.3.1) and tag FPv9.3.1e

comment:2 Changed 2 years ago by donaldjmorton

All of the above has been completed. The PREPROC_FORMAT_VERSION_STR was set to 8 characters.

Tested as described above, as well as comparing results of GRIB-driven Flexpart with preproc-driven FLEXPART. Also, general testing with testing environment was successful (after setting compiler option to -mcmodel=large for gfortran)

I have no authority to close this ticket. Anybody with such authority should feel free to close this ticket.

comment:3 Changed 2 years ago by donaldjmorton

Note that the fp tests in flexpart-testing/check/general_cases/gfortran will no longer pass, since they are using an older preproc format.

Note: See TracTickets for help on using tickets.
hosted by ZAMG