Smooth ENZO datacube to lower resolution

I have a 1536^3 ENZO datacube that I want to smooth to essentially become a 512^3 datacube. I want to be able to still use the datacube to do further analysis with yt, so I need the format of the data not to change. I only need to smooth the data of 3 fields, but I need to keep the Derived Quantities and parallel capabilities of yt. Is there any yt implementation that can do this or any other suggestions?
Thanks, Anthony

Anthony,
I have a 1536^3 ENZO datacube that I want to smooth to essentially become a 512^3 datacube. I want to be able to still use the datacube to do further analysis with yt, so I need the format of the data not to change. I only need to smooth the data of 3 fields, but I need to keep the Derived Quantities and parallel capabilities of yt. Is there any yt implementation that can do this or any other suggestions?
This is not currently possible in yt, and this is not a trivial problem. In order to do this, you'd either have to subsample 1:3 the data, or write a smoothing kernel using your favorite method (Gaussian, top-hat, etc...). The problem is yt expects all the grid data to have the same dimensionality, so you probably can't get away with changing only 3 fields. Honestly, perhaps the easiest way to do this would be to write some kind of script that manually mangles the enzo dataset from 1536 to 512, which applies the smoothing method to all fields and also adjusts all the grid dimensions accordingly. If this is the way you to, you could add it to the hub for other people to use:
Good luck and don't hesitate to ask more questions!
participants (2)
-
Anthony Harness
-
Stephen Skory