UMR-CNRM / EPyGrAM

Enhanced Python for Graphics and Analysis of Meteorological fields
Other
14 stars 15 forks source link

epy_what.py ICM.sfx file (ver 1.4.13) #13

Closed draelsaid closed 1 year ago

draelsaid commented 1 year ago

I get this error when I try to epy_what.py a surfex file:

epy_what.py /ec/res4/scratch/nkac/hm_home/BL2_n0_2500m/output/FA_files/ICMSHHARM0320220070806.sfx //* FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ENTETE D'ARTICLE "" INCORRECT, UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE // // FANION - ARTICLE "" TROP COURT SUR L'UNITE //* Traceback (most recent call last): File "/perm/hlam/apps/epygram/1.4.13/epygram/formats/FA.py", line 635, in fieldencoding KPUILA) = wfa.wfanion(self._unit, File "/perm/hlam/apps/epygram/1.4.13/site/arpifs4py/init.py", line 58, in wrapper raise RuntimeError("arpifs4py: Error code " + str(result[0]) + " was raised.") RuntimeError: arpifs4py: Error code -93 was raised.

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/perm/hlam/apps/epygram/1.4.13/apptools/epy_what.py", line 89, in main(six.u(args.filename), File "/perm/hlam/apps/epygram/1.4.13/apptools/epy_what.py", line 55, in main resource.what(out, File "/perm/hlam/apps/epygram/1.4.13/epygram/resources/FileResource.py", line 51, in nowopen return mtd(self, *args, kwargs) File "/perm/hlam/apps/epygram/1.4.13/epygram/formats/FA.py", line 1401, in what firstfield = self.readfield(first_H2DField, getdata=False) File "/perm/hlam/apps/epygram/1.4.13/epygram/resources/FileResource.py", line 51, in nowopen return mtd(self, *args, *kwargs) File "/perm/hlam/apps/epygram/1.4.13/epygram/formats/FA.py", line 688, in readfield encoding = self.fieldencoding(fieldname, update_fieldscompression=True) File "/perm/hlam/apps/epygram/1.4.13/epygram/resources/FileResource.py", line 51, in nowopen return mtd(self, args, kwargs) File "/perm/hlam/apps/epygram/1.4.13/epygram/formats/FA.py", line 642, in fieldencoding raise epygramError(fieldname + ': seems like you try to read a MiscField as a H2DField...') epygram.epygramError: SFX.TBUDC: seems like you try to read a MiscField as a H2DField...

AlexandreMary commented 1 year ago

Surfex FA files contain real 2D fields and "MiscFields" a.k.a. metadata. The type of a field in a file is not trivially known in advance, and depending on the type, a different FA routine has to be used to read it, so we need to register this information for all metadat fields in the sfxflddesc_mod.F90 file extracted from mse/ subproject.

Cf. epygram FAQ to solve this issue: https://umr-cnrm.github.io/EPyGrAM-doc/FAQ.html