SquareMatrix

_Y_S

License: MIT License

Fork
0
Fav
0
View
228
  • Play

Fullscreen

Smart Phone

  • Readme
  • ES6 254 lines
  • HTML 98 lines
  • CSS 24 lines

SquareMatrix Object

正方行列オブジェクト (Array-like Object)

おそらくArrayのメソッドを継承しています。

アルゴリズム参考


生成

エイリアス: SquareMatrix() = SqMtx()

n x n行列の生成

引数に自然数を入れてください。すべて0が振られます。

matrix = new SquareMatrix(n);

任意の行列の生成

引数に2次元配列を入れてください。

matrix = new SquareMatrix([ [00, 01, 02, ...], [10, 11, 12, ...], ... ]);


プロパティ

すべて(共通)

次のプロパティは Number (数字)を返します。

  • 要素(ij列): matrix[i][j]
  • 次元: matrix.length
  • 行列式: matrix.det // ただし後述の逆行列は det を持ちません。

正則な1次オブジェクトのみ

newで生成されたオブジェクトと、後述のメソッドで生成されたオブジェクトにのみ有効です。

次のプロパティは(2次の)SquareMatrixオブジェクト を返します。(つまり同じプロパティは持ちません。)

  • 下三角行列: matrix.L
  • 上三角行列: matrix.U
  • 逆行列: matrix.inverse

これらのプロパティで得たオブジェクトに同じプロパティを与えるには後述の setProp() メソッドを使用します。


メソッド

メソッドチェーン可

次のメソッドは this を返します。

  • 初期化(零行列化)
    • matrix.zero(); // 0で埋める
    • matrix.fill(n); // nで埋める
  • 単位行列化: matrix.identify();
  • スカラー倍: matrix.multiply(n); // 各要素がn倍
  • 要素操作
    • matrix.divide(n); // 各要素が1/n倍
    • matrix.add(n); //各要素に+n
    • matrix.subtract(n); //各要素から-n
  • プロパティ設定: matrix.setProp();

次のメソッドは新しい SquareMatrixオブジェクト を返します。

  • 複製: matrix.copy();
  • 転置: matrix.transpose(); // tA
  • 積: SquareMatrix.product(matrixA, matrixB); // AB
  • 和: SquareMatrix.sum(matrixA, matrixB); // A+B

メソッドチェーン不可

次のメソッドは Arrayオブジェクト (配列)を返します。

  • n元1次方程式の解: matrix.solve(array); // arrayはn次元列ベクトルを表す配列。ただし n = matrix.length。

次のメソッドは String(文字列)を返します。

  • 文字列化: matrix.toString(separator); // separatorは列の区切り文字(既定値は半角空白)。行の区切りは改行。

次のメソッドは HTMLTableElement を返します。

  • テーブル化: matrix.toTable(); // class="matrix-square"

  • SquareMatrix
  • SquareMatrix

play

Complete!

Description What kind of game?

Control Device

jsdo.it websocket controller

Mouse

keyboard

smartphone

Fullscreen

_Y_S

Author

Default Panel

Size

  • Width: px
  • Height: px

code

QR Code

Discussion

Questions on this code?

Tags