| | |
| | | valveSb.AppendLine(";ID Node1 Node2 Diameter Type Setting MinorLoss "); |
| | | network.Valves?.ForEach(x => |
| | | { |
| | | valveSb.AppendLine($"{x.Id}\t{x.StartNode.Id}\t{x.EndNode.Id}\t{x.Diameter:F4}\t{x.ValveType}\t{x.ValveSetting}\t{x.MinorLoss:F4}\t;\t");// + $"0"); |
| | | string settings; |
| | | if (x.LinkStatus == ValveStatus.None ) |
| | | { |
| | | settings = x.ValveSetting; |
| | | } |
| | | else |
| | | { |
| | | settings = "Undefined"; |
| | | } |
| | | if (string.IsNullOrEmpty(settings)) settings = "Undefined"; |
| | | valveSb.AppendLine($"{x.Id}\t{x.StartNode.Id}\t{x.EndNode.Id}\t{x.Diameter:F4}\t{x.ValveType}\t{settings}\t{x.MinorLoss:F4}\t;\t");// + $"0"); |
| | | if (!string.IsNullOrEmpty(x.LinkStatus)) |
| | | { |
| | | statusSb.AppendLine(x.Id + "\t" + x.LinkStatus); |
| | |
| | | if (type == GPV) |
| | | { |
| | | c = findcurve(net, parser->Tok[5]); |
| | | /* 奇怪的方法,为什么要进行openflag的判断呢? |
| | | int d=0; |
| | | EN_getcurveindex(pr, parser->Tok[5], &d); */ |
| | | |
| | | if (c == 0) return setError(parser, 5, 206); |
| | | /* 奇怪的方法,为什么要进行openflag的判断呢? |
| | | int d=0; |
| | | EN_getcurveindex(pr, parser->Tok[5], &d); */ |
| | | /*[Cloudflight修改]2024-12-24 |
| | | GPV阀门的曲线设置,如果没有设置曲线,那么就将状态设置为OPEN |
| | | if (c == 0) return setError(parser, 5, 206); |
| | | */ |
| | | if (c == 0) status = OPEN;//return setError(parser, 5, 206); |
| | | setting = c; |
| | | net->Curve[c].Type = HLOSS_CURVE; |
| | | status = OPEN; |
| | | //status = OPEN; |
| | | } |
| | | else if (!getfloat(parser->Tok[5], &setting)) return setError(parser, 5, 202); |
| | | if (n >= 7 && !getfloat(parser->Tok[6], &lcoeff)) return setError(parser, 6, 202); |