(PECL lapack >= 0.1.0)
Lapack::leastSquaresBySVD — Solve the linear least squares problem, using SVD
$a
, array $b
)Solve the linear least squares problem, find min x in || B - Ax || Returns an array representing x. Expects arrays of arrays, and will return an array of arrays in the dimension B num cols x A num cols. Uses SVD with a divide and conquer algorithm.
a
Matrix A
b
Matrix B
Returns the solution as an array of arrays.
Пример #1 Using Lapack::leastSquaresBySVD():
<?php
$a = array(
array( 1.44, -7.84, -4.39, 4.53),
array(-9.96, -0.28, -3.24, 3.83),
array(-7.55, 3.24, 6.27, -6.64),
array( 8.34, 8.09, 5.28, 2.06),
array( 7.08, 2.52, 0.74, -2.47),
array(-5.45, -5.70, -1.19, 4.70),
);
$b = array(
array( 8.58, 9.35),
array( 8.26, -4.43),
array( 8.48, -0.70),
array(-5.28, -0.26),
array( 5.72, -7.36),
array( 8.93, -2.52),
);
$result = Lapack::leastSquaresBySVD($a, $b);
?>