/** * transpose * * Tranpose matrix * @return Matrix Transposed matrix */ public function transpose() { $R = new PHPExcel_Shared_JAMA_Matrix($this->n, $this->m); for ($i = 0; $i < $this->m; ++$i) { for ($j = 0; $j < $this->n; ++$j) { $R->set($j, $i, $this->A[$i][$j]); } } return $R; }
/** * diagonal * * Generate a diagonal matrix * * @param int $m Row dimension * @param int $n Column dimension * @param mixed $c Diagonal value * * @return Matrix Diagonal matrix */ public function diagonal($m = null, $n = null, $c = 1) { $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); for ($i = 0; $i < $m; ++$i) { $R->set($i, $i, $c); } return $R; }