+ u32 *cell;
+ int i,j,k;
+ double pressure;
+ cell=(u32 *)(cell_p+x+y*(x_max-1)+z*(x_max-1)*(y_max-1));
+ pressure=p0*URAND_2BYTE_MAX;
+ for(i=-range;i<=range;i++)
+ {
+ for(j=-range;j<=range;j++)
+ {
+ for(k=-range;k<=range;k++)
+ {
+ if(!(i==0 && j==0 && k==0))
+ {
+ if(*(u32 *)(cell_p+((x+x_max+i)%x_max)+((y+j+y_max)%y_max)*(x_max-1)+((z+k+z_max)%z_max)*(x_max-1)*(y_max-1))&AMORPH) pressure+=faktor*URAND_2BYTE_MAX/(i*i+j*j+k*k);
+ }
+ }
+ }
+ }
+ if(*cell&AMORPH)
+ {
+ /* wrong probability! just test by now ...*/
+ if(rand_get(URAND_2BYTE_MAX)>pressure) make_cryst(cell);
+ } else
+ {
+ if(rand_get(URAND_2BYTE_MAX)<=pressure) make_amorph(cell);
+ }