puts("-P <file> \t specify implantation profile file");
puts("-N <file> \t specify nuclear energy loss profile file");
printf("-H <value> \t collisions per ion in simulation window (default %d)\n",CPI);
+ puts("-m <value> \t specify c->a carbon saturation");
return 1;
}
{
offset=i+j*d3_l->max_x+k*d3_l->max_x*d3_l->max_y;
/* case amorph: amorph <- cryst diffusion */
- if(*(d3_l->status+offset)&AMORPH)
+ if(*(d3_l->status+offset)&AMORPH && *(d3_l->extra+offset)<my_info->c_sat)
{
for(c=-1;c<=1;c++)
{
my_info.dr_cc=DR_CC;
my_info.diff_rate=DIFF_RATE;
my_info.cpi=CPI;
+ my_info.c_sat=C_SAT;
nowait=0;
quit=0;
escape=0;
case 'H':
my_info.cpi=atoi(argv[++i]);
break;
+ case 'm':
+ my_info.c_sat=atoi(argv[++i]);
+ break;
default:
usage();
return -1;
typedef struct __info
{
- int cc,steps,range,diff_rate,cpi;
+ int cc,steps,range,diff_rate,cpi,c_sat;
double a_el,b_el,a_cd,b_cd,a_ap,b_ap,a_cp,dr_ac,dr_cc;
char z_diff,c_diff;
} info;
#define CPI 20
+#define C_SAT (6*6*6)
+
#define FFT_HEIGHT 64
#endif /* NLSOP_H */