Exemplo n.º 1
0
 /// @param r double
 /// @return DhbFunctionEvaluation.PolynomialFunction
 public PolynomialFunction[] DivideWithRemainder(PolynomialFunction p)
 {
     PolynomialFunction[] answer = new PolynomialFunction[2];
     int m = this.Degree;
     int n = p.Degree;
     if (m < n)
     {
         answer[0] = new PolynomialFunction(new double[] { 0 });
         answer[1] = p;
         return answer;
     }
     double[] quotient = new double[m - n + 1];
     double[] coef = new double[m + 1];
     for (int k = 0; k <= m; k++)
         coef[k] = _coefficients[k];
     double norm = 1 / p[n];
     for (int k = m - n; k >= 0; k--)
     {
         quotient[k] = coef[n + k] * norm;
         for (int j = n + k - 1; j >= k; j--)
             coef[j] -= quotient[k] * p[j - k];
     }
     double[] remainder = new double[n];
     for (int k = 0; k < n; k++)
         remainder[k] = coef[k];
     answer[0] = new PolynomialFunction(quotient);
     answer[1] = new PolynomialFunction(remainder);
     return answer;
 }
Exemplo n.º 2
0
 static NormalDistribution()
 {
     double[] coeffs = { 0.31938153, -0.356563782, 1.781477937,
                                 -1.821255978, 1.330274429};
     _errorFunctionSeries = new PolynomialFunction(coeffs);
 }