  We propose a new method to conserve the total energy to round-off error in
grid-based codes for hydrodynamic simulations with self-gravity. A formula for
the energy flux due to the work done by the the self-gravitational force is
given, so the change in total energy can be written in conservative form.
Numerical experiments with the code Athena show that the total energy is indeed
conserved with our new algorithm and the new algorithm is second order
accurate. We have performed a set of tests that show the numerical errors in
the traditional, non-conservative algorithm can affect the dynamics of the
system. The new algorithm only requires one extra solution of the Poisson
equation, as compared to the traditional algorithm which includes self-gravity
as a source term. If the Poisson solver takes a negligible fraction of the
total simulation time, such as when FFTs are used, the new algorithm is almost
as efficient as the original method. This new algorithm is useful in Eulerian
hydrodynamic simulations with self-gravity, especially when results are
sensitive to small energy errors, as for radiation pressure dominated flow.
