public FundamentalSolutionDevidedTastData(IParametrizedCurve outerCurve)
 {
     _outerCurve       = outerCurve;
     OnCrackCurveValue = (Point p) => FundamentalSolution(p);
     OnOuterCurveValue = (p) => FundamentalSolution(p);
     OnTestCurveValue  = (Point p) => FundamentalSolution(p);
 }
        private IParametrizedCurve BuildNewCurve(IParametrizedCurve currentCurve, IList <double> xCurveCorrection, IList <double> yCurveCorrection)
        {
            var curve = currentCurve as ApproxParametrizedCurve;

            curve._xApproxPolinom.Add(xCurveCorrection);
            curve._yApproxPolinom.Add(yCurveCorrection);
            return(curve);
        }
 private double[] GetCurveDerivativeValues(IParametrizedCurve curve, double[] points, bool onX)
 {
     double[] values = new double[_state.PointsNumber];
     for (int i = 0; i < values.Length; i++)
     {
         values[i] = onX ? curve.GetDerivetiveX(points[i]) : curve.GetDerivetiveY(points[i]);
     }
     return(values);
 }