MathPHP\NumericalAnalysis\Interpolation\NevillesMethodTest::testPolynomialAgrees PHP Метод

testPolynomialAgrees() публичный Метод

    public function testPolynomialAgrees()
    {
        $points = [[0, 0], [1, 5], [3, 2], [7, 10], [10, -4]];
        $roundoff = 1.0E-7;
        // round off error
        // Assure p(0) = 0 agrees with input [0, 0]
        $expected = 0;
        $target = 0;
        $actual = NevillesMethod::interpolate($target, $points);
        $this->assertEquals($expected, $actual, '', +$roundoff);
        // Assure p(1) = 5 agrees with input [1, 5]
        $expected = 5;
        $target = 1;
        $actual = NevillesMethod::interpolate($target, $points);
        $this->assertEquals($expected, $actual, '', +$roundoff);
        // Assure p(3) = 2 agrees with input [3, 2]
        $expected = 2;
        $target = 3;
        $actual = NevillesMethod::interpolate($target, $points);
        $this->assertEquals($expected, $actual, '', +$roundoff);
        // Assure p(7) = 10 agrees with input [7, 10]
        $expected = 10;
        $target = 7;
        $actual = NevillesMethod::interpolate($target, $points);
        $this->assertEquals($expected, $actual, '', +$roundoff);
        // Assure p(10) = -4 agrees with input [10, -4]
        $expected = -4;
        $target = 10;
        $actual = NevillesMethod::interpolate($target, $points);
        $this->assertEquals($expected, $actual, '', +$roundoff);
    }