C     * MADELUNG POTENTIAL CALCULATIONS *
C     * ROCKSALT STRUCTURE *
      REAL*8    S,V,W,WI,WJ,WK,R,R0
      INTEGER*4 I,J,K,N,M
C
      REWIND(20)
C
C     TAPE 20 = OUTPUT FILE
C
      PRINT *,'* MADELUNG POTENTIAL CALCULATIONS *'
      PRINT *,'* ROCKSALT STRUCTURE - 3 DIMENSIONAL*'
C
      WRITE(6,*) ('ENTER RADIUS OF SPHERE:')
      READ(5,*) R0
      M = INT(R0)+3
      V = 0.
      S = 0.
C
      DO 100 I=0,M
      DO 99  J=0,M
      DO 98  K=0,M
       WI=1.D+000
       IF (I.EQ.0) WI=0.5D+000
       WJ=1.D+000
       IF (J.EQ.0) WJ=0.5D+000
       WK=1.D+000
       IF (K.EQ.0) WK=0.5D+000
       N=I+J+K
C      N=I+J
C      N=I
       DUMMY = N/2.+0.1
       IF (N.NE.(2*INT(DUMMY))) W=WI*WJ*WK
       IF (N.EQ.(2*INT(DUMMY))) W=-WI*WJ*WK
C      IF (N.NE.(2*INT(DUMMY))) W=WI*WJ
C      IF (N.EQ.(2*INT(DUMMY))) W=-WI*WJ
C      IF (N.NE.(2*INT(DUMMY))) W=WI
C      IF (N.EQ.(2*INT(DUMMY))) W=-WI
       R=DSQRT(DBLE(I*I+J*J+K*K))
C      R=DSQRT(DBLE(I*I+J*J))
C      R=DSQRT(DBLE(I*I))
       IF ((N.NE.0).AND.(R.LE.R0)) THEN
       S=S+W
       V=V+W/R
       ENDIF
98    CONTINUE
99    CONTINUE
100   CONTINUE
C
      V=V*8.D+000
C     V=V*4.D+000
C     V=V*2.D+000
      WRITE(6,*)
      WRITE(6,999) 'TOTAL CHARGE       : ',S
      WRITE(6,999) 'MADELUNG POTENTIAL : ',V
C      WRITE(20,999) 'TOTAL CHARGE       : ',S
C      WRITE(20,999) 'MADELUNG POTENTIAL : ',V
999   FORMAT(A21,D14.7)
      STOP
      END

