正方行列は対称行列と非対称行列の和として表現できますか?

WBOY
リリース: 2023-09-13 17:05:02
転載
1239 人が閲覧しました

正方行列は対称行列と非対称行列の和として表現できますか?

対称行列 - 転置が行列自体と等しい行列。そして、それは対称行列と呼ばれます。

反対称行列 - その転置が行列の負の値に等しい場合、それは反対称行列と呼ばれます。

対称行列と非対称行列の和は正方行列です。これらの行列の合計を求めるには、次の式があります。

A が正方行列であると仮定します。次に、

A = (1/2)*(A A`) (1/2 )*(A - A`),

A` が行列の転置になります。

(1/2 )(A A`) は対称行列です。

(1/2 )(A - A`) は反対称行列です。

#include <bits/stdc++.h>
using namespace std;
#define N 3
void printMatrix(float mat[N][N]) {
   for (int i = 0; i < N; i++) {
      for (int j = 0; j < N; j++)
         cout << mat[i][j] << " ";
         cout << endl;
   }
}
int main() {
   float mat[N][N] = { { 2, -2, -4 },
   { -1, 3, 4 },
   { 1, -2, -3 } };
   float tr[N][N];
   for (int i = 0; i < N; i++)
   for (int j = 0; j < N; j++)
   tr[i][j] = mat[j][i];
   float symm[N][N], skewsymm[N][N];
   for (int i = 0; i < N; i++) {
      for (int j = 0; j < N; j++) {
         symm[i][j] = (mat[i][j] + tr[i][j]) / 2;
         skewsymm[i][j] = (mat[i][j] - tr[i][j]) / 2;
      }
   }
   cout << "Symmetric matrix-" << endl;
   printMatrix(symm);
   cout << "Skew Symmetric matrix-" << endl;
   printMatrix(skewsymm);
   return 0;
}
ログイン後にコピー

出力

Symmetric matrix -
2 -1.5 -1.5
-1.5 3 1
-1.5 1 -3
Skew Symmetric matrix -
0 -0.5 -2.5
0.5 0 3
2.5 -3 0
ログイン後にコピー

以上が正方行列は対称行列と非対称行列の和として表現できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート