scieee AI-readable full text Open interactive document viewer

SOLUTION OF A SYSTEM OF LINEAR ALGEBRAIC EQUATIONS USING THE SQUARE ROOT METHOD AND DEVELOPMENT OF SOFTWARE

Chay Zoya Sergeyevna, Rakhimova Feruza Saidovna, Aliqulov Yolqin Kadirovich, Islamova Odila Abduraimovna, Teachers of the Tashkent University of Information Technologies named after Muhammad al-Khorezmiy; Tursunaliyev Ozodbek Bahrom oglu, Iskandarova Dil

Abstract

There are various methods for solving a system of linear algebraic equations. This article presents the square root method for solving a system of linear algebraic equations, examples are worked out and software is developed for this method. Keywords: Matrix, system of linear algebraik equations, square root method

Full text

Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 118 Chay Zoya Sergeyevna, Rakhimova Feruza Saidovna, Aliqulov Yolqin Kadirovich, Islamova Odila Abduraimovna, Teachers of the Tashkent University of Information Technologies named after Muhammad al-Khorezmiy Tursunaliyev Ozodbek Bahrom oglu, Iskandarova Dilafruz Sharofaddin qizi Rustamova Shakhrizoda Oktam qizi, Students of the Tashkent University of Information Technologies named after Muhammad al-Khorezmiy Annotation There are various methods for solving a system of linear algebraic equations. This article presents the square root method for solving a system of linear algebraic equations, examples are worked out and software is developed for this method. Keywords: Matrix, system of linear algebraik equations, square root method. CHIZIQLI ALGEBRAIK TENGLAMALAR SISTEMASINI KVADRAT ILDIZLAR USULI BILAN YECHISH VA DASTURIY TA’MINOTINI YARATISH Chay Zoya Sergeyevna, Raximova Feruza Saidovna, Aliqulov Yolqin Qodirovich, Islamova Odila Abduraimovna, Muhammad al-Xorazmiy nomidagi Toshkent axborot texnologiyalari SOLUTION OF A SYSTEM OF LINEAR ALGEBRAIC EQUATIONS USING THE SQUARE ROOT METHOD AND DEVELOPMENT OF SOFTWARE Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 119 universiteti o`qituvchilari Tursunaliyev Ozodbek Bahrom o`g`li, Iskandarova Dilafruz Sharofaddin qizi Rustamova Shaxrizoda O‘ktam qizi, Muhammad al-Xorazmiy nomidagi Toshkent axborot texnologiyalari universiteti talabalari Annotatsiya Chiziqli algebraik tenglamalar sistemasini yechishning turli xil usullari mavjud. Ushbu maqolada chiziqli algebraik tenglamalar sistemasini yechishning kvadrat ildizlar usuli keltirilgan, shu usulda misollar ishlab ko`rsatilgan va dasturiy ta’minotlari ishlab chiqilgan. Kalit so‘zlar: Matritsa, chiziqli algebraik tenglamalar sistemasi, kvadrat ildizlar usuli. РЕШЕНИЕ СИСТЕМЫ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ МЕТОДОМ КВАДРАТНОГО КОРНЯ И РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Аннотация Существуют различные методы решения систем линейных алгебраических уравнений. В данной статье представлен метод квадратных корней для решения систем линейных алгебраических уравнений (СЛАУ), приведены примеры для этого метода и разработано программное обеспечение. Ключевые слова: Mатрица, система линейных алгебраических уравнений, метод квадратных корней. Texnik yo`nalishlar talabalariga matematik fanlar mavzularini o`tishda dasturiy ta`minotlar va dasturlardan foydalanishga e’tibor qaratish o`tilgan mavzuni o`zlashtirishni osonlashtiradi, talabalarning mavzuga nisbatan Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 120 qiziqishlarini orttiradi, shu bilan birga dars samaradorligi sezilarli darajada oshadi. Chiziqli algebraik tenglamalar sistemasini yechishning keng tarqalgan usullaridan biri kvadrat ildizlar usulidir. Bu usulni Xoletskiy usuli deb ham yuritiladi. Bu usul chiziqli algebraik tenglamalar sistemasining yechimini topishshning aniq usuli hisoblanadi va bu usulda o`zgaruvchilarning aniq qiymatlari topiladi. Bu usul simmetrik shakldagi musbat aniqlangan matritsali chiziqli algebraik tenglamalar sistemasini yechish uchun qulay usul hisoblanadi. Matritsaning simmetrikligi chiziqli algebraik tenglamalar sistemasini dasturiy vositalardan foydalanib yechishda qulay hisoblanadi. Aytaylik 𝐴∗𝑋=𝐵 sistema kvadrat ildizlar usuli qoʻllanilishi shartlarini bajarsin, u holda shunday S yuqori uchburchak matritsa mavjudki 𝑆𝑇∗𝑆=𝐴 (4) bo’ladi. 𝐴 ∗ 𝑋=𝐵 ⇒(𝑆𝑇∗𝑆)∗ 𝑋=𝐵 ⇒𝑆𝑇∗(𝑆∗𝑋)=𝐵 koʻrinishda yozish mumkin. Agar 𝑆∗𝑋=𝑌 deb belgilash kiritsak, u holda X yechimni topish algoritmi quyidagicha koʻrinishni oladi: 1) 𝑆𝑇∗𝑆=𝐴 tenglamadan S-matritsa elementlarini topamiz. 2) 𝑆𝑇∗𝑌=𝐵 tenglamadan Y-ustun matritsa (vektor) elementlarini topamiz. 3) 𝑆∗𝑋=𝑌 tenglamadan esa X-ustun matritsa, yaʼni yechimni topamiz. Yuqorida keltirilgan algoritmda faqatgina birinchi bosqich koʻp mehnat talab qiladi. Masalan A matritsa 3 × 3 matritsa boʻlsa, u holda S matritsani topish formulalarini keltiramiz, keyin umumiy holga oʻtamiz: 𝑆=(𝑆11 𝑆12 𝑆13 0 𝑆22 𝑆23 0 0 𝑆33),𝑆𝑇=(𝑆11 0 0 𝑆12 𝑆22 0 𝑆13 𝑆23 𝑆33) 𝑆𝑇∗𝑆=𝐴 𝑆𝑇∗𝑆=𝐴=(𝑆11 0 0 𝑆12 𝑆22 0 𝑆13 𝑆23 𝑆33)∗(𝑆11 𝑆12 𝑆13 0 𝑆22 𝑆23 0 0 𝑆33) Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 121 =(𝑆11 2𝑆11∗𝑆12 𝑆13∗𝑆11 𝑆12∗𝑆11 𝑆11 2+𝑆22 2𝑆13∗𝑆12+𝑆23∗𝑆12 𝑆13∗𝑆11 𝑆13∗𝑆12+𝑆23∗𝑆12 𝑆13 2+𝑆23 2+𝑆33 2) Umumiy holatda 𝑆11=√𝑎11,𝑆1𝑖=𝑎1𝑖 𝑆11,𝑖=2,…,𝑛 𝑣𝑎 ℎ𝑜𝑘𝑎𝑧𝑜. 𝑆𝑖𝑖=√𝑎𝑖𝑖−∑𝑆𝑘𝑖 2 𝑖−1 𝑘=1 , 𝑆𝑖𝑗=1 𝑆𝑖𝑖(𝑎𝑖𝑗−∑𝑆𝑘𝑖∗𝑆𝑘𝑗) 𝑖−1 𝑘=1 Ushbu formula orqali S matritsani topiladi. Ushbu usulni simmetrik boʻlmagan va musbat aniqlanmagan A matritsali chiziqli algebraik tenglamalar sistemasi uchun ham qoʻllash mumkin. Buning uchun usulni qoʻllashdan oldin (3) chiziqli algebraik tenglamalar sistemasini chapdan 𝐴𝑇 matritsaga koʻpaytirish kifoya 𝐴 ∗ 𝑋=𝐵 ⇒ 𝐴𝑇∗𝐴∗𝑋=𝐴𝑇∗𝐵 natijada (3) ga ekvivalent boʻlgan sistemaga ega boʻlamiz: 𝐴∗𝑋=𝐵 (5) bunda 𝐴=𝐴𝑇∗𝐴,𝐵=𝐴𝑇∗𝐵 boʻlib, 𝐴– matritsa simmetrik va musbat aniqlangan boʻladi, natijada kvadrat ildiz usulidan foydalansak boʻladi. (3) dan (5) ga oʻtish sistemani simmetrizatsiyalash hisoblanadi. Uch o‘zgaruvchili chiziqli algebraik tenglamalar sistemasi uchun kvadrat ildizlar usulida ildiz topilsin. {5𝑥−7𝑦+8𝑧=32 8𝑥−5𝑦+4𝑧=34 −7𝑥+8𝑦−5𝑧=−7 (1) chiziqli algebraik tenglamalar sistemasi ni yechish talab qilingan boʻlsin, quyidagicha belgilashlar kiritamiz: 𝐴=(5 −7 8 8 −5 4 −7 8 −5),𝐵=(32 34 −7),𝑋=(𝑥𝑦𝑧) (2) Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 122 u holda (1) ni quyidagicha 𝐴∗𝑋=𝐵 (3) 𝐴=𝐴𝑇∗𝐴=(5 8 −7 −7 −5 8 8 4 −5)∗(5 −7 8 8 −5 4 −7 8 −5) =(25+64+49 −35−40−56 40+32+35 −35−40−56 49+25+64 −56−20−40 40+32+35 −56−20−40 64+16+25) =(138 −131 107 −131 138 −116 107 −116 105) 𝐵=𝐴𝑇∗𝐵=(5 8 −7 −7 −5 8 8 4 −5)∗(32 34 −7)= (5∗32+8∗34+7∗7 −7∗32−5∗34−8∗7 8∗32+4∗34+7∗5)=(481 −450 427) S matritsani elementlarini topamiz: 𝑆𝑇∗𝑆=𝐴 𝑆11=√𝑎11=√138=11.7473 𝑆12=𝑎12 𝑆11=−131 11.7473=−11.1514 𝑆13=𝑎13 𝑆11=107 11.7473=9.1084 𝑆22=√𝑎22−∑𝑆𝑘2 2 1 𝑘=1 =√𝑎22−𝑆12 2=√138−11.15142=3.694 𝑆23=1 𝑆22(𝑎23−∑𝑆𝑘2∗𝑆𝑘3)= 1 3.694(−116+11.1514∗9.1084)=3.905 1 𝑘=1 Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 123 𝑆33=√𝑎33−∑𝑆𝑘3 2 2 𝑘=1 =√𝑎33−(𝑆13 2+𝑆23 2)=√105−(9.10842+3.9052) =2.605 Natijada 𝑆=(11.7473 −11.1514 9.1084 0 3.694 −3.905 0 0 2.605) U holda 𝑆𝑇∗𝑌=𝐵 (11.7473 0 0 −11.1514 3.694 0 9.1084 −3.905 2.605)∗(𝑦1 𝑦2 𝑦3)=(481 −450 427) 1) 11.7473∗𝑦1=481,𝑦1=40.9455 2) −11.1514∗𝑦1+3.694∗𝑦2=−450 𝑦2=−450+11.1514∗𝑦1 3.694 =1.6646 3) 9.1084∗𝑦1−3.905∗𝑦2+2.605∗𝑦3=427 𝑦3=427−9.1084∗𝑦1+3.905∗𝑦2 2.605 =23.2446 𝑌=(40.9455 1.6646 23.2446) Endi X ning yechimlarini topamiz: 𝑆∗𝑋=𝑌 (11.7473 −11.1514 9.1084 0 3.694 −3.905 0 0 2.605)∗(𝑥𝑦𝑧)=(40.9455 1.6646 23.2446) 1) 2.605∗𝑧=23.2446,𝑧=9 2) 3.694∗𝑦−3.905∗𝑧=1.6646 𝑦=1.6646+3.905∗𝑧 3.694 =10 3) 11.7473∗𝑥−11.1514∗𝑦+9.1084∗𝑧=40.9455 Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 124 𝑥=40.9455+11.1514∗𝑦+9.1084∗𝑧 11.7473 =6 Demak, ushbu tenglamaning yechimlari 𝑥=(6 10 9). Ushbu misolni yuqoridagi usulda yechib beruvchi dastur yaratildi, undagi natijani keltirilgan misol natijasi bilan taqqoslaymiz va natija bir xilligini ko`ramiz: import numpy as np # === 1. Kiritish qismi === n = int(input("O'zgaruvchilar sonini kiriting (n): ")) print("\nA matritsa koeffitsiyentlarini kiriting (har bir satr alohida, elementlar orasiga bo'shliq qo'ying):") A = np.zeros((n, n)) for i in range(n): A[i] = list(map(float, input(f"{i+1}-satr: ").split())) print("\nOzod hadlarni kiriting (B vektor):") b = np.array(list(map(float, input("B = ").split()))) # === 2. Simmetrizatsiya (A^T * A va A^T * b) === A_sym = A.T @ A b_sym = A.T @ b print("\n--- Simmetriklashtirilgan matritsa (A_bar = A^T * A) ---") print(np.round(A_sym, 3)) Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 125 # === 3. Cholesky (kvadrat ildizlar) usuli === def cholesky_decomposition(M): n = M.shape[0] S = np.zeros_like(M) for i in range(n): for j in range(i, n): if i == j: S[i, i] = np.sqrt(M[i, i] - np.sum(S[:i, i]**2)) else: S[i, j] = (M[i, j] - np.sum(S[:i, i] * S[:i, j])) / S[i, i] return S S = cholesky_decomposition(A_sym) print("\n--- Cholesky (S) matritsa ---") print(np.round(S, 4)) # === 4. Yechim topish === # S^T * Y = B_sym (oldinga yechish) Y = np.zeros(n) for i in range(n): Y[i] = (b_sym[i] - np.sum(S.T[i, :i] * Y[:i])) / S.T[i, i] # S * X = Y (orqaga yechish) X = np.zeros(n) for i in reversed(range(n)): X[i] = (Y[i] - np.sum(S[i, i+1:] * X[i+1:])) / S[i, i] Vol..4, Issue 9 ISSN:23490012 I.F. 8.1 NOVEMBER 126 print("\n--- Yechimlar (X) ---") for i, val in enumerate(X, 1): print(f"x{i} = {val:.6f}") # === 5. Determinant === det_A = np.linalg.det(A) det_A_sym = np.linalg.det(A_sym) print(f"\nA matritsa determinanti: det(A) = {det_A:.6f}") print(f"Simmetrik matritsa determinanti: det(A^T*A) = {det_A_sym:.6f}") Natija: Yuqoridagi hisoblashlardan ko`rinadiki, yechimni topish uchun ancha vaqt sarflanadi. Lekin chiziqli algebraik tenglamalar sistemasini yechishning kvadrat ildizlar usulini qo`llshga doir dastur tuzib, shartlari bajarilgan chiziqli algebraik