ningshuxia
2022-12-12 e81ca048ef4e9345e904b74ffffd3e8413d18a7e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace IStation.Calculation.Epanet
{
    /// <summary>
    /// 方法3
    /// </summary>
    public interface IGetPumpStatusByFlowAndPress
    {
        /// <summary>
        /// 初始化文件
        /// </summary>
        /// <param name="fileName"></param>
        /// <returns>初始化结果,返回null代表成功</returns>
        public string Initial(string fileName);
 
        /// <summary>
        ///  获取开泵组合最优能耗信息
        /// </summary>
        /// <param name="nodes">模型节点入参列表</param>
        /// <param name="openPumpCombineIds">开泵组合列表</param>
        /// <param name="rangeMin">最小范围</param>
        /// <param name="rangeMax">最大范围</param>
        /// <param name="populationSize">族群大小</param>
        /// <param name="iterations">迭代次数</param>
        /// <param name="accuracy">精准度</param>
        /// <returns></returns>
        public List<EpanetScheme> GetPumpStatusByFlowAndPress(List<EpanetNode> nodes, List<List<string>> openPumpCombineIds, double rangeMin = 0, double rangeMax = 1, int populationSize = 40, int iterations = 20, double accuracy = 0.1);
 
    }
}