Paul,
I'd say that is just wrong. Here is a diagram of a solar water heating system I took from the
Arizona Solar Center website
(
azsolarcenter.org/solar-hot-water-a-primer) (ignore the "batch heater"):
They call it a "tempering valve." The ASC website also says this:
Caution! These systems produce very hot water! A tempering valve is your protection from being scalded at the tap. You will regularly see temperatures in excess of 160°F (71°C) in summer months, which is much hotter than you are accustomed to getting from your conventional thermostatically controlled water heater. The tempering valve limits the temperature delivered to the tap by mixing in cold water as necessary.
The SAM model doesn't account for this and as a result models dangerously hot water being delivered by the system and overstates the amount of hot water drawn when the tank temperature is higher than the set temperature (and thereby underestimates overall performance).
I think I could just run it twice --- first with the desired draw profile and again with the draws reduced by the hot/cold mix at the tempering valve. Use Q_auxonly from the first run, and Q_aux from the second run to get the energy savings. But this would not be as accurate as fixing the code. I looked at the SAM swh model source code and am relatively sure that changing line 597 from:
double mdot_mix = draw[hour]*(1.0/3600.0);
to
// simulate the tempering valve. the fmin function limits the draw to the user-specified amount if T_hot < T_set,
double mdot_mix = draw[hour]*(1.0/3600.0) * fmin(T_set_use - T_mains_use)/(T_hot_prev - T_mains_use),1.0);
But I don't know how to compile my own ssc module.