Exemple #1
0
        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)
            });
        }
Exemple #2
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
                });
            }
        }
Exemple #3
0
        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);
        }
Exemple #5
0
        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());
            }
        }