+/* create mixed terms from parameters and set them */
+int tersoff_mult_complete_params(t_tersoff_mult_params *p) {
+
+ printf("[moldyn] tersoff parameter completion\n");
+ p->Smixed=sqrt(p->S[0]*p->S[1]);
+ p->Rmixed=sqrt(p->R[0]*p->R[1]);
+ p->Amixed=sqrt(p->A[0]*p->A[1]);
+ p->Bmixed=sqrt(p->B[0]*p->B[1]);
+ p->lambda_m=0.5*(p->lambda[0]+p->lambda[1]);
+ p->mu_m=0.5*(p->mu[0]+p->mu[1]);
+
+ printf("[moldyn] tersoff mult parameter info:\n");
+ printf(" S (m) | %.12f | %.12f | %.12f\n",p->S[0],p->S[1],p->Smixed);
+ printf(" R (m) | %.12f | %.12f | %.12f\n",p->R[0],p->R[1],p->Rmixed);
+ printf(" A (eV) | %f | %f | %f\n",p->A[0]/EV,p->A[1]/EV,p->Amixed/EV);
+ printf(" B (eV) | %f | %f | %f\n",p->B[0]/EV,p->B[1]/EV,p->Bmixed/EV);
+ printf(" lambda | %f | %f | %f\n",p->lambda[0],p->lambda[1],
+ p->lambda_m);
+ printf(" mu | %f | %f | %f\n",p->mu[0],p->mu[1],p->mu_m);
+ printf(" beta | %.10f | %.10f\n",p->beta[0],p->beta[1]);
+ printf(" n | %f | %f\n",p->n[0],p->n[1]);
+ printf(" c | %f | %f\n",p->c[0],p->c[1]);
+ printf(" d | %f | %f\n",p->d[0],p->d[1]);
+ printf(" h | %f | %f\n",p->h[0],p->h[1]);
+ printf(" chi | %f \n",p->chi);