ホーム
おまかせ表示
ログイン
設定
MonoBookについて
免責事項
MonoBook
検索
「
4x4行列で3x3行列を代用する
」を編集中
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
[[プログラミング言語]]に標準装備されている算数系の[[ライブラリ]]には3x3行列が存在しないことが多い。これは3x3行列は4x4行列で代用できるためである。 == 基本形 == 「外側を0で埋めて、右下に1」が基本形である。 <math> \begin{bmatrix} m11 & m12 & m13 & 0 \\ m21 & m22 & m23 & 0 \\ m31 & m32 & m33 & 0 \\ 0 & 0 & 0 & 1 \\ \end{bmatrix} </math> == 速度 == 各種演算時の計算量的には4x4行列より3x3行列の方が圧倒的に有利に思える。 普通に考えれば最小16回の演算より最小9回の演算の方が速いのは当たり前である。 しかし[[プログラミング言語]](とくに[[インタプリタ]]系)に標準装備されている算数系ライブラリは[[CPU]]の[[SIMD]]を直叩きしているものが多く、自作した3x3行列ライブラリではどうやっても標準搭載の4x4行列に勝てないことも多い。 極端な[[インタプリタ]]系の実行環境では「floatとfloatの乗算よりmatrix4x4とmatrix4x4の乗算の方が速い」「new float()している間にmatrix4x4の生成と乗算が終わっていた」などという意味不明なものすら存在する。 [[category: 行列]]
編集内容の要約:
MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MonoBook:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の確認用の質問に回答してください (
詳細
):
1たす1は?(全角で入力してください)
キャンセル
編集の仕方
(新しいウィンドウで開きます)