เมทริกซ์สมมาตร − เมทริกซ์ที่มีทรานสโพสเท่ากับเมทริกซ์เอง จากนั้นจะเรียกว่า เมทริกซ์สมมาตร .
เมทริกซ์สมมาตรเอียง − เมทริกซ์ที่มีทรานสโพสเท่ากับลบของเมทริกซ์ จากนั้นจะเรียกว่าเมทริกซ์สมมาตรแบบเบ้
ผลรวมของเมทริกซ์สมมาตรและสมมาตรเบ้คือเมทริกซ์สี่เหลี่ยมจัตุรัส ในการหาเมทริกซ์เป็นผลรวม เรามีสูตรนี้
ให้ A เป็นเมทริกซ์กำลังสอง แล้ว
A =(½)*(A + A`)+ (½ )*(A - A`),
A` คือทรานสโพสของเมทริกซ์
(½ )(A+ A`) เป็นเมทริกซ์สมมาตร
(½ )(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