Skip to content

Commit

Permalink
Merge pull request #393 from k-kimura/add_document_complex_matrix_fun…
Browse files Browse the repository at this point in the history
…ctions

[jmatrix.tex, matrix.tex] Add document for complex matrix functions
  • Loading branch information
k-okada authored Feb 14, 2020
2 parents 29a2e36 + b75f529 commit 258e7a2
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 2 deletions.
27 changes: 26 additions & 1 deletion doc/jlatex/jmatrix.tex
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,10 @@ \subsection{行列と変換}
\funcdesc{m*}{matrix1 matrix2 \&optional result}{
{\em matrix1}と{\em matrix2}の積を返す。}

\funcdesc{m*-complex}{cmatrix1 cmatrix2}{
{\em cmatrix1}と{\em cmatrix2}の積を返す。\\
{\em cmatrix} = (list {\em matrixRe} {\em matrixIm}) = {\em matrixRe} + {\em matrixIm}*j~~(j: 虚数単位)。}

\funcdesc{transpose}{matrix \&optional result}{
{\em matrix}の転置行列を返す。すなわち、{\em matrix}の列と行を入れ替える。}

Expand Down Expand Up @@ -271,12 +275,33 @@ \subsection{LU分解}
\funcdesc{simultaneous-equation}{mat vec}{
係数が{\em mat}で、定数が{\em vec}で記述される1次連立方程式を解く。}

\funcdesc{solve-non-zero-vector-from-det0-matrix}{mat}{
行列式が0の行列{\em mat}から非ゼロベクトル{\em v}を解く。ここで、{\em mat}*{\em v}={\em O}であり、det({\em mat})=0である。\\
{\em mat}はdet({\em mat})=0を満たす実正方行列(すなわち、{\em mat}の逆行列は存在しない)。}

\funcdesc{inverse-matrix}{mat}{
正方行列{\em mat}の逆行列を求める。}
実正方行列{\em mat}の逆行列を求める。}

\funcdesc{inverse-matrix-complex}{cmat}{
複素正方行列{\em cmat}の逆行列を求める。\\
{\em cmat} = (list {\em matRe} {\em matIm}) = {\em matRe} + {\em matIm}*j~~(j: 虚数単位)。}

\funcdesc{pseudo-inverse}{mat}{
特異値分解を用いて擬似逆行列を求める。}

\funcdesc{qr-decompose}{mat}{
実正方行列{\em mat}の複素数の固有値を並べたfloat-vectorのリスト(list {\em lambdaRe} {\em lambdaIm})を求める。}

\funcdesc{eigen-decompose}{mat}{
実正方行列{\em mat}の固有値分解(list {\em lambda} {\em V})を求める。
{\em lambda}は固有値(降順)を並べたfloat-vectorであり、{\em V}は対応する固有ベクトルを並べたmatrixである。
{\em mat}*{\em V} = {\em V}*diag({\em lambda})。\\
eigen-decomposeは実数の{\em lambda}と{\em V}のみ対応していることに留意する。}

\funcdesc{eigen-decompose-complex}{mat}{
実正方行列{\em mat}の固有値分解(list (list {\em lambdaRe} {\em lambdaIm}) (list {\em VRe} {\em VIm}))を求める。
(list {\em lambdaRe} {\em lambdaIm})は複素数の固有値(降順)を並べたfloat-vectorのリストであり、(list {\em VRe} {\em VIm})は対応する複素数の固有ベクトルを並べたmatrixのリストである。}

\end{refdesc}

\newpage
Expand Down
24 changes: 23 additions & 1 deletion doc/latex/matrix.tex
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,10 @@ \subsection{Matrix and Transformation}
\funcdesc{m*}{matrix1 matrix2 \&optional result}{
concatenates {\em matrix1} and {\em matrix2}.}

\funcdesc{m*-complex}{cmatrix1 cmatrix2}{
concatenates {\em cmatrix1} and {\em cmatrix2}.\\
{\em cmatrix} = (list {\em matrixRe} {\em matrixIm}) = {\em matrixRe} + {\em matrixIm}*j~~(j is imaginary unit).}

\funcdesc{transpose}{matrix \&optional result}{
transposes {\em matrix}, i.e. columns of {\em matrix} are exchanged with
{\em rows}.}
Expand Down Expand Up @@ -277,12 +281,30 @@ \subsection{LU decomposition}
solves a linear simultaneous equations whose coefficients are described in
{\em mat} and constant values in {\em vec}.}

\funcdesc{solve-non-zero-vector-from-det0-matrix}{mat}{
solves non-zero-vector {\em v} from determinant-zero-matrix {\em mat}, when {\em mat}*{\em v}={\em O} and det({\em mat})=0.\\
{\em mat} is the real square matrix which satisfies det({\em mat})=0 (i.e. inverse matrix of {\em mat} does NOT exist).}

\funcdesc{inverse-matrix}{mat}{
makes the inverse matrix of the square matrix, {\em mat}.}
makes the inverse matrix of the real square matrix, {\em mat}.}

\funcdesc{inverse-matrix-complex}{cmat}{
makes the inverse matrix of the complex square matrix, {\em cmat}.\\
{\em cmat} = (list {\em matRe} {\em matIm}) = {\em matRe} + {\em matIm}*j~~(j is imaginary unit).}

\funcdesc{pseudo-inverse}{mat}{
computes the pseudo inverse matrix using the singular value decomposition.}

\funcdesc{qr-decompose}{mat}{
returns the complex number eigenvalues float-vector list (list {\em lambdaRe} {\em lambdaIm}) from real square matrix {\em mat}.}

\funcdesc{eigen-decompose}{mat}{
returns the eigen decomposition (list {\em lambda} {\em V}) from real square matrix {\em mat}. {\em lambda} is the eigenvalues (in descending order) float-vector, and {\em V} is the eigenvectors matrix. {\em mat}*{\em V} = {\em V}*diag({\em lambda}).\\
Note that eigen-decompose supports ONLY real number {\em lambda} and {\em V}.}

\funcdesc{eigen-decompose-complex}{mat}{
returns the eigen decomposition (list (list {\em lambdaRe} {\em lambdaIm}) (list {\em VRe} {\em VIm})) from real square matrix {\em mat}. (list {\em lambdaRe} {\em lambdaIm}) is the complex number eigenvalues (in descending order) float-vector list, and (list {\em VRe} {\em VIm}) is the complex number eigenvectors matrix list.}

\end{refdesc}

\newpage
Expand Down

1 comment on commit 258e7a2

@k-okada
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for contributing EusLisp documentation

Please check latest documents before merging

PDF version of English manual: manual.pdf
PDF version of Japanese jmanual: jmanual.pdf
HTML version of English manual: manual.html
HTML version of Japanese manual: jmanual.html
Sphinx (ReST) version of English manual: manual.rst

Please sign in to comment.