NCEPLIBS-g2c  1.6.4
misspack.c File Reference

Pack up a data field using a complex packing algorithm as defined in the GRIB2 documention. More...

#include <stdlib.h>
#include <math.h>
#include "grib2.h"

Go to the source code of this file.

Functions

void misspack (g2float *fld, g2int ndpts, g2int idrsnum, g2int *idrstmpl, unsigned char *cpack, g2int *lcpack)
 This subroutine packs up a data field using a complex packing algorithm as defined in the GRIB2 documention. More...
 

Detailed Description

Pack up a data field using a complex packing algorithm as defined in the GRIB2 documention.

Author
Stephen Gilbert
Date
2000-06-21

Definition in file misspack.c.

Function Documentation

◆ misspack()

void misspack ( g2float fld,
g2int  ndpts,
g2int  idrsnum,
g2int idrstmpl,
unsigned char *  cpack,
g2int lcpack 
)

This subroutine packs up a data field using a complex packing algorithm as defined in the GRIB2 documention.

It supports GRIB2 complex packing templates with or without spatial differences (i.e. DRTs 5.2 and 5.3). It also fills in GRIB2 Data Representation Template 5.2 or Template 5.3 with the appropriate values. This version assumes that Missing Value Management is being used and that 1 or 2 missing values appear in the data.

Parameters
fldContains the data values to pack
ndptsThe number of data values in array fld
idrsnumData Representation Template number 5.N Must equal 2 or 3.
idrstmplContains the array of values for Data Representation Template 5.2 or 5.3.
  • 0 Reference value - ignored on input, set by misspack routine.
  • 1 Binary Scale Factor - used on input.
  • 2 Decimal Scale Factor- used on input.
  • 6 Missing value management.
  • 7 Primary missing value.
  • 8 Secondary missing value.
  • 16 Order of Spatial Differencing (1 or 2).
cpackThe packed data field (character*1 array).
lcpacklength of packed field cpack.
Author
Stephen Gilbert
Date
2000-06-21

Definition at line 43 of file misspack.c.

References int_power(), mkieee(), pack_gp(), rdieee(), sbit(), and sbits().

Referenced by cmplxpack().