>grib_set -s shortName=2d regular_latlon_surface.grib1 2d.grib1
>grib_compare regular_latlon_surface.grib1 2d.grib1 -- GRIB #1 -- shortName=2t paramId=167 stepRange=0 levelType=sfc level=0 packingType=grid_simple gridType=regular_ll -- long [indicatorOfParameter]: [167] != [168]
>grib_compare -b indicatorOfParameter regular_latlon_surface.grib1 2d.grib1
>grib_set edition=2 reduced_gaussian_model_level.grib1 reduced_gaussian_model_level.grib2
>grib_compare reduced_gaussian_model_level.grib1 reduced_gaussian_model_level.grib2 -- GRIB #1 -- shortName=t paramId=130 stepRange=0 levelType=ml level=1 packingType=grid_simple gridType=reduced_gg -- long [totalLength]: [10908] != [10996] long [editionNumber]: [1] != [2] long [section1Length]: [52] != [21] [table2Version] not found in 2nd field [gridDefinition] not found in 2nd field [indicatorOfParameter] not found in 2nd field [indicatorOfTypeOfLevel] not found in 2nd field [yearOfCentury] not found in 2nd field [unitOfTimeRange] not found in 2nd field [P1] not found in 2nd field [P2] not found in 2nd field [numberIncludedInAverage] not found in 2nd field [numberMissingFromAveragesOrAccumulations] not found in 2nd field [centuryOfReferenceTimeOfData] not found in 2nd field [reservedNeedNotBePresent] not found in 2nd field [localDefinitionNumber] not found in 2nd field [perturbationNumber] not found in 2nd field [numberOfForecastsInEnsemble] not found in 2nd field [padding_local1_1] not found in 2nd field long [section2Length]: [896] != [17] [pvlLocation] not found in 2nd field [dataRepresentationType] not found in 2nd field long [latitudeOfFirstGridPoint]: [87864] != [87864000] long [latitudeOfLastGridPoint]: [-87864] != [-87864000] long [longitudeOfLastGridPoint]: [357188] != [357188000] [padding_grid4_1] not found in 2nd field long [section4Length]: [9948] != [770] [dataFlag] not found in 2nd field
>grib_compare -e reduced_gaussian_model_level.grib1 reduced_gaussian_model_level.grib2
>grib_compare -ve reduced_gaussian_model_level.grib1 reduced_gaussian_model_level.grib2 reduced_gaussian_model_level.grib2 comparing centre as string comparing paramId as string comparing shortName as string comparing typeOfLevel as string comparing level as long comparing pv as double (184 values) tolerance=0 comparing latitudeOfFirstGridPointInDegrees as double (1 values) tolerance=0.0005 comparing longitudeOfFirstGridPointInDegrees as double (1 values) tolerance=0.0005 comparing latitudeOfLastGridPointInDegrees as double (1 values) tolerance=0.0005 comparing longitudeOfLastGridPointInDegrees as double (1 values) tolerance=0.0005 comparing iDirectionIncrementInDegrees is set to missing in both fields comparing N as long comparing iScansNegatively as long comparing jScansPositively as long comparing jPointsAreConsecutive as long comparing pl as long comparing gridType as string comparing packedValues as double (6114 values) tolerance=0 comparing param as string comparing levtype as string comparing levelist as long comparing date as long comparing time as long comparing step as long comparing class as long comparing type as long comparing stream as long comparing expver as string comparing domain as string 1 of 1 grib messages in reduced_gaussian_model_level.grib2 1 of 1 total grib messages in 1 files
set bitsPerValue=10; set values={1,2.5,3,4,5,6,70}; write "first.grib1"; set values={1,2.5,5,4,5,6,70}; write "second.grib1";
>grib_compare -H first.grib1 second.grib1
>grib_compare -c data:n first.grib1 second.grib1 -- GRIB #1 -- shortName=t paramId=130 stepRange=0 levelType=ml level=1 packingType=grid_simple gridType=reduced_gg -- double [packedValues]: 1 out of 7 different, max absolute diff. = 2, relative diff. = 0.4 max diff. element 2: 3.00000000000000000000e+00 5.00000000000000000000e+00 tolerance=0 packingError: [0.04] [0.04] values max= [70.04] [70.04] min= [1] [1]
>grib_compare -A 2 -c data:n first.grib1 second.grib1
>grib_compare -R packedValues=0.4 -c data:n first.grib1 second.grib1
>grib_set -s changeDecimalPrecision=0 first.grib1 third.grib1
>grib_compare -P -c data:n first.grib1 third.grib1
>grib_compare -c data:n first.grib1 third.grib1 -- GRIB #1 -- shortName=t paramId=130 stepRange=0 levelType=ml level=1 packingType=grid_simple gridType=reduced_gg -- double [packedValues]: 4 out of 7 different, max absolute diff. = 0.48, relative diff. = 0.16 max diff. element 1: 2.52000000000000001776e+00 3.00000000000000000000e+00 tolerance=0 packingError: [0.04] [0.5] values max= [70.04] [70] min= [1] [1]
>grib_compare -c statistics:n first.grib1 third.grib1 -- GRIB #1 -- shortName=t paramId=130 stepRange=0 levelType=ml level=1 packingType=grid_simple gridType=reduced_gg -- double [max]: [7.00400000000000062528e+01] != [7.00000000000000000000e+01] absolute diff. = 0.04, relative diff. = 0.000571102 tolerance=0 double [avg]: [1.30914285714285707485e+01] != [1.31428571428571423496e+01] absolute diff. = 0.0514286, relative diff. = 0.00391304 tolerance=0 double [sd]: [2.32994686809877009637e+01] != [2.32589679873534969090e+01] absolute diff. = 0.0405007, relative diff. = 0.00173827 tolerance=0 double [skew]: [-1.41592875700515623549e+01] != [-1.41669971380493855406e+01] absolute diff. = 0.00770957, relative diff. = 0.000544192 tolerance=0 double [kurt]: [7.32364710785659567271e-01] != [7.32723797489455375143e-01] absolute diff. = 0.000359087, relative diff. = 0.000490071 tolerance=0
>grib_compare -A 0.052 -c statistics:n first.grib1 third.grib1
>grib_set -w typeOfLevel=surface -s step=48 tigge_pf_ecmwf.grib2 out.grib2
>grib_compare -f tigge_pf_ecmwf.grib2 out.grib2 -- GRIB #9 -- shortName=skt paramId=235 stepRange=96 levelType=sfc level=0 packingType=grid_simple gridType=regular_ll -- long [forecastTime]: [96] != [48] -- GRIB #10 -- shortName=sd paramId=228141 stepRange=96 levelType=sfc level=0 packingType=grid_simple gridType=regular_ll -- long [forecastTime]: [96] != [48] -- GRIB #11 -- shortName=sf paramId=228144 stepRange=0-96 levelType=sfc level=0 packingType=grid_simple gridType=regular_ll -- long [dayOfEndOfOverallTimeInterval]: [26] != [24] long [lengthOfTimeRange]: [96] != [48] ... output deleted ## ERRORS SUMMARY ####### ## ## Summary of different key values ## forecastTime ( 3 different ) ## dayOfEndOfOverallTimeInterval ( 11 different ) ## lengthOfTimeRange ( 11 different ) ## ## 14 different messages out of 38
>grib_copy -B typeOfLevel tigge_pf_ecmwf.grib2 out.grib2
>grib_compare -f tigge_pf_ecmwf.grib2 out.grib2 -- GRIB #1 -- shortName=10u paramId=165 stepRange=96 levelType=sfc level=10 packingType=grid_simple gridType=regular_ll -- long [discipline]: [0] != [2] long [totalLength]: [1555] != [990] long [parameterCategory]: [2] != [0] long [parameterNumber]: [2] != [22] long [scaledValueOfFirstFixedSurface]: [10] != [0] long [typeOfSecondFixedSurface]: [255] != [106] scaleFactorOfSecondFixedSurface is set to missing in 1st field is not missing in 2nd field scaledValueOfSecondFixedSurface is set to missing in 1st field is not missing in 2nd field long [numberOfValues]: [684] != [239] double [referenceValue]: [-1.57229328155517578125e+01] != [4.15843811035156250000e+01] absolute diff. = 57.3073, relative diff. = 1.3781 tolerance=3.8147e-06 long [binaryScaleFactor]: [-10] != [-15] long [bitsPerValue]: [16] != [24] long [section6Length]: [6] != [92] long [bitMapIndicator]: [255] != [0] long [section7Length]: [1373] != [722] [codedValues] has different size: 1st field: 684, 2nd field: 239 ... very long output
>grib_compare -r tigge_pf_ecmwf.grib2 out.grib2