交流 複素電力の定義 複素電力は電圧と電流の複素共役で与えられる。 \begin{align}\dot{S} &= \dot{V} \overline{\dot{I}}\\&=V_e e^{j\omega t} I_e e^{\overline{j(\omega... 2022.11.16 交流数学解析電気
C/C++/C# 行列の固有値と行列式の関係 行列の固有値の積は行列式の値と等しくなる。これをEigenで試す。 実行結果 固有値 (16.7075,0) (-0.905741,0) (0.198246,0) 行列式 -3 確かめれば \begin{align}16.7075 \tim... 2022.11.14 C/C++/C#プログラミング代数数学
C/C++/C# Eigenで固有値と固有ベクトルを計算する Eigenで固有値と固有ベクトルを求めるには Eigen::EigenSolver< Eigen::MatrixXf > s(A); とした後、sに対して s.eigenvalues() とすれば固有値を、 s.eigenvectors()... 2022.11.14 C/C++/C#プログラミング代数数学
C/C++/C# トレースとフロベニウスノルムの関係 \(A\)と\(A\)の転地の積のトレースはフロベニウスノルムの二乗と等しくなる。つまり \begin{align}\mathrm{tr} (A A^{T}) = \mathrm{tr} (A^{T} A) = \sum_{i=1}^{n}... 2022.11.14 C/C++/C#プログラミング代数数学
C/C++/C# トレースの性質 トレースにはつぎのようなの性質がある。 \begin{align}\mathrm{tr} {A1} + \mathrm{tr}{A2} &= \mathrm{tr} ( A1+A2 ) \\a\ \mathrm{tr} {A1} &= \m... 2022.11.13 C/C++/C#プログラミング代数数学
C/C++/C# トレースの性質 その1 トレースには次の性質がある。 \begin{align}tr (A+B) = tr A + tr B\end{align} 今回はこれをC++で計算する。 実行結果 1,2,3, 4,5,6, 7,8,9, 10,11,12, 13,14,... 2022.11.11 C/C++/C#プログラミング代数数学
C/C++/C# C++でトレースを求める 正方行列の対角成分の和 \begin{align}tr A = \sum_{i=1}^{n} a_{ii}\end{align} をトレースという。 今回はこれをC++で計算する。 実行結果 1,2,3, 4,5,6, 7,8,9, 15 ... 2022.11.10 C/C++/C#プログラミング代数数学
代数 二次形式の定義 \(n\)個の変数による二次形式は \begin{align}f(x_1,x_2,\cdots,x_{n-1},x_n)=\sum_{i=1,j=1}^{n} c_{i,j} x_i x_j\end{align} \(n=2\)の時は定数\... 2022.11.08 代数数学
代数 行列の特異値 行列\(A\)について、その随伴行列\(A^{*}\)との積\(AA^{*}\)を考える。この時固有値\(\lambda(AA^{*})\)の平方根を \begin{align}\sigma(A)=\sqrt{AA^{*}}\end{ali... 2022.11.07 代数数学
C/C++/C# C++でフロベニウスノルムを計算する フロベニウスノルムは \begin{align}\| A \|_{F}=\sqrt{\sum_{i=1}^{m} \sum_{j=1}^{n} \left |a_{ij} \right |}\end{align} で計算できる。一次元配列に... 2022.11.06 C/C++/C#プログラミング代数数学
C/C++/C# Eigenで内積と外積を計算する ベクトルを定義するときは #include "../Eigen/Dense" をインクルードして Eigen::Vector3d x(1, 2, 3); とすればベクトルが定義できるので、内積と外積を x.dot(y) x.cross(y)... 2022.11.06 C/C++/C#プログラミング代数数学
C/C++/C# Eigenで行列の和・差・積を試す Eigenで行列の和・差・積を試す。「+」、「-」、「*」が使えるので直観的。 ソースコード #include <iostream> #include "../Eigen/core" int main() { int n = 2; Eige... 2022.11.06 C/C++/C#プログラミング代数数学
C/C++/C# Eigenをインストールして使ってみた Eigen(は行列用の科学技術ライブラリで、ヘッダーだけ読み込めば動く。 ダウンロードしたファイルを展開するとEigenというファイルがあるのでそれを適当な場所に置き #include "../Eigen/core" としてcoreにパスを... 2022.11.06 C/C++/C#プログラミング代数数学
C/C++/C# C++で二次方程式の判別式を計算する 二次方程式の解の公式は \begin{align}D=b^2-4ac\end{align} あとは値の範囲で条件分岐すればいい 実行結果 d -> 33 異なる2つの実数解 ソースコード #include <iostream> typede... 2022.11.01 C/C++/C#プログラミング数学解析
C/C++/C# C++で2点間の距離を計算する 三次元平面上に置かれた二点 \(P_{1}(x_{1},y_{1},z_{1}),P_{2}(x_{2},y_{2},z_{2})\) 間の距離\(d(P_{1},P_{2})\)は \begin{align}d(P_{1},P_{2})=... 2022.11.01 C/C++/C#プログラミング幾何数学
python Pythonで複素関数を描画する Pythonで複素関数を描画する。例では \begin{align}f(z)=\frac{1}{z}\end{align} を可視化している。\(z=0\)に特異点があることが確認できる。 実行結果 ソースコード import numpy ... 2022.10.28 pythonプログラミング数学解析
python Pythonでガンマ関数のグラフを作る Pythonでガンマ関数のグラフを描く。mathライブラリを使って描画した。 実行結果 ソースコード import numpy as np import math import matplotlib.pyplot as plt N = 10... 2022.10.28 pythonプログラミング代数数学
C/C++/C# C++のlgammaを使う lgammaは引数のガンマ関数の絶対値の自然対数を返す。 \begin{align}f(x) = \ln |\Gamma(x)|\end{align} 実行結果 inf ソースコード #include<iostream> int main(... 2022.10.27 C/C++/C#プログラミング数学解析
C/C++/C# C++でラマヌジャンの公式を使った円周率計算をする 詳しくはここ C++で書く。Pythonとは違い大きな数を扱えないので注意。 #include<iostream> #include<math.h> int factorial(int); int main() { int N = 1; d... 2022.10.27 C/C++/C#プログラミング幾何数学
C/C++/C# C++で内積を計算する 内積についてはここ。 cinで数値を入力した後、各ベクトルの数値を配列に入れて内積を計算する。 結果 データ数を入力 ->3 x0->2 x1->4 x2->3 w0->1 w1->3 w2->5 2×1=2 4×3=12 3×5=15 結... 2022.10.22 C/C++/C#プログラミング幾何数学