/// <summary> /// 更新耐张塔的覆冰率 /// </summary> /// <param name="towerType"></param> /// <param name="backWkCdts"></param> /// <param name="backIceArea"></param> /// <param name="frontWkCdts"></param> /// <param name="frontIceArea"></param> public void UpateIceCovrage(string towerType, List <ElecCalsWorkCondition> backWkCdts, string backIceArea, List <ElecCalsWorkCondition> frontWkCdts, string frontIceArea) { var backIceWkCdt = backWkCdts.Where(item => item.Name == "最大覆冰").FirstOrDefault(); double backIceThick = backIceWkCdt == null ? 0 : backIceWkCdt.IceThickness; var frontIceWkCdt = frontWkCdts.Where(item => item.Name == "最大覆冰").FirstOrDefault(); double frontIceThick = frontIceWkCdt == null ? 0 : frontIceWkCdt.IceThickness; Catagory = ElecCalsToolBox.GetCatogory(Volt.ToString()); //BreakIceCoverPer = ElecCalsToolBox.UBlanceR(towerType, backIceThick, frontIceThick, Catagory); BreakIceCoverPer = ElecCalsToolBox.UBlanceR(towerType, Math.Max(backIceThick, frontIceThick), Catagory); //1:考虑断线覆冰率 2:不考虑断线覆冰率 BreakIceCoverPara = (Math.Max(backIceThick, frontIceThick) >= 20) ? 1 : 2; if (backIceThick != frontIceThick) { UnbaIceCoverPerI = 1; UnbaIceCoverPerII = 0; } else { if (backIceArea == "重冰区" || frontIceArea == "重冰区" || backIceArea == "中冰区" || frontIceArea == "中冰区") { UnbaIceCoverPerI = ElecCalsToolBox.IBlanceR1(towerType, Catagory); UnbaIceCoverPerII = ElecCalsToolBox.IBlanceR2(towerType, Catagory); } else { UnbaIceCoverPerI = 1; UnbaIceCoverPerII = 1; } } }
/// <summary> /// 更新悬垂塔的的覆冰率 /// </summary> /// <param name="wkDdts"></param> /// <param name="iceArea"></param> public void UpateIceCovrage(List <ElecCalsWorkCondition> wkDdts, string iceArea) { //在悬垂塔的BreakIceCoverPerII,UnbaIceCoverPerII指的应该是地线开断的情况 var backIceWkCdt = wkDdts.Where(item => item.Name == "最大覆冰").FirstOrDefault(); double iceThick = backIceWkCdt == null ? 0 : backIceWkCdt.IceThickness; Catagory = ElecCalsToolBox.GetCatogory(Volt.ToString()); BreakIceCoverPer = ElecCalsToolBox.UBlanceR("悬垂塔", iceThick, Catagory); BreakIceCoverPerII = ElecCalsToolBox.UBlanceR("耐张塔", iceThick, Catagory); //1:考虑断线覆冰率 2:不考虑断线覆冰率 BreakIceCoverPara = iceThick >= 20 ? 1 : 2; if (iceArea == "轻冰区") { UnbaIceCoverPerI = 1; UnbaIceCoverPerII = 1; } else { UnbaIceCoverPerI = ElecCalsToolBox.IBlanceR2("悬垂塔", Catagory); UnbaIceCoverPerII = ElecCalsToolBox.IBlanceR2("耐张塔", Catagory); } }