ある N×N 行列 A があったとき、A と積をとると N×N 単位行列 になる行列 X のことを、A の逆行列と呼ぶ。 全ての N×N 行列に逆行列が存在するわけではない。逆行列が存在する行列の事を特に正則行列と呼ぶ。 一般には行列の積は可換ではないが、正則行列とその逆行列の積は交換しても単位行列になる。
1~64の連続する自然数によって構成された8次プレーン超格子体に内包される2×2の格子ブロックを2次の正方行列とみなしましょう。その上で、これらの一つ正方行列について逆行列を求めてみることにします。
結論 3x3 も 4x4 も余因子展開で逆行列を求めると速い。 4x4のDirectXの行列計算よりかなり速いのは驚いた。 コード // ConsoleInverseTest.cpp : This file contains the 'main' function. Program execution begins and ends there. // #include <iostream> #include <random> #include <chrono> #include <DirectXMath.h> // DirectXMath using namespace std::chron…
エクセル等の表計算ソフトの逆行列関数を使って4点を通る球面を求める。(3次元空間内) (小ミス訂正済) 逆行列関数を参考にしてセルと簡単な演算子のみの数式を組み立ててみた。 エクセル グーグルドライブのスプレッドシート リブレオフィスカルク 計算元 p1=(x1, y1, z1) p2=(x2, y2, z2) p3=(x3, y3, z3) p4=(x4, y4, z4) 「直答(ちょくとう)」は「直接計算して答えを出した」的な意味合いのつもり。 行列計算 定数列不使用 検算 直答 x9:x12= {=MMULT(MMULT(X1:Z4,{1,0,0,0;0,1,0,0;0,0,1,0})+…
エクセル等の表計算ソフトの逆行列関数を使って3点を通る円を求める。(2次元平面内) 逆行列関数を参考にしてセルと簡単な演算子のみの数式を組み立ててみた。 エクセル グーグルドライブのスプレッドシート リブレオフィスカルク 計算元 p1=(x1, y1) p2=(x2, y2) p3=(x3, y3) 「直答(ちょくとう)」は初めて使う言葉。作業セル等を使わずに「直接計算して答えを出した」的な意味合いのつもり。 行列計算 定数列不使用 検算 直答 x9:x11= {=MMULT(MMULT(X1:Y3,{1,0,0;0,1,0})+{0,0,1;0,0,1;0,0,1},X15:X17)+MMU…
エクセル等の表計算ソフトの逆行列関数を使って4点を通る球面を求める。(3次元空間内) 「3点を通る円(2次元平面内)その2」と同じく標準形の方程式を元にする。 球の中心のx座標=a、y座標=b、z座標=c、球の半径=rとすると球の式は (x-a)^2+(y-b)^2+(z-c)^2=r^2 (標準形) となる。展開して x^2-2ax+a^2+y^2-2by+b^2+z^2-2cz+c^2=r^2 左辺に変数(a,b,c,rを含む項)を、右辺に定数(a,b,c,rを含まない項)を配置して (変数と定数の区別がややこしい) 2a*x+2b*y+2c*z+r^2-a^2-b^2-c^2=x^2+y…
エクセル等の表計算ソフトの逆行列関数を使って3点を通る円を求める。(2次元平面内) 3点を通る円(2次元平面内)の余談2の設定でリベンジ。 円の中心のx座標=a、円の中心のy座標=b、円の半径=rとすると円の式は (x-a)^2+(y-b)^2=r^2 (標準形) となる。展開して x^2-2ax+a^2+y^2-2by+b^2=r^2 左辺に変数(a,b,rを含む項)を、右辺に定数(a,b,rを含まない項)を配置して (変数と定数の区別がややこしい) 2a*x+2b*y+r^2-a^2-b^2=x^2+y^2 となる。3点を p1(x1,y1)、p2(x2,y2)、p3(x3,y3) とする…
エクセル等の表計算ソフトの逆行列関数を使って4点を通る球面を求める。(3次元空間内) 「3点を通る円(2次元平面内)」と全く同じ方法で求める。 まず求める球面の式を x^2+y^2+z^2+l*x+m*y+n*z+o=0 (一般形) とすると l*x+m*y+n*z+o=-(x^2+y^2+z^2) なので4点を p1(x1,y1,z1)、p2(x2,y2,z2)、p3(x3,y3,z3)、p4(x4,y4,z4) (表のD4:F7) とすると l*x1+m*y1+n*z1+o=-(x1^2+y1^2+z1^2) l*x2+m*y2+n*z2+o=-(x2^2+y2^2+z2^2) l*x3+…
エクセル等の表計算ソフトの逆行列関数を使って3点を通る円を求める。(2次元平面内) まず求める円の式を x^2+y^2+l*x+m*y+n=0 (一般形) とすると l*x+m*y+n=-(x^2+y^2) なので3点を p1(x1,y1)、p2(x2,y2)、p3(x3,y3) (表のD4:E6) とすると l*x1+m*y1+n=-(x1^2+y1^2) l*x2+m*y2+n=-(x2^2+y2^2) l*x3+m*y3+n=-(x3^2+y3^2) となる。行列の式で書けば 図 (libreofficecalcでmathをオブジェクトとして使用)(r070416新画像に変更) 図 とな…
3点を通る2次関数・2次曲線・2次の多項式 4点を通る3次関数・3次曲線・3次の多項式 5点を通る4次関数・4次曲線・4次の多項式 6点を通る5次関数・5次曲線・5次の多項式 7点を通る6次関数・6次曲線・6次の多項式 8点を通る7次関数・7次曲線・7次の多項式 9点を通る8次関数・8次曲線・8次の多項式 10点を通る9次関数・9次曲線・9次の多項式 … n+1点を通るn次関数・n次曲線・n次の多項式 表画像 linest関数で多項式の係数を求めてseriessum関数でその係数とxからyを求める。 任意の点10個(p1~p10)を用意してD4:D13にそのy座標を、F4:F13にそのx座標を…
問題 未知数を, , とする連立方程式が与えられるとき、その連立方程式を行列の形式で書き直すことができる。 このとき、係数行列の逆行列およびこの方程式の解として正しいものはどれか? 、 、 、 、 解き方 未知数を, , とする連立方程式は、次のように行列の形式で書き直すことができます。 したがって、本問の行列、ベクトル、ベクトルは、 となります。逆行列は行列と次の関係にあります。 ここで、は単位行列を表します。 また、ベクトルはの解であることから、次式により求めることができます。 それでは、選択肢を調べていきます。a:が単位行列にならないので、誤り。 実際にを計算すると、次のようになります。…