the attached patch adds a conservative ENO operator to Carpet which can be used in cell centered runs to conserve rest mass when regridding/prolongating. The operator is activated by setting he new Carpet parameter "Carpet::eno_interpolation_type" to "averages". The default is "samples" which selects the current ENO implementation.
I also attach a parameter file that demonstrates the effect (can be turned into a test if we want to, also one can likely add the operator to CarpetExtra's prolongation test thorn).
The final file attached contains the Maple worksheet to compute the ENO weights. All of this is based on the lecture notes by Shu