Esempio n. 1
0
function polyregression($x, $y, $n)
{
    $m = array();
    for ($i = 0; $i < count($x); $i++) {
        $m[$i][0] = 1;
        for ($j = 1; $j <= $n; $j++) {
            $m[$i][$j] = $m[$i][$j - 1] * $x[$i];
        }
    }
    $m = matrixsolve(matrixprod(matrixtranspose($m), $m), matrixprod(matrixtranspose($m), matrix($y, count($y), 1)));
    $m = matrixtranspose($m);
    return $m[0];
}
Esempio n. 2
0
function veccomparesamespan($a, $b)
{
    if (count($a) != count($b)) {
        return false;
    }
    include_once "matrix.php";
    if ($b === null) {
        return 0;
    }
    foreach ($b as $k => $bv) {
        if (is_array($bv)) {
            continue;
        }
        if ($bv[0] == '[') {
            //in matrix notation
            $b[$k] = explode(',', str_replace(array('[', ']', '(', ')'), '', $bv));
        } else {
            //in compressed notation
            $b[$k] = explode('|', $bv);
        }
    }
    foreach ($a as $av) {
        $b[] = $av;
    }
    $s = matrixreduce(matrixtranspose($b), true);
    $n = matrixnumsolutions($s, count($a));
    return count($a) == $n;
}