program fcc implicit none c place NP particles of diameter=1 c in a FCC lattice of size Lbox real Lbox(3) integer NP,m real posx,posy,posz,fracvol real sx(4),sy(4),sz(4) real sh,pi data sx /0.0,0.5,0.5,0.0/ data sy /0.0,0.5,0.0,0.5/ data sz /0.0,0.0,0.5,0.5/ data sh /0.01/ real a integer n integer i,j,k,l real box,dens write(*,*) "INTRODUCE: fracvol,lado de la caja" read(*,*) fracvol,box pi=4.0*atan(1.0) dens=(6.0/pi)*fracvol np=dens*box**3 a=(4.0/dens)**(1.0/3.0) n=(np/4)**(1.0/3.0)+0.001 np=4.0*n**3 do k=1,3 lbox(k)=n*a end do open(21,file='fcc.rst') write(21,*) np,lbox, " !np box_sizes" write(21,*) 0.2,0.2, " !rPOL/rCOL mupoly" write(21,*) 0.1, " !amplitud salto MC" m=1 do i=1,n do j=1,n do k=1,n do l=1,4 posx=(i-1+sx(l)+sh)*a -lbox(1)/2.0 posy=(j-1+sy(l)+sh)*a -lbox(1)/2.0 posz=(k-1+sz(l)+sh)*a -lbox(1)/2.0 m=m+1 write(21,*) posx,posy,posz end do end do end do end do write(*,*) 'number of particles',m pi=4.0*atan(1.0) write(*,*) 'frac-volume',(pi/6)*real(m)/lbox(1)**3 end