# Maximum efficiency of heat engines not operating between two reservoirs

By considering Carnot's theorem, we know that the maximum efficiency of an engine operating between 2 reservoirs with different temperatures are given by $1$$-$$T_1$/$T_2$.

Consider the case when we want to build an engine operating between a reservoir and a (lower temperature) body by transferring heat from the reservoir to the body. Since the body is of a finite size and has a heat capacity, the temperature of the body changes throughout the process. What will be the maximum efficiency in this case?

EDIT: Furthermore, Carnot's theorem continues to hold because the efficiency is never greater than $1-T_\mathrm{low}/T_\mathrm{high}$. As discussed in the comments below, you can maintain reversibility (in this hypothetical and idealized thought experiment) if you lessen the impact of each cycle so that the temperature increase of the finite body per cycle is arbitrarily small. However, $T_\mathrm{low}$ will continue to grow.
However, if you abandon reversibility and allow the cycle to heat up the finite body by some finite amount, then entropy is generated (specifically, $\Delta S=C\ln T^\prime_\mathrm{low}/T_\mathrm{low}$, where $T^\prime_\mathrm{low}$ is the increased temperature and $C$ is the heat capacity of the finite body). This then is no longer a Carnot engine.