Muhammad al-xarazmiy nomidagi
Toshkent axborot texnalogiyalari universiteti axborot xafsizligi fakulteti 714-20 guruh talabasi
Muxtarov Nizomiddinning
Chiziqli algebra fanidan
Mustaqil ishi
Tashkent – 2021
Mavzu: Matritsaning LU, LDU yoyilmalari, va ularning diterminanti hisoblashga hamda chiziqli tenglamalar sistemasini chechishga tatbiqi LU va LDU yoyilmalarin topishni C++ dasturida bajarish
Reja
1. Matritsaning LU, LDU yoyilmalari
2. LU yoylmasi yordamida diterminant va chiziqli tenglamalar sistemasini hisoblash
3. LU va LDU yoyilmalarin topishni C++ dasturida bajarish
4. Xulosa
5. Foydalanilgan adabyotlar
1.Matritsaning LU, LDU yoyilmalari
LU-yoylmasi bu A matritsasining A = L * U shaklida ifodalanishi, bu erda L - diagonali birlik bilan pastki uchburchak matritsa, U esa yuqori uchburchak matritsa. LU yoyilmasi - Gauss usulining modifikatsiyasi. Ushbu algoritmning asosiy qo'llanmalari algebraik tenglamalar tizimini echish, determinantni hisoblash, teskari matritsani hisoblash qo’l keladi. Matritsa misolida algoritmni ko'rib chiqing.
Ushbu oddiy matritsaning LU yoyilmasi topishning bir usuli bu chiziqli tenglamalarni tekshirish yo'li bilan hal qilishdir. Matritsani ko'paytirishni kengaytirish beradi
Ushbu tenglamalar tizimi aniqlanmagan . Bu holda L va U matritsalarining nolga teng bo'lmagan har qanday ikki elementi eritmaning parametrlari bo'lib, o'zboshimchalik bilan nolga teng bo'lmagan qiymatga o'rnatilishi mumkin. Shuning uchun noyob LU yoyilasinisini topish uchun L va U matritsalariga biroz cheklov qo'yish kerak . Masalan, biz pastki L uchburchak matritsasini birlik uchburchakli matritsa bo'lishini talab qilishimiz mumkin (ya'ni uning asosiy diagonalining barcha yozuvlarini biriga qo'ying). Keyin tenglamalar tizimi quyidagi echimga ega:
Yani yoyilma ush bu ko’rinishga keladi
2. LU yoylmasi yordamida diterminant va chiziqli tenglamalar sistemasini hisoblash.
Raqamli tahlil va chiziqli algebrada LU dekompozitsiyasi (bu erda "LU" pastki pastki "degan ma'noni anglatadi, shuningdek LU faktorizatsiyasi deb ataladi) matritsani pastki uchburchak matritsa va yuqori uchburchak matritsaning hosilasi sifatida belgilaydi. Kompyuterlar odatda LU dekompozitsiyasi yordamida chiziqli tenglamalarning kvadrat tizimlarini echishadi va bu matritsani teskari yo'naltirishda yoki matritsaning determinantini hisoblashda ham asosiy qadamdir. A kvadrat matritsa bo'lsin. LU faktorizatsiyasi A ning faktorizatsiyasini to'g'ri satr va / yoki ustun tartiblari yoki almashtirishlari bilan ikkita omilga bo'linadi: pastki uchburchak matritsa L va yuqori uchburchak matritsa U, A = LU.
3. LU va LDU yoyilmalarin topishni C++ dasturida bajarish
#include "stdafx.h"
#include
#include
using namespace std;
const int MAX = 100;
void luDecomposition(int mat[][MAX], int n)
{
int lower[n][n], upper[n][n];
memset(lower, 0, sizeof(lower));
memset(upper, 0, sizeof(upper));
// Decomposing matrix into Upper and Lower
// triangular matrix
for (int i = 0; i < n; i++)
{
// Upper Triangular
for (int k = i; k < n; k++)
{
// Summation of L(i, j) * U(j, k)
int sum = 0;
for (int j = 0; j < i; j++)
sum += (lower[i][j] * upper[j][k]);
// Evaluating U(i, k)
upper[i][k] = mat[i][k] - sum;
}
// Lower Triangular
for (int k = i; k < n; k++)
{
if (i == k)
lower[i][i] = 1; // Diagonal as 1
else
{
// Summation of L(k, j) * U(j, i)
int sum = 0;
for (int j = 0; j < i; j++)
sum += (lower[k][j] * upper[j][i]);
// Evaluating L(k, i)
lower[k][i]
= (mat[k][i] - sum) / upper[i][i];
}
}
}
// setw is for displaying nicely
cout << setw(6)
<< " Lower Triangular"
<< setw(32)
<< "Upper Triangular" << endl;
// Displaying the result :
for (int i = 0; i < n; i++)
{
// Lower
for (int j = 0; j < n; j++)
cout << setw(6) << lower[i][j] << "\t";
cout << "\t";
// Upper
for (int j = 0; j < n; j++)
cout << setw(6) << upper[i][j] << "\t";
cout << endl;
}
}
// Driver code
int main()
{
int mat[][MAX]
= { { 2, -1, -2 }, { -4, 6, 3 }, { -4, -2, 8 } };
luDecomposition(mat, 3);
return 0;
}
Xulosa
Kompyuterlar odatda LU dekompozitsiyasi yordamida chiziqli tenglamalarning kvadrat tizimlarini echishadi va bu matritsani teskari yo'naltirishda yoki matritsaning determinantini hisoblashda ham asosiy qadamdir
Foydalanilgan adabyotlar
Chiziqli algebra va geometriya
Oliy matematika kursi
www.ziyouz.com sayti
www.geeksforgeeks.com sayti
www.wikipediya.com sayti
izoh
hamma mustaqil ishlarimni ozim tayorlayapman ustoz iltimos yaxshiroq baho quying 714-20 Muxtarov Nizomiddin
Do'stlaringiz bilan baham: |