#ifdef PAIR_CLASS
PairStyle(spin/dmi,PairSpinDmi)
#else
#ifndef LMP_PAIR_SPIN_DMI_H
#define LMP_PAIR_SPIN_DMI_H
#include "pair_spin.h"
namespace LAMMPS_NS {
class PairSpinDmi : public PairSpin {
public:
PairSpinDmi(class LAMMPS *);
virtual ~PairSpinDmi();
void settings(int, char **);
void coeff(int, char **);
void init_style();
double init_one(int, int);
void *extract(const char *, int &);
void compute(int, int);
void compute_single_pair(int, double *);
void compute_dmi(int, int, double *, double *, double *);
void compute_dmi_mech(int, int, double, double *, double *, double *, double *);
void write_restart(FILE *);
void read_restart(FILE *);
void write_restart_settings(FILE *);
void read_restart_settings(FILE *);
double cut_spin_dmi_global;
protected:
double **DM; double **v_dmx, **v_dmy, **v_dmz; double **vmech_dmx, **vmech_dmy, **vmech_dmz; double **cut_spin_dmi;
int lattice_flag; class FixNVESpin *lockfixnvespin;
void allocate();
};
}
#endif
#endif