Using heat energy to increase temperature It's been a long time since I studied thermodynamics in college years ago, but I was just wondering this:
I know that a large bathtub of 10 C water has more heat energy than a small cup of 20 C water, and that heat naturally flows from objects of higher temperature to objects of lower temperature, but is there any way to use the heat energy of the bathtub to get the temperature of the cup water higher on a small scale level like this?
I purposefully chose number values that would make it hard to use the heat energy of the bathtub water to do something conventional like drive a turbine to generate electricity to heat the cup water because I'm specifically curious about possibility and efficiencies without huge amounts of energy.
 A: Yes, you can take heat from the bathtub and heat the cup of water with it, but you will have to do work in the process.  For example, you can run a heat pump that moves heat from the tub to the cup, but the heat pump will need to be powered by electricity, or maybe a hamster on a wheel.
The size of the bathtub and the cup of coffee are immaterial as long as they both contain a large number of atoms.  Temperature is an intensive quantity, one that does not change based on the absolute size of the system.  That means that the statement "heat flows naturally from high temperature to low temperature" does not depend on the size of the reservoirs involved.
In this case, you are moving heat from 283K to 293K.  To move one Joule of heat across that temperature gradient requires $1 - \frac{283}{293} = \frac{10}{293}$  Joules of work at minimum.  This is for a theoretical ideal heat engine.  To do it in real life, you will need more work than that because you cannot be perfectly efficient.
Note: I suppose there are cute responses to this question which would refer to waiting for times longer than the age of the universe or asking for random fluctuations smaller than could possibly be measured.  Here, I'm trying to give a practical response.
