lammps/tools/phonon/phonon.h

62 lines
863 B
C++

#ifndef PHONON_H
#define PHONON_H
#include "stdio.h"
#include "stdlib.h"
#include <complex>
#include "dynmat.h"
#include "memory.h"
using namespace std;
class Phonon{
public:
Phonon(DynMat *);
~Phonon();
DynMat *dynmat;
private:
int nq, ndim, sysdim;
double **qpts, *wt;
double **eigs;
int ndos, nlocal, *locals;
double *dos, fmin, fmax, df, rdf;
double ***ldos;
Memory *memory;
void QMesh();
void ComputeAll();
void pdos();
void pdisp();
void therm();
void ldos_egv();
void ldos_rsgf();
void local_therm();
void dmanyq();
void vfanyq();
void DMdisp();
void vecanyq();
void ShowCell();
void smooth(double *, const int);
void writeDOS();
void writeLDOS();
void Normalize();
int count_words(const char *);
#ifdef UseSPG
int num_atom, *attyp;
double latvec[3][3], **atpos;
#endif
};
#endif