public void InitializeDailyAmounts(double yearlyConsumption) { double sum = CoolingDegreeHours.Select(x => x.DegreeHours).Sum(); double degreeDayProportion = yearlyConsumption / sum; foreach (var day in CoolingDegreeHours) { day.HourlyEnergyConsumption = day.DegreeHours * degreeDayProportion; } }
public CoolingDegreeProfile([NotNull] Profile temperatures, double coolingTemperature, double roomTemperature) { var timeStepsPerHour = FindProfileResolution(temperatures); var hourlyAverages = MakeHourlyAverages(timeStepsPerHour, temperatures); for (var i = 0; i < hourlyAverages.Count; i++) { var hourlyAverage = hourlyAverages[i]; CoolingDegreeHours.Add(new CoolingDegreeHour(hourlyAverage, coolingTemperature, roomTemperature)); } }