#if defined(LMP_HAS_NETCDF)
#ifdef DUMP_CLASS
DumpStyle(netcdf,DumpNetCDF)
#else
#ifndef LMP_DUMP_NETCDF_H
#define LMP_DUMP_NETCDFC_H
#include "dump_custom.h"
namespace LAMMPS_NS {
const int NC_FIELD_NAME_MAX = 100;
const int DUMP_NC_MAX_DIMS = 100;
class DumpNetCDF : public DumpCustom {
public:
DumpNetCDF(class LAMMPS *, int, char **);
virtual ~DumpNetCDF();
virtual void write();
private:
struct nc_perat_t {
int dims; int field[DUMP_NC_MAX_DIMS]; char name[NC_FIELD_NAME_MAX]; int var;
bool constant; int ndumped; };
int framei; int blocki; int ndata;
bigint ntotalgr;
int n_perat; nc_perat_t *perat;
int *thermovar;
bool double_precision; bool thermo;
bigint n_buffer; bigint *int_buffer; double *double_buffer;
int ncid;
int frame_dim;
int vector_dim[DUMP_NC_MAX_DIMS];
int atom_dim;
int cell_spatial_dim;
int cell_angular_dim;
int label_dim;
int spatial_var;
int cell_spatial_var;
int cell_angular_var;
int time_var;
int cell_origin_var;
int cell_lengths_var;
int cell_angles_var;
virtual void openfile();
void closefile();
virtual void write_header(bigint);
virtual void write_data(int, double *);
virtual int modify_param(int, char **);
void ncerr(int, const char *, int);
};
}
#endif
#endif
#endif