import numpy as np
import re
import glob

redshift=15.00

filelist = glob.glob("PopIII_LW_512_*.dat")

for name in filelist:
  redshift=float(re.findall(r"[-+]?\d*\.\d+|\d+",name)[1])
  #f=open(name,'r')
  Xray=np.fromfile(name).reshape(512,512,512)
  Density=np.fromfile('Density_512_%5.2f.dat'%redshift).reshape(512,512,512)
  index = np.argwhere(Xray > 0)
  xmin = index[:][:,0].min()
  xmax = index[:][:,0].max()
  ymin = index[:][:,1].min()
  ymax = index[:][:,1].max()
  zmin = index[:][:,2].min()
  zmax = index[:][:,2].max() 
  Density_mean = Density[Xray>0].mean()
  total_Xray = Xray.sum()
  Xmean = total_Xray/(Xray[Density>Density_mean]>0).sum()
  Density[xmin:xmax,ymin:ymax,zmin:zmax] = 0.0
  Xray[Density>Density_mean] = Xmean
  Xray.tofile('PopIII_LW_WV_%5.2f.dat'%redshift)
