/** * @return Matrix */ public function upper() : Matrix { return $this->decomposition->upper(false); }
public function testGetUpper() { $matrix = new Matrix([[2, 0, 2, 0.6], [3, 3, 4, -2], [5, 5, 4, 2], [-1, -2, 3.4, -1]]); $upper = $matrix->upper(true); static::assertEquals(1, $upper->get(0, 0)); static::assertEquals(0, $upper->get(0, 1)); static::assertEquals(2, $upper->get(0, 2)); static::assertEquals(0.6, $upper->get(0, 3)); static::assertEquals(0, $upper->get(1, 0)); static::assertEquals(1, $upper->get(1, 1)); static::assertEquals(4, $upper->get(1, 2)); static::assertEquals(-2, $upper->get(1, 3)); static::assertEquals(0, $upper->get(2, 0)); static::assertEquals(0, $upper->get(2, 1)); static::assertEquals(1, $upper->get(2, 2)); static::assertEquals(2, $upper->get(2, 3)); static::assertEquals(0, $upper->get(3, 0)); static::assertEquals(0, $upper->get(3, 1)); static::assertEquals(0, $upper->get(3, 2)); static::assertEquals(1, $upper->get(3, 3)); }