double mu_m; /* mixed mu */
double gamma[2];
+ double gamma_m;
double c[2];
+ double c_mixed;
+ double c2[2];
+ double c2_mixed;
double d[2];
+ double d_mixed;
+ double d2[2];
+ double d2_mixed;
double h[2];
+ double h_mixed;
+ double c2d2[2];
+ double c2d2_m;
t_albe_exchange exchange; /* exchange between 2bp and 3bp calc */
} t_albe_mult_params;
+#ifdef PTHREADS
+typedef struct s_kdata {
+ t_moldyn *moldyn;
+ t_atom *ai,*aj,*ak;
+ unsigned char bc;
+} t_kdata;
+#endif
+
/* function prototypes */
-int albe_mult_complete_params(t_albe_mult_params *p);
-int albe_mult_1bp(t_moldyn *moldyn,t_atom *ai);
-int albe_mult_2bp(t_moldyn *moldyn,t_atom *ai,t_atom *aj,u8 bc);
+int albe_mult_set_params(t_moldyn *moldyn,int element1,int elemnt2);
int albe_mult_3bp_j1(t_moldyn *moldyn,t_atom *ai,t_atom *aj,u8 bc);
+#ifdef PTHREADS
+void *albe_mult_3bp_k1(void *ptr);
+#else
int albe_mult_3bp_k1(t_moldyn *moldyn,
t_atom *ai,t_atom *aj,t_atom *ak,u8 bc);
+#endif
int albe_mult_3bp_j2(t_moldyn *moldyn,t_atom *ai,t_atom *aj,u8 bc);
int albe_mult_3bp_k2(t_moldyn *moldyn,
t_atom *ai,t_atom *aj,t_atom *ak,u8 bc);
+int albe_mult_check_2b_bond(t_moldyn *moldyn,t_atom *itom,t_atom *jtom,u8 bc);
+
+/* albe potential parameter defines */
+
+// silicon
+#define ALBE_R_SI (2.82-0.14)
+#define ALBE_S_SI (2.82+0.14)
+#define ALBE_A_SI (3.24*EV/0.842)
+#define ALBE_B_SI (-1.842*3.24*EV/0.842)
+#define ALBE_R0_SI 2.232
+#define ALBE_LAMBDA_SI (1.4761*sqrt(2.0*1.842))
+#define ALBE_MU_SI (1.4761*sqrt(2.0/1.842))
+#define ALBE_GAMMA_SI 0.114354
+#define ALBE_C_SI 2.00494
+#define ALBE_D_SI 0.81472
+#define ALBE_H_SI 0.259
+#define ALBE_LC_SI 5.429
+
+// carbon
+#define ALBE_R_C (2.00-0.15)
+#define ALBE_S_C (2.00+0.15)
+#define ALBE_A_C (6.00*EV/1.167)
+#define ALBE_B_C (-2.167*6.00*EV/1.167)
+#define ALBE_R0_C 1.4276
+#define ALBE_LAMBDA_C (2.0099*sqrt(2.0*2.167))
+#define ALBE_MU_C (2.0099*sqrt(2.0/2.167))
+#define ALBE_GAMMA_C 0.11233
+#define ALBE_C_C 181.910
+#define ALBE_D_C 6.28433
+#define ALBE_H_C 0.5556
+#define ALBE_LC_C 3.566
+
+// mixed: silicon carbide
+#define ALBE_R_SIC (2.40-0.20)
+#define ALBE_S_SIC (2.40+0.20)
+#define ALBE_A_SIC (4.36*EV/0.847)
+#define ALBE_B_SIC (-1.847*4.36*EV/0.847)
+#define ALBE_R0_SIC 1.79
+#define ALBE_LAMBDA_SIC (1.6991*sqrt(2.0*1.847))
+#define ALBE_MU_SIC (1.6991*sqrt(2.0/1.847))
+#define ALBE_GAMMA_SIC 0.011877
+#define ALBE_C_SIC 273987
+#define ALBE_D_SIC 180.314
+#define ALBE_H_SIC 0.68
+#define ALBE_LC_SIC 4.359
#endif