322
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
NOCHIZIQ TENGLAMALAR SISTEMALARINI YECHISH UCHUN
DASTURIY TA'MINOT YARATISH
Mo`sajanova Ozoda Esojon qizi
Namangan Davlat Universiteti Fizika-matematika fakulteti 4-kurs talabasi
Abdurahmonov Azizbek Shokirjon o`g`li,
Soliyeva Gavharoy Yodgorjon qizi
Namangan Davlat Universiteti Amaliy matematika va raqamli ta’lim texnologiyalar
kafedrasi o`qituvchilari
Annotatsiya:
Ushbu maqolada nochiziq tenglamalar sistemalarini yechish
masalasi va bu masalaga dasturiy yondashuvlar tahlil qilinadi. Maqolada nochiziq
algebraik va differensial tenglamalar turlari, ularning amaliyotdagi ahamiyati, yechim
usullari, jumladan, Nyuton usuli, gradient usuli, va Python dasturlash tilidagi fsolve
funksiyasi bilan yechim topish metodlari yoritilgan. Python tilida tuzilgan dasturiy
misollar orqali muammo yechimining bosqichlari, iteratsion jarayonlar va
qiyinchiliklar ko
‘
rsatib o
‘
tilgan. Shuningdek, dasturiy ta
’
minot ishlab chiqishda
uchraydigan muammolar va ularni bartaraf etish bo
‘
yicha tavsiyalar berilgan.
Kalit so`zlar:
Nochiziq tenglamalar, Nyuton usuli, iteratsion metodlar, Python
dasturlash tili, raqamli usullar, dasturiy ta'minot va hisoblash matematikasi.
CREATING SOFTWARE FOR SOLVING SYSTEMS OF NONLINEAR
EQUATIONS
Musajanova Ozoda is daughter of Esojon
Namangan State University 4th year student of the Faculty of Physics and
Mathematics
Abdurahmonov Azizbek is son of Shokirjon
Soliyeva Gavharoy is daughter of Yodgorjon
Namangan State University Teachers of the Department of Applied Mathematics and
Digital Educational Technologies
Annotation:
This article analyzes the problem of solving systems of nonlinear
equations and software approaches to this problem. The article covers the types of
323
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
nonlinear algebraic and differential equations, their importance in practice, solution
methods, including Newton's method, gradient method, and methods for finding a
solution using the fsolve function in the Python programming language. The stages of
problem solving, iterative processes, and difficulties are illustrated through software
examples written in the Python language. Also, problems encountered in software
development and recommendations for their elimination are given.
Keywords:
Nonlinear equations, Newton's method, iterative methods, Python
programming language, numerical methods, software and computational
mathematics.
СОЗДАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ РЕШЕНИЯ
СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИЙ
Мусаджанова Озода Эсоджон кызы
Наманганский государственный университет студент 4 курса физико-
математического факультета
Абдурахмонов Азизбек Шокирджон оглы,
Солиева Гавхарой Ёдгоржон кызы
Наманганский государственный университет Преподаватели кафедры
прикладной математики и цифровых образовательных технологий
Аннотация:
В статье анализируется проблема решения систем
нелинейных уравнений и программные подходы к этой задаче. В статье
рассматриваются типы нелинейных алгебраических и дифференциальных
уравнений, их значение на практике, а также методы решения, включая метод
Ньютона, градиентный метод и методы поиска решений с использованием
функции fsolve в языке программирования Python. Этапы решения проблем,
итерационные процессы и задачи иллюстрируются с помощью примеров
программирования, написанных на Python. В нем также содержатся
рекомендации по решению проблем, возникающих при разработке
программного обеспечения.
Ключевые слова:
Нелинейные уравнения, метод Ньютона, итерационные
методы, язык программирования Python, численные методы, программное
обеспечение и вычислительная математика.
324
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
Kirish
Nochiziq tenglamalar sistemasini yechish
–
matematika va fizikaning turli
sohalarida, shuningdek muhandislik va iqtisodiyotda keng qo
‘
llaniladigan muammo
hisoblanadi. nochiziq tenglamalar oddiy algebrik va differensial tenglamalardan farqli
o
‘
laroq, yechimlarni aniq ifodalashda ko
‘
plab qiyinchiliklarga olib keladi. Ushbu
maqolada, nochiziq tenglamalar sistemasini yechish uchun dasturiy ta'minotni
yaratish jarayoni va Python dasturlash tilida amalga oshiriladigan yechimlar ko
‘
rib
chiqiladi.
Nochiziq tenglamalar va ularning turlari
Nochiziq tenglama
–
bu yechimlari aniq bo
‘
lmagan yoki murakkab bo
‘
lgan
tenglama turidir. Nochiziqlik matematikada ikki asosiy shaklda ko
‘
rinadi:
1.
Nochiziq algebraik tenglamalar
–
o'zgaruvchilarning darajalari bir yoki
undan yuqori bo
‘
lgan tenglamalar. Masalan, x
2
+y
2
−
4=0
2.
Nochiziq differensial tenglamalar
–
vaqt, joy yoki boshqa
o
‘
zgaruvchilar bo
‘
yicha o
‘
zgarayotgan nochiziq funksiya va uning hosilalari orasidagi
munosabatni ifodalovchi tenglamalar.
Bunday tenglamalar ko
‘
pincha murakkab tizimlar shaklida bo
‘
lib, ular faqat
raqamli usullar bilan yechiladi.
Nochiziq tenglamalar sistemasini yechishning muhimligi
29
Nochiziq tenglamalar sistemalarini yechishning muhimligi quyidagilardan
iborat:
Fizika va muhandislik
: Turli tizimlar, masalan, elektr tarmoqlari,
termodinamika, yoki mexanika tizimlarida nochiziq tenglamalar tizimlari paydo
bo
‘
ladi. Bunday tizimlar ko
‘
pincha dinamik, o
‘
zgaruvchan va murakkab bo
‘
ladi.
Iqtisodiyot
: Makroiqtisodiy model va moliyaviy tizimlar ko
‘
pincha Nochiziq
tenglamalar orqali modellashtiriladi.
Sun'iy intellekt
: Mashina o
‘
rganish va optimizatsiya masalalari ham nochiziq
tenglamalar tizimlarini yechishni talab qilishi mumkin.
Nochiziq tenglamalar sistemalarini raqamli usullar bilan yechish
Nochiziq tenglamalar sistemalarini yechish uchun bir nechta raqamli usullar
mavjud. Eng keng tarqalgan usullar qatoriga quyidagilar kiradi:
29
Imomov A, Ismanova K, Irisqulov S, Olimov M “Sonli usullar va algoritmlar. Mathcad” O’quv qo’llanma
O’ZROO’MTV:2008yil, -276 bet 28.02.2008 N51. Namangan, “Namangan”, 2014, -276 bet
325
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
1.
Nyutonning metodlari
: Bu usul, asosan, boshlang'ich taxminlardan
foydalanib, tizimning yechimini iteratsion ravishda topish imkonini beradi.
2.
Gradient metodlari
: Ushbu metodlar yechimni topish uchun tizimning
qiyaliklarini hisoblashga asoslanadi.
3.
Fsolve funksiyasi
: SciPy kutubxonasida mavjud bo
‘
lgan fsolve
funksiyasi nochiziq tenglamalar sistemalarini yechishda qo
‘
llaniladi. U metodikani
avtomatik tanlash imkoniyatini beradi va keng tarqalgan nochiziq tizimlarni
yechishda juda samarali.
Python dasturlash tili bilan nochiziq tenglamalar sistemalarini yechish
Python tilida nochiziq tenglamalar sistemalarini yechish uchun bir nechta
kutubxonalar mavjud. Eng keng tarqalganlari quyidagilar:
SciPy
: Ushbu kutubxona ilmiy va muhandislik hisoblashlari uchun juda qulay.
fsolve funksiyasi nochiziq tenglamalar tizimlarini yechish uchun ishlatiladi.
NumPy
: Chizmalar va vektorli hisoblashlar uchun zarur bo
‘
lgan kutubxona.
SymPy
: Simbolik algebra bilan ishlash uchun ishlatiladi, bu nochiziq
tenglamalarni aniq yechimlarini olishda foydalidir.
Misol: 2 Tenglama, 2 Noma'lum
Quyidagi Nochiziq tenglamalar tizimini ko
‘
rib chiqamiz:
f
1
(x
1
,x
2
)=x
1
2
+x
2
2
−
4=0
f
2
(x
1
,x
2
)=x
1
2
-x
2
2
-1=0
Python dasturini yozish:
import numpy as np
from scipy.optimize import fsolve
# Tenglamalar tizimi
def equations(vars):
x1, x2 = vars
eq1 = x1**2 + x2**2 - 4
eq2 = x1**2 - x2 - 1
return [eq1, eq2]
# Boshlang'ich taxminlar
initial_guess = [1, 1]
# Tenglamalarni yechish
solution = fsolve(equations, initial_guess)
# Natijalarni chiqarish
x1, x2 = solution
326
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
print(f"Tenglamalar yechimi: x1 = {x1}, x2 = {x2}")
Natijalar
Ushbu kodni ishga tushirganda, quyidagi natijalar olinadi:
Tenglamalar yechimi: x1 = 1.732..., x2 = 0.267...
Bu yerda, fsolve funksiyasi Nochiziq tenglamalar tizimini iteratsion ravishda
yechib, natijada yechimlarni taqdim etadi.
Dasturiy ta'minot yaratishdagi qiyinchiliklar
Nochiziq tenglamalar sistemalarini yechishda ba'zi muammolar yuzaga kelishi
mumkin:
Boshlang'ich taxminlar
: Dasturga kiritilgan boshlang'ich taxminlar yechimni
to
‘
g
‘
ri aniqlashga katta ta'sir ko
‘
rsatadi. Yomon taxminlar algoritmni noto
‘
g
‘
ri
natijaga olib kelishi mumkin.
Ko'p yechimlar
: Nochiziq tenglamalar tizimida bir nechta yechimlar bo
‘
lishi
mumkin, bu esa tizimning qiyinchiliklariga olib keladi.
Konvergensiya
: Ba'zi hollarda, iteratsion metodlar aniq yechimga yetmasligi
mumkin, bu esa algoritmning konvergensiyasini ta'minlashni qiyinlashtiradi.
Chiziqsiz tenglamalar sistemasini taqribiy yechish
1. Given ..Find bloki yordamida NTS ni echish
.
// boshlang
‘
ich iteratsiya
Given
// tenglamalarni berish, barobar yo
‘
g
‘
on
(
) //natija
2. Iteratsiya usuli yordamida NTS ni yechish
.
sistemani qaraym iz.
ORIGIN:=1
// iteratsiyalovchi funktsiya
// boshlang
‘
ich iteratsiya
// iteratsiyalarni hisoblash
3. Nyuton iteratsiya usullari yordamida NTSni taqribiy yechish.
ORIGIN:=1
// iteratsiyalovchi funktsiya
x:=1 y:=0
(x:=-1 y:=0)
2
2
2
1
0
x
y
x
y
:
( , )
r
Find x y
0.7861 0.6181
T
r
0.7861 0.6181
T
r
1
2
1
2
0.5cos
1,sin(
1)
1.2
x
x
x
x
2
1
( ) :
1 0.5*cos(
)
sin(
1) 1.2
T
g x
x
x
1
:
0.4
0.5
T
x
1
:
0.6
0.1
T
x
: 1..5
k
1
:
(
)
k
k
x
g x
0.4 0.562 0.515 0.510 0.511 0.511
0.6 0.502 0.655 0.510 0.510 0.510
//
0.5 0.215 0.20 0.202 0.219 0.219
0.1 0.811 0.202 0.203 0.202 0.202
x
x
2
2
2
1
2
1
( ) :
1,
0
T
g x
x
x
x
x
327
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
// Yakobi matritsasini qurish
// boshlang
‘
ich iteratsiyani berish (
)
//Nyuton iteratsiyalarini qurish
//
4. Yechimni grafik usulda topish.(Mapleda).
>eqs:={x^2+y^2-1=0,x^2-
y=0};s:=fsolve(eqs,{x,y});
with(plots);implisitplot(eqs,x=-
2..2,y=-2..2)//s={x=-0.7861,y=0.6180},
s={x=0.7861,y=0.6180}}
1-
rasm. Mapledagi tasviri
2-rasm. Blok-sxema
1
2
1
2
2
( ) :
2
1
x
x
J x
x
1
:
1 0
T
x
1
:
1 0
T
y
1
:
1 0
T
x
k:=1..5
1
1
:
( (
))
(
)
k
k
k
k
x
x
J x
f x
1 1 0.833 0.788 0.786 0.786
0 1 0.667 0.619 0.618 0.618
x
1 1 0.8333 0.7881 0.7861 0.7861
0 1 0.6667 0.6190 0.6180 0.6180
x
328
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
Masalaning Python dasturlash tilidagi ko
‘
rinishi:
Dastur kodi:
import math
# Funksiyalarni aniqlash
def f1(x):
return 4.6 - (x[0]**2) / 10 - (math.log(x[1]) / 3) if x[1] > 0 else 4.6 - (x[0]**2) /
10
def f2(x):
return 3.1 - math.exp(-x[0]) - math.sqrt(x[1]) if x[1] >= 0 else 3.1 - math.exp(-
x[0])
# Boshlang
‘
ich shartlar
n = 2
eps = 0.001
x0 = [float(input(f"x0[{i+1}]: ")) for i in range(n)]
k = 1
while True:
x = [f1(x0), f2(x0)]
# Yaqinlashish shartini tekshirish
max_diff = max(abs(x[i] - x0[i]) for i in range(n))
print(f"{k} - iteratsiya:")
for i in range(n):
print(f"x[{i+1}] = {x[i]:.6f}")
x0[i] = x[i]
if max_diff <= eps:
break
k += 1
Natija:
x0[1]: 2
x0[2]: 5
1 - iteratsiya:
x[1] = 3.663521
x[2] = 0.728597
2 - iteratsiya:
x[1] = 3.363407
x[2] = 2.220779
3 - iteratsiya:
329
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
x[1] = 3.202797
x[2] = 1.575155
4 - iteratsiya:
x[1] = 3.422758
x[2] = 1.804300
5 - iteratsiya:
x[1] = 3.231749
x[2] = 1.724135
6 - iteratsiya:
x[1] = 3.374005
x[2] = 1.747448
7 - iteratsiya:
x[1] = 3.275557
x[2] = 1.743837
8 - iteratsiya:
x[1] = 3.341710
x[2] = 1.741660
9 - iteratsiya:
x[1] = 3.298351
x[2] = 1.744904
10 - iteratsiya:
x[1] = 3.326521
x[2] = 1.742108
11 - iteratsiya:
x[1] = 3.308394
x[2] = 1.744193
12 - iteratsiya:
x[1] = 3.320023
x[2] = 1.742746
13 - iteratsiya:
x[1] = 3.312591
x[2] = 1.743717
14 - iteratsiya:
x[1] = 3.317334
x[2] = 1.743080
15 - iteratsiya:
330
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
x[1] = 3.314311
x[2] = 1.743493
16 - iteratsiya:
x[1] = 3.316237
x[2] = 1.743227
17 - iteratsiya:
x[1] = 3.315011
x[2] = 1.743398
18 - iteratsiya:
x[1] = 3.315791
x[2] = 1.743288
Dastur oynasi:
ITERATSION USUL YORDAMIDA YECHIM:
331
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
332
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
Xulosa
333
Issue 8(43), Volume 1 | ISSN 3030-377X | 30.04.2025
SCIENCE SHINE
INTERNATIONAL SCIENTIFIC JOURNAL
Nochiziq tenglamalar sistemalarini yechish uchun dasturiy ta'minot yaratish,
ilmiy va muhandislik masalalarini hal etishda muhim vosita hisoblanadi. Python
dasturlash tili va uning kuchli kutubxonalari, masalan,
SciPy
va
NumPy
, bu turdagi
muammolarni yechishda juda qulay vositalarni taqdim etadi. Biroq, boshlang'ich
taxminlar, ko'p yechimlar va algoritmning konvergensiyasi kabi muammolarni
hisobga olish zarur. Yaxshi tuzilgan dasturiy ta'minot nafaqat yechimni tez va
samarali topish, balki foydalanuvchi uchun qulay interfeysni yaratishga ham yordam
beradi.
Foydalanilgan adabiyotlar:
1.Oripov M
“Методы
решения
нелинейых
кревых
задач“
T: FAN 1989, 189 s
2.Abduqodirov A, Fozilov F, Umrzoqov T
“
Xisoblash matematikasi va
dasturlash
”
T:O
’
qituvchi, 1995, -256 bet
3.Isroilov M.I
“
Xisoblash metodlari
”
T: O
’
qituvchi, 2003, -480 bet
4. Isroilov M.I
“
Xisoblash metodlari
”
T: Iqtisod-Moliya, 2008, -320 bet
5.Imomov A, Ismanova K, Irisqulov S, Olimov M
“
Sonli usullar va algoritmlar.
Mathcad
”
O
’
quv qo
’
llanma O
’
ZROO
’
MTV:2008yil, -276 bet 28.02.2008 N51.
Namangan,
“
Namangan
”
, 2014, -276 bet
6.Imomov A, Ergashev B. Xisoblash usullari algebra va analiz masalalarini
taqribiy yechish. Toshkent,
“
Navro
’
z
”
.
7
.Imomov A, Toshboev S.
“
Xusoblash usullari. Amaliy ishlar. O
’
quv qo
’
llanma,
O
’
ZROO
’
MTV, 17.07.2022, N233. Namangan,
“
NamDU
”
