public static IBuilding CreateBuilding() { var buildingSite = new BuildingSiteImplementation(1); var snowLoad = new SnowLoadImplementation() { BuildingSite = buildingSite, SnowLoadForSpecificReturnPeriod = 0.9, SnowDensity = 2 }; var building = new BuildingImplementation() { SnowLoad = snowLoad, ThermalCoefficient = 1 }; return(building); }
public void SnowLoadTest_SecondZone_Windswept_Success() { var buildingSite = new BuildingSiteImplementation(10); buildingSite.CurrentZone = ZoneEnum.SecondZone; buildingSite.CurrentTopography = TopographyEnum.Windswept; buildingSite.CalculateExposureCoefficient(); var snowLoad = new SnowLoad(buildingSite); snowLoad.ReturnPeriod = 80; snowLoad.CalculateSnowLoad(); Assert.AreEqual(0.9, Math.Round(snowLoad.DefaultCharacteristicSnowLoad, 3), "DefaultCharacteristicSnowLoad has wrong calculations."); Assert.AreEqual(0.7, Math.Round(snowLoad.VariationCoefficient, 3), "VariationCoefficient has wrong calculations."); Assert.AreEqual(0.983, Math.Round(snowLoad.SnowLoadForSpecificReturnPeriod, 3), "SnowLoadForSpecificReturnPeriod has wrong calculations."); Assert.AreEqual(2, Math.Round(snowLoad.ExceptionalSnowLoadCoefficient, 3), "ExceptionalSnowLoadCoefficient has wrong calculations."); Assert.AreEqual(1.965, Math.Round(snowLoad.DesignExceptionalSnowLoadForSpecificReturnPeriod, 3), "DesignExceptionalSnowLoadForSpecificReturnPeriod has wrong calculations."); }
public void SnowLoadTest_FirstZone_Success() { var buildingSite = new BuildingSiteImplementation(10); buildingSite.AltitudeAboveSea = 350; buildingSite.CurrentZone = ZoneEnum.FirstZone; buildingSite.CurrentTopography = TopographyEnum.Normal; buildingSite.CalculateExposureCoefficient(); var snowLoad = new SnowLoad(buildingSite); snowLoad.CalculateSnowLoad(); Assert.AreEqual(1.05, Math.Round(snowLoad.DefaultCharacteristicSnowLoad, 3), "DefaultCharacteristicSnowLoad has wrong calculations."); Assert.AreEqual(0.648, Math.Round(snowLoad.VariationCoefficient, 3), "VariationCoefficient has wrong calculations."); Assert.AreEqual(1.05, Math.Round(snowLoad.SnowLoadForSpecificReturnPeriod, 3), "SnowLoadForSpecificReturnPeriod has wrong calculations."); Assert.AreEqual(2, Math.Round(snowLoad.ExceptionalSnowLoadCoefficient, 3), "ExceptionalSnowLoadCoefficient has wrong calculations."); Assert.AreEqual(2.10, Math.Round(snowLoad.DesignExceptionalSnowLoadForSpecificReturnPeriod, 3), "DesignExceptionalSnowLoadForSpecificReturnPeriod has wrong calculations."); }