anchor.diff:                  tcg_racg[:], tmr_racg[:], tcr_gacr[:], tmg_gacr[:],     &
                   tnr_racg[:], tnr_gacr[:]
         REAL (KIND=R8SIZE), ALLOCATABLE, DIMENSION(:,:,:,:)::             &
  -                tcs_racs1, tmr_racs1, tcs_racs2, tmr_racs2,             &
  -                tcr_sacr1, tms_sacr1, tcr_sacr2, tms_sacr2,             &
  -                tnr_racs1, tnr_racs2, tnr_sacr1, tnr_sacr2
  +                tcs_racs1[:], tmr_racs1[:], tcs_racs2[:], tmr_racs2[:], &
  +                tcr_sacr1[:], tms_sacr1[:], tcr_sacr2[:], tms_sacr2[:], &
  +                tnr_racs1[:], tnr_racs2[:], tnr_sacr1[:], tnr_sacr2[:]
         REAL (KIND=R8SIZE), ALLOCATABLE, DIMENSION(:,:,:,:)::             &
  -                tpi_qcfz, tni_qcfz
  +                tpi_qcfz[:], tni_qcfz[:]
         REAL (KIND=R8SIZE), ALLOCATABLE, DIMENSION(:,:,:,:)::             &
  -                tpi_qrfz, tpg_qrfz, tni_qrfz, tnr_qrfz
  +                tpi_qrfz[:], tpg_qrfz[:], tni_qrfz[:], tnr_qrfz[:]
         REAL (KIND=R8SIZE), ALLOCATABLE, DIMENSION(:,:)::                 &
                   tps_iaus, tni_iaus, tpi_ide
         REAL (KIND=R8SIZE), ALLOCATABLE, DIMENSION(:,:):: t_Efrw
  
positive.code:         enddo
          enddo
  
   !        IF ( write_thompson_tables .AND. wrf_dm_on_monitor() ) THEN
   !          CALL wrf_message("Writing freezeH2O.dat in Thompson MP init")
   !          OPEN(63,file="freezeH2O.dat",form="unformatted",err=9234)
   !          WRITE(63,err=9234)tpi_qrfz
   !          WRITE(63,err=9234)tni_qrfz
   !          WRITE(63,err=9234)tpg_qrfz
   !          WRITE(63,err=9234)tnr_qrfz
   !          WRITE(63,err=9234)tpi_qcfz
   !          WRITE(63,err=9234)tni_qcfz
   !          CLOSE(63)
   !          RETURN    ! ----- RETURN
   ! 9234     CONTINUE
   !          CALL wrf_error_fatal("Error writing freezeH2O.dat")
   !        ENDIF
        ENDIF
  
        end subroutine freezeH2O
  
negative.code:       sync all()
  
        IF ( good .NE. 1 ) THEN
          if (this_image()==1) print *, "ThompMP: computing qr_acr_qg"
          do n2 = 1, nbr
  !        vr(n2) = av_r*Dr(n2)**bv_r * DEXP(-fv_r*Dr(n2))
           vr(n2) = -0.1021 + 4.932E3*Dr(n2) - 0.9551E6*Dr(n2)*Dr(n2)     &
  