lixiaojun
2024-11-30 cb12c35c7af4350b0f38b6d90a15d8bd9796b8c5
Hydro/Yw.EPAnet.Calcu.Core/03-calcu/00-core/NetworkCalcuExtensions.cs
@@ -21,7 +21,7 @@
                return result;
            }
            var linkdict= network.GetAllLinks().ToDictionary(p => p.Id);
            var linkdict = network.GetAllLinks().ToDictionary(p => p.Id);
            var nodedict = network.GetAllNodes().ToDictionary(p => p.Id);
            //获取系统临时文件目录,创建inp临时文件
@@ -97,7 +97,7 @@
                }
                result.NodeList.Add(calcuNode);
            }
            var nodeResultDict= result.NodeList.ToDictionary(p => p.Id);
            var nodeResultDict = result.NodeList.ToDictionary(p => p.Id);
            for (int i = 1; i <= linkCount; i++)
            {
                epanet.getlinkid(i, sb);
@@ -131,18 +131,18 @@
                        double minorloss1 = p.StartMinorloss * Math.Pow(calcuLink.Velocity, 2) / 2 / 9.81;
                        double minorloss2 = p.EndMinorloss * Math.Pow(calcuLink.Velocity, 2) / 2 / 9.81;
                        double minorloss = p.MinorLoss * Math.Pow(calcuLink.Velocity, 2) / 2 / 9.81;
                        calcuLink.Headloss-= minorloss1 + minorloss2;
                        calcuLink.Headloss -= minorloss1 + minorloss2;
                        calcuLink.MinorLoss = minorloss;
                        calcuLink.FrictionLoss = calcuLink.Headloss- minorloss;
                        calcuLink.FrictionLoss = calcuLink.Headloss - minorloss;
                        //if (nodedict[p.StartNode.Id] is Elbow)
                        {
                            nodeResultDict[p.StartNode.Id].Minorloss += minorloss1;
                            nodeResultDict[p.StartNode.Id].MinorLoss += minorloss1;
                        }
                        //if (nodedict[p.EndNode.Id] is Elbow)
                        {
                            nodeResultDict[p.EndNode.Id].Minorloss += minorloss2;
                            nodeResultDict[p.EndNode.Id].MinorLoss += minorloss2;
                        }
                    }
                }
                result.LinkList.Add(calcuLink);
@@ -272,7 +272,7 @@
                                        branchPipe.StartMinorloss = minorLoss.Value;
                                    else
                                        branchPipe.EndMinorloss = minorLoss.Value;
                                }
                            }
                        }
@@ -294,7 +294,7 @@
                    bool isNext = prevLinks.Count < nextLinks.Count;
                    var branchLinks = isNext ? nextLinks:prevLinks  ;
                    var branchLinks = isNext ? nextLinks : prevLinks;
                    foreach (var branchLink in branchLinks)
                    {
                        var pipe = branchLink as Pipe;
@@ -308,7 +308,7 @@
                            {
                                pipe.EndMinorloss = fourlink.MinorLoss.Value;
                            }
                        }
                    }
                }