����JFIF��x�x����'
Server IP : 66.29.137.217 / Your IP : 3.16.10.2 Web Server : LiteSpeed System : Linux premium294.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : gltevjme ( 1095) PHP Version : 7.0.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/gltevjme/cbt.bofirm.com/vendor/markbaker/matrix/classes/src/Operators/ |
Upload File : |
<?php namespace Matrix\Operators; use Matrix\Matrix; use Matrix\Exception; abstract class Operator { /** * Stored internally as a 2-dimension array of values * * @property mixed[][] $matrix **/ protected $matrix; /** * Number of rows in the matrix * * @property integer $rows **/ protected $rows; /** * Number of columns in the matrix * * @property integer $columns **/ protected $columns; /** * Create an new handler object for the operation * * @param Matrix $matrix The base Matrix object on which the operation will be performed */ public function __construct(Matrix $matrix) { $this->rows = $matrix->rows; $this->columns = $matrix->columns; $this->matrix = $matrix->toArray(); } /** * Compare the dimensions of the matrices being operated on to see if they are valid for addition/subtraction * * @param Matrix $matrix The second Matrix object on which the operation will be performed * @throws Exception */ protected function validateMatchingDimensions(Matrix $matrix): void { if (($this->rows != $matrix->rows) || ($this->columns != $matrix->columns)) { throw new Exception('Matrices have mismatched dimensions'); } } /** * Compare the dimensions of the matrices being operated on to see if they are valid for multiplication/division * * @param Matrix $matrix The second Matrix object on which the operation will be performed * @throws Exception */ protected function validateReflectingDimensions(Matrix $matrix): void { if ($this->columns != $matrix->rows) { throw new Exception('Matrices have mismatched dimensions'); } } /** * Return the result of the operation * * @return Matrix */ public function result(): Matrix { return new Matrix($this->matrix); } }