/// <summary> /// Get constant values /// </summary> public void CalculateCollocationPointsConstants() { foreach (var area in this.Areas) { double denominator1 = InitialCondition.denominator1(area.configurationData.GetDiffusionCoefficient(), area.configurationData.iterationProcess.TimeStep); double denominator2 = InitialCondition.denominator2(area.configurationData.GetDiffusionCoefficient(), area.configurationData.iterationProcess.TimeStep); foreach (var segment in area.Segments) { Parallel.ForEach(segment.CollocationPoints, (collPoint) => { foreach (var innerSurface in area.Surfaces) { foreach (var innerSurfaceIntegrationPoint in innerSurface.InitialConditionSurfaceIntegrationPoints) { if (area.configurationData.arePropertiesTimeDependent()) { denominator1 = InitialCondition.denominator1(area.configurationData.GetDiffusionCoefficient(innerSurfaceIntegrationPoint.TemperatureValue), area.configurationData.iterationProcess.TimeStep); denominator2 = InitialCondition.denominator2(area.configurationData.GetDiffusionCoefficient(innerSurfaceIntegrationPoint.TemperatureValue), area.configurationData.iterationProcess.TimeStep); } collPoint.SurfaceIntegrationPointsInitialConditionConstantValues.Add(InitialCondition.CalculateSiglePointFunctionValue(collPoint.RealPosition, denominator1, denominator2, innerSurfaceIntegrationPoint)); } } }); } } }