public void InitProcess(CalculationTask calculationTask, INetCreator netcreater) { NetMap = netcreater.CreateNet(); _calculationTask = calculationTask; SelectAB(); _percalationResult = new List <int>(_calculationTask.CountOfIteration); }
public void InitProcess(CalculationTask calculationTask, INetCreator netcreater) { _netMap = netcreater.CreateNet(); UseOnlyActiveNodes(); _calculationTask = calculationTask; SelectAb(); _percalationResult = new List <int>(_calculationTask.CountOfIteration); _random = new Random(); }
public Node[] CreateNet() { var net = _netCreator.CreateNet(); var linkcount = net.Sum(node => node.NearestNodes.Length); var linkChangeStep = (_targetAverageLinkCount * net.Length - linkcount) / 10; if (linkChangeStep < 0) { while (GrafCalculator.GetAvarageLinkCount(net) > _targetAverageLinkCount) { RemoveLinks(net, Math.Abs((int)linkChangeStep)); } } //if (linkChangeStep > 0) //{ // while (GrafCalculator.GetAvarageLinkCount(net) < _targetAverageLinkCount) // { // AddLinks(net, (int)linkChangeStep); // } //} return(net); }