00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef _MEAM_MARIAN_H
00010 #define _MEAM_MARIAN_H
00011
00012 #include "mdparallel.h"
00013
00014 extern "C" int forces_();
00015 extern "C" int meamdefine_();
00016 extern "C" int input_();
00017
00018 #define nmmax 100000
00019 #define nlcmax 100000
00020 #define ndim 3
00021 #define nnbrs 400
00022 #define nnbrs2 500
00023
00024 extern struct {char meamfile[100]; } meamdatafile_;
00025 extern struct {int nlcx, nlcy, nlcz, nlc; } linklist_;
00026 extern struct {double Lx, Ly, Lz; } box_;
00027 extern struct {int nm; } np_;
00028 extern struct {double x0[nmmax], y0[nmmax], z0[nmmax];} adim_;
00029 extern struct {double atpe[nmmax], atpe3b[nmmax], pe, petrip; } ppote_;
00030 extern struct {double fx[nmmax], fy[nmmax], fz[nmmax]; } area6_;
00031 extern struct {double zsmeam, alphas, betas[4], esubs, asubs, ts[4],
00032 rozros, rcutmeam, cmin, cmax, replus, attrac, legend;
00033 double equidist; } meamread_;
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047 class MEAMFrame : public MDPARALLELFrame
00048 {
00049 public:
00050
00051 MEAMFrame() {};
00052
00053 virtual void potential ();
00054
00055 void readMEAM();
00056 void MEAM();
00057
00058 virtual void Alloc();
00059 virtual void initvars();
00060 virtual void initparser();
00061
00062 virtual int exec(char *nam);
00063
00064 };
00065
00066
00067 #endif // _MEAM-MARIAN_H
00068