private void ArrangeColumns() { this.Columns = new List <EventColumn>(); this.eventParts.Sort(new EventPartComparerCustom(this.SortDirections)); foreach (EventPart current in this.eventParts) { current.EvColumn = null; } this.CreateColumn(); foreach (EventPart current2 in this.eventParts) { foreach (EventColumn current3 in this.Columns) { if (current3.CanAdd(current2)) { current3.Add(current2); break; } } if (current2.EvColumn == null) { EventColumn eventColumn = this.CreateColumn(); eventColumn.Add(current2); } } }
private void _Integrate(int part) { Result = (-func(a) + func(b)) / 2; int partsSize = (int)quantity / parts; int ost = quantity - partsSize * parts; int st = part * partsSize + ((part < ost) ? part : ost); int fn = (part + 1) * partsSize + ((part + 1 < ost) ? part : (ost - 1)); double s = 0; for (int i = st; i <= fn; i++) { var f = func(a + h * (i + (1 / (double)2))); s += f; donePercent += 1; EventProgress?.Invoke(donePercent); EventColumn?.Invoke((a + h * (i + (1 / (double)2))), f); } Monitor.Enter(res); try { Result += s; } finally { Monitor.Exit(res); } }
private EventColumn CreateColumn() { EventColumn eventColumn = new EventColumn(); this.Columns.Add(eventColumn); eventColumn.Block = this; return(eventColumn); }
private void _Integrate(int part) { Result = (-func(a) + func(b)) / 2; int partsSize = (int)q / parts; int ost = q - partsSize * parts; int st = part * partsSize; if (part < ost) { st += part; } else { st += ost; } int fn = (part + 1) * partsSize; if (part + 1 < ost) { fn += part; } else { fn += ost - 1; } double s = 0; for (int i = st; i <= fn; i++) { var f = func(a + h * (i + (1 / (double)2))); s += f; dP += 1; EventProgress?.Invoke(dP); EventColumn?.Invoke((a + h * (i + (1 / (double)2))), f); } Monitor.Enter(res); try { Result += s; } finally { Monitor.Exit(res); } }