ماتریس

مجتبی پاکزاد PHP-ML 0.6.2 در حال تکمیل رایگان

این کلاس آرایه‌های PHP را به ماتریس‌های ریاضی تبدیل می‌کند.

ایجاد ماتریس

برای ساخت یک ماتریس از آرایه‌های ساده استفاده کنید:

$matrix = new Matrix([
    [3, 3, 3],
    [4, 2, 1],
    [5, 6, 7],
]);

با استفاده از متد fromFlatArray کلاس Matrix نیز می‌توانید، ماتریس (تک بعدی) ایجاد کنید:

$flatArray = [1, 2, 3, 4];
$matrix = Matrix::fromFlatArray($flatArray);

داده‌های ماتریس

مثال زیر حاوی متدهای لازم برای خواندن داده‌های ماتریس است:

$matrix->toArray(); // cast matrix to PHP array
$matrix->getRows(); // rows count
$matrix->getColumns(); // columns count
$matrix->getColumnValues($column=4); // get values from given column

دترمینان

درباره دترمینان ماتریس بیشتر بخوانید.

$matrix = new Matrix([
    [3, 3, 3],
    [4, 2, 1],
    [5, 6, 7],
]);

$matrix->getDeterminant();
// return -3

ترانهاده

درباره ترانهاده ماتریس بیشتر بخوانید.

$matrix->transpose();
// return new Matrix 

ضرب

ضرب یک ماتریس در ماتریس دیگر:

$matrix1 = new Matrix([
    [1, 2, 3],
    [4, 5, 6],
]);

$matrix2 = new Matrix([
    [7, 8],
    [9, 10],
    [11, 12],
]);

$matrix1->multiply($matrix2);

// result $product = [
//  [58, 64],
//  [139, 154],
//];

تقسیم عددی

می‌توانید ماتریس را بر مقادیر عددی تقسیم کنید:

$matrix->divideByScalar(2);

معکوس ماتریس یا ماتریس وارون

درباره وارون پذیری ماتریس بیشتر بخوانید.

$matrix = new Matrix([
    [3, 4, 2],
    [4, 5, 5],
    [1, 1, 1],
]);

$matrix->inverse();

// result $inverseMatrix = [
//    [0, -1, 5],
//    [1 / 2, 1 / 2, -7 / 2],
//    [-1 / 2, 1 / 2, -1 / 2],
//];

حذف اعضا

مثال زیر نحوه حذف کردن ردیف و ستون خاصی از ماتریس را نشان می‌دهد:

$matrix = new Matrix([
    [3, 4, 2],
    [4, 5, 5],
    [1, 1, 1],
]);

$matrix->crossOut(1, 1)

// result $crossOuted = [
//    [3, 2],
//    [1, 1],
//];
منبع
Matrix