projects
/
physik
/
nlsop.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
more printfs
[physik/nlsop.git]
/
nlsop.c
diff --git
a/nlsop.c
b/nlsop.c
index
ce06cec
..
ca83572
100644
(file)
--- a/
nlsop.c
+++ b/
nlsop.c
@@
-61,9
+61,9
@@
int usage(void)
printf("-s <value> \t steps (default %d)\n",STEPS);
printf("-d <value> \t refresh display (default %d)\n",REFRESH);
printf("-r <value> \t amorphous influence range (default %d)\n",RANGE);
printf("-s <value> \t steps (default %d)\n",STEPS);
printf("-d <value> \t refresh display (default %d)\n",REFRESH);
printf("-r <value> \t amorphous influence range (default %d)\n",RANGE);
- printf("-f <value> \t
pressure = <value> * 1/distance^2 (default %f)\n",A_AP
);
- printf("-p <value> \t
pressure offset (default %f)\n",B_AP
);
- printf("-F <value> \t
proportionality constant between c conc and ability to get amorphous (default %f)\n",A_CP
);
+ printf("-f <value> \t
stress induced amorphization influence (default %f)\n",S_D
);
+ printf("-p <value> \t
ballistic amorphization influence (default %f)\n",B_D
);
+ printf("-F <value> \t
carbon induced amorphization influence (default %f)\n",C_D
);
printf("-D <value> \t diffusion rate from cryst to amorph cells (default %f)\n",DR_AC);
printf("-c <value> \t diffusion rate in cryst cells (default %f)\n",DR_CC);
printf("-e <value> \t do diffusion every <value> steps (default %d)\n",DIFF_RATE);
printf("-D <value> \t diffusion rate from cryst to amorph cells (default %f)\n",DR_AC);
printf("-c <value> \t diffusion rate in cryst cells (default %f)\n",DR_CC);
printf("-e <value> \t do diffusion every <value> steps (default %d)\n",DIFF_RATE);
@@
-91,7
+91,7
@@
int process_cell(d3_lattice *d3_l,u32 x,u32 y,u32 z,info *my_info,u32 nel_z)
thiz=d3_l->status+x+y*d3_l->max_x+z*d3_l->max_x*d3_l->max_y;
conc=d3_l->extra+x+y*d3_l->max_x+z*d3_l->max_x*d3_l->max_y;
thiz=d3_l->status+x+y*d3_l->max_x+z*d3_l->max_x*d3_l->max_y;
conc=d3_l->extra+x+y*d3_l->max_x+z*d3_l->max_x*d3_l->max_y;
- p=my_info->b
_ap
*nel_z;
+ p=my_info->b*nel_z;
for(i=-(my_info->range);i<=my_info->range;i++)
{
for(j=-(my_info->range);j<=my_info->range;j++)
for(i=-(my_info->range);i<=my_info->range;i++)
{
for(j=-(my_info->range);j<=my_info->range;j++)
@@
-99,11
+99,11
@@
int process_cell(d3_lattice *d3_l,u32 x,u32 y,u32 z,info *my_info,u32 nel_z)
if(!(i==0 && j==0))
{
off=((x+d3_l->max_x+i)%d3_l->max_x)+((y+d3_l->max_y+j)%d3_l->max_x)*d3_l->max_x+z*d3_l->max_x*d3_l->max_y;
if(!(i==0 && j==0))
{
off=((x+d3_l->max_x+i)%d3_l->max_x)+((y+d3_l->max_y+j)%d3_l->max_x)*d3_l->max_x+z*d3_l->max_x*d3_l->max_y;
- if(*(d3_l->status+off)&AMORPH) p+=my_info->
a_ap
*(*(d3_l->extra+off))*URAND_MAX/(i*i+j*j);
+ if(*(d3_l->status+off)&AMORPH) p+=my_info->
s
*(*(d3_l->extra+off))*URAND_MAX/(i*i+j*j);
}
}
}
}
}
}
- p+=*conc*my_info->
a_cp
*URAND_MAX;
+ p+=*conc*my_info->
c
*URAND_MAX;
if(!(*thiz&AMORPH))
{
if(get_rand(URAND_MAX)<=p) MAKE_AMORPH(thiz);
if(!(*thiz&AMORPH))
{
if(get_rand(URAND_MAX)<=p) MAKE_AMORPH(thiz);
@@
-373,8
+373,10
@@
int write_ac_distr(d3_lattice *d3_l,int ac_distr)
if(*(d3_l->status+offset)&AMORPH) count+=1;
}
}
if(*(d3_l->status+offset)&AMORPH) count+=1;
}
}
+#ifndef MAC
if(ac_distr==4) dprintf(fd,"%d %d\n",z*CELL_LENGTH,count);
else dprintf(fd,"%d %f\n",z*CELL_LENGTH,100.0*count/si_count);
if(ac_distr==4) dprintf(fd,"%d %d\n",z*CELL_LENGTH,count);
else dprintf(fd,"%d %f\n",z*CELL_LENGTH,100.0*count/si_count);
+#endif
}
close(fd);
}
close(fd);
@@
-956,6
+958,7
@@
int load_from_file(char *lf,d3_lattice *d3_l,info *my_inf)
int convert_file(char *cf,d3_lattice *d3_l)
{
int convert_file(char *cf,d3_lattice *d3_l)
{
+#ifndef MAC
int x,y,z;
int c_fd;
int x,y,z;
int c_fd;
@@
-976,6
+979,7
@@
int convert_file(char *cf,d3_lattice *d3_l)
}
}
close(c_fd);
}
}
close(c_fd);
+#endif
return 1;
}
return 1;
}
@@
-1081,7
+1085,7
@@
u32 get_reject_graph(info *my_info,d3_lattice *d3_l,char *file,u32 *graph) {
free(flag);
#ifdef DEBUG_INTERPOL_PROFILE
free(flag);
#ifdef DEBUG_INTERPOL_PROFILE
- printf("debug:
(interpolated profile)\n"
);
+ printf("debug:
%s (interpolated profile)\n",file
);
for(i=0;i<d3_l->max_z;i++) printf("%d %d\n",i,graph[i]);
#endif
for(i=0;i<d3_l->max_z;i++) printf("%d %d\n",i,graph[i]);
#endif
@@
-1145,9
+1149,9
@@
int main(int argc,char **argv)
resave=RESAVE;
my_info.z_diff=0;
my_info.c_diff=1;
resave=RESAVE;
my_info.z_diff=0;
my_info.c_diff=1;
- my_info.
a_ap=A_AP
;
- my_info.b
_ap=B_AP
;
- my_info.
a_cp=A_CP
;
+ my_info.
s=S_D
;
+ my_info.b
=B_D
;
+ my_info.
c=C_D
;
my_info.cc=CC;
my_info.dr_ac=DR_AC;
my_info.dr_cc=DR_CC;
my_info.cc=CC;
my_info.dr_ac=DR_AC;
my_info.dr_cc=DR_CC;
@@
-1170,6
+1174,10
@@
int main(int argc,char **argv)
ne_max=0;
ip_max=0;
ne_max=0;
ip_max=0;
+#ifdef MORE_PRINTF
+ printf("reading argv ...");
+#endif
+
for(i=1;i<argc;i++)
{
if(argv[i][0]=='-')
for(i=1;i<argc;i++)
{
if(argv[i][0]=='-')
@@
-1208,13
+1216,13
@@
int main(int argc,char **argv)
my_info.range=atoi(argv[++i]);
break;
case 'f':
my_info.range=atoi(argv[++i]);
break;
case 'f':
- my_info.
a_ap
=atof(argv[++i]);
+ my_info.
s
=atof(argv[++i]);
break;
case 'p':
break;
case 'p':
- my_info.b
_ap
=atof(argv[++i]);
+ my_info.b=atof(argv[++i]);
break;
case 'F':
break;
case 'F':
- my_info.
a_cp
=atof(argv[++i]);
+ my_info.
c
=atof(argv[++i]);
break;
case 'W':
resave=atoi(argv[++i]);
break;
case 'W':
resave=atoi(argv[++i]);
@@
-1265,6
+1273,10
@@
int main(int argc,char **argv)
} else usage();
}
} else usage();
}
+#ifdef MORE_PRINTF
+ printf(" done\n");
+#endif
+
x=d3_l.max_x/2-1;
y=d3_l.max_y/2-1;
z=d3_l.max_z/2-1;
x=d3_l.max_x/2-1;
y=d3_l.max_y/2-1;
z=d3_l.max_z/2-1;
@@
-1277,9
+1289,18
@@
int main(int argc,char **argv)
}
#endif
}
#endif
+#ifdef MORE_PRINTF
+ printf("rand init ...");
+#endif
+
if(!strcmp(r_file,"")) rand_init(NULL);
else rand_init(r_file);
if(!strcmp(r_file,"")) rand_init(NULL);
else rand_init(r_file);
+#ifdef MORE_PRINTF
+ printf(" done\n");
+ printf("allocating data ...");
+#endif
+
if(!strcmp(l_file,""))
{
i=d3_l.max_x*d3_l.max_y*d3_l.max_z;
if(!strcmp(l_file,""))
{
i=d3_l.max_x*d3_l.max_y*d3_l.max_z;
@@
-1308,12
+1329,16
@@
int main(int argc,char **argv)
convert_file(c_file,&d3_l);
puts("done");
return 1;
convert_file(c_file,&d3_l);
puts("done");
return 1;
- }
+ }
#ifdef USE_DFB_API
else d3_lattice_init(&argc,argv,&d3_l);
#endif
}
#ifdef USE_DFB_API
else d3_lattice_init(&argc,argv,&d3_l);
#endif
}
+#ifdef MORE_PRINTF
+ printf(" done\n");
+#endif
+
#ifdef USE_DFB_API
d3_event_init(&d3_l);
#endif
#ifdef USE_DFB_API
d3_event_init(&d3_l);
#endif
@@
-1323,9
+1348,9
@@
int main(int argc,char **argv)
sprintf(s_txt,"steps: %d",my_info.steps);
sprintf(dose_txt,"dose: %.2fe+17 C/cm²",my_info.steps*1.0/(d3_l.max_x*d3_l.max_y*CELL_LENGTH*CELL_LENGTH*1000));
sprintf(r_txt,"pressure range: %d",my_info.range);
sprintf(s_txt,"steps: %d",my_info.steps);
sprintf(dose_txt,"dose: %.2fe+17 C/cm²",my_info.steps*1.0/(d3_l.max_x*d3_l.max_y*CELL_LENGTH*CELL_LENGTH*1000));
sprintf(r_txt,"pressure range: %d",my_info.range);
- sprintf(stress_txt,"stress term: %f",my_info.
a_ap
);
- sprintf(ballistic_txt,"ballistic term: %f",my_info.b
_ap
);
- sprintf(carbon_txt,"carbon term: %f",my_info.
a_cp
);
+ sprintf(stress_txt,"stress term: %f",my_info.
s
);
+ sprintf(ballistic_txt,"ballistic term: %f",my_info.b);
+ sprintf(carbon_txt,"carbon term: %f",my_info.
c
);
sprintf(dr_ac_txt,"a/c diffusion rate: %f",my_info.dr_ac);
if(my_info.c_diff!=0) sprintf(dr_cc_txt,"c/c diffusion rate: %f",my_info.dr_cc);
else sprintf(dr_cc_txt,"c/c diffusion rate: none");
sprintf(dr_ac_txt,"a/c diffusion rate: %f",my_info.dr_ac);
if(my_info.c_diff!=0) sprintf(dr_cc_txt,"c/c diffusion rate: %f",my_info.dr_cc);
else sprintf(dr_cc_txt,"c/c diffusion rate: none");
@@
-1361,6
+1386,10
@@
int main(int argc,char **argv)
arg_v[25]=NULL;
#endif
arg_v[25]=NULL;
#endif
+#ifdef MORE_PRINTF
+ printf("random rejection graphs ...");
+#endif
+
/* compute graphs for random number rejection method */
if((c_profile=(u32 *)malloc(d3_l.max_z*sizeof(unsigned int)))==NULL)
{
/* compute graphs for random number rejection method */
if((c_profile=(u32 *)malloc(d3_l.max_z*sizeof(unsigned int)))==NULL)
{
@@
-1384,6
+1413,10
@@
int main(int argc,char **argv)
return -1;
}
return -1;
}
+#ifdef MORE_PRINTF
+ printf(" done\n");
+#endif
+
#ifdef DEBUG_RAND
i=0;
while(1)
#ifdef DEBUG_RAND
i=0;
while(1)
@@
-1402,6
+1435,10
@@
int main(int argc,char **argv)
}
#endif
}
#endif
+#ifdef MORE_PRINTF
+ printf("starting simulation ... now! :)\n");
+#endif
+
i=(c_step?c_step:0);
while((i<my_info.steps) && (quit==0) && (escape==0))
{
i=(c_step?c_step:0);
while((i<my_info.steps) && (quit==0) && (escape==0))
{
@@
-1425,6
+1462,9
@@
int main(int argc,char **argv)
sprintf(cc_txt,"total c: %d",my_info.cc);
d3_lattice_draw(&d3_l,x,y,z,25,arg_v,mode,0,NULL,0,NULL,0);
}
sprintf(cc_txt,"total c: %d",my_info.cc);
d3_lattice_draw(&d3_l,x,y,z,25,arg_v,mode,0,NULL,0,NULL,0);
}
+#endif
+#ifdef MORE_PRINTF
+ if(i%refresh==0) printf("step: %d\n",i);
#endif
if(i%resave==0 && strcmp(s_file,"") && resave!=0 && i!=0)
{
#endif
if(i%resave==0 && strcmp(s_file,"") && resave!=0 && i!=0)
{