public PackageStub(BoilerId priBoiler, ContainerId?solarContainer, SolarPanelId?solar, int numberOfSolars, SolarStationId?solarStation) { var factory = new ApplianceFactory(); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetBoiler((priBoiler)), IsPrimary = true }); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetContainer(solarContainer ?? 0), IsSolarContainer = true }); for (int i = 0; i < numberOfSolars; i++) { ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetSolarPanel(solar ?? 0), IsUsedForRoomHeating = true }); } ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetSolarStation(solarStation ?? 0) }); }
public PackageStub(BoilerId primary, ContainerId?solarContainer, int numContainers, SolarPanelId?solar, int?numberOfSolars, TempControlId?tempControl) { var factory = new ApplianceFactory(); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetBoiler(primary), IsPrimary = true }); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetContainer(solarContainer ?? 0), IsSolarContainer = true }); for (int i = 0; i < numberOfSolars; i++) { ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetSolarPanel(solar ?? 0), IsUsedForRoomHeating = true }); } ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetTempControl(tempControl ?? 0) }); for (int i = 0; i < numContainers; i++) { ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetContainer(solarContainer ?? 0), IsSolarContainer = true }); } for (int i = 0; i < numContainers - 1; i++) { ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetContainer(solarContainer ?? 0), IsSolarContainer = true }); } }
public PackageStub(BoilerId priBoiler, ContainerId?solarContain, BoilerId?secBoiler, SolarPanelId?solar, int numberOfSolars, HeatpumpId?heatpump, ContainerId?container, TempControlId?tempControl) { var factory = new ApplianceFactory(); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetBoiler((priBoiler)), IsPrimary = true }); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetContainer((solarContain ?? 0)), IsSolarContainer = true }); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetBoiler(secBoiler ?? 0) }); for (int i = 0; i < numberOfSolars; i++) { ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetSolarPanel(solar ?? 0), IsUsedForRoomHeating = true }); } ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetHeatpump(heatpump ?? 0) }); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetContainer(container ?? 0) }); ApplianceInstances.Add(new ApplianceInstance() { Appliance = factory.GetTempControl(tempControl ?? 0) }); }
public void PrimaryBoilerCalculateEEI_CorrecrOverallResult(PackagedSolutionId packId, BoilerId id, float expected) { var package = new PackageFactory().GetPackage(packId); var calculation = new BoilerAsPrimary(); AssignUsageProperties(package); //package.Appliances.Add(new ApplianceFactory().GetBoiler(id) ?? new Appliance()); if (id == BoilerId.LoganoSB150) { var primary = package.PrimaryHeatingUnitInstance; primary.IsPrimary = false; package.ApplianceInstances.Add(new ApplianceInstance() { Appliance = new ApplianceFactory().GetBoiler(id), IsPrimary = true }); } var result = new EEICalculationResult(); result = calculation.CalculateEEI(package); var EEI = Math.Round(result.EEI); //Assert.AreEqual(expected, EEI); Assert.IsTrue(expected <= EEI + 1f && expected >= EEI - 1f); }
public Appliance GetBoiler(BoilerId id) { switch (id) { case BoilerId.Cerapur: return(new ApplianceStub("Cerapur", new HeatingUnitDataSheet() { WattUsage = 20, AFUE = 93, AFUEColdClima = 98.2f, AFUEWarmClima = 87.8f, WaterHeatingEffiency = 68, UseProfile = UseProfileType.M }, ApplianceTypes.Boiler)); case BoilerId.LoganoSB150: return(new ApplianceStub("LoganoPlusSB105", new HeatingUnitDataSheet() { AFUE = 91, WattUsage = 18, AFUEColdClima = 99.2f, AFUEWarmClima = 92.5f }, ApplianceTypes.Boiler)); case BoilerId.EuroPurACUWater: return(new ApplianceStub("EuroPurACUWater", new HeatingUnitDataSheet() { AFUE = 91, WattUsage = 18, AFUEColdClima = 96.5f, AFUEWarmClima = 87.7f, WaterHeatingEffiency = 82, UseProfile = UseProfileType.XL, Vbu = 0 }, ApplianceTypes.Boiler)); case BoilerId.Condens9000Water: return(new ApplianceStub("Condens9000Water", new HeatingUnitDataSheet() { AFUE = 94, WattUsage = 29, AFUEColdClima = 98.7f, AFUEWarmClima = 88.5f, WaterHeatingEffiency = 82, UseProfile = UseProfileType.XL, Vbu = 1 }, ApplianceTypes.Boiler)); case BoilerId.EuroPurUnitSolarWater: return(new ApplianceStub("EuroPurUnitSolar", new HeatingUnitDataSheet() { AFUE = 92, WattUsage = 13, AFUEColdClima = 98.1f, AFUEWarmClima = 87.8f, WaterHeatingEffiency = 85, UseProfile = UseProfileType.XL, Vbu = 34, StandingLoss = 92.5f , Vnorm = 204, Psb = 4 }, ApplianceTypes.Boiler)); case BoilerId.Condens5000: return(new ApplianceStub("Condens5000", new HeatingUnitDataSheet() { UseProfile = UseProfileType.XXL, WattUsage = 24, Vbu = 110, Psb = 2, WaterHeatingEffiency = 78, AFUEColdClima = 98, AFUEWarmClima = 87.8f }, ApplianceTypes.Boiler)); case BoilerId.Vitodens200: return(new ApplianceStub("Vitodens 200", new HeatingUnitDataSheet() { AFUE = 94, WattUsage = 42 }, ApplianceTypes.Boiler)); case BoilerId.Vitoladens300W: return(new ApplianceStub("Vitoladens 300-W", new HeatingUnitDataSheet() { AFUE = 91, WattUsage = 18, InternalTempControl = "3" }, ApplianceTypes.Boiler)); default: return(new Appliance()); } }