Import matplotlib import math import numpy as np import


Download 16.92 Kb.
Sana24.12.2022
Hajmi16.92 Kb.
#1053976
Bog'liq
Dastur kodi


import matplotlib
import math
import numpy as np
import datetime
import time

print("Chiziqli sistemalarda rostlagich parametrlari vektorlarini \nmodal boshqarish asosida turg'un hisoblash algoritmlari")



# Ushbu dasturda chiziqli sistemalarda rostlagich parametrlari vektorlarini modal boshqarish asosida turgun hisoblash algoritmlari o'tilgan

def welcomer():
for j, i in enumerate(range(10, -1, -1)):
print('\r', f' {"#" * j} Assalomu alaykum {"#" * i}', end='')
time.sleep(0.2)
for r, t in enumerate(range(10, -1, -1)):
print('\r', f' {"*" * t} Dastur mualliflari Boyeva.O.H va Namozov.N.N {"*" * r}', end='')
time.sleep(0.3)
for j, i in enumerate(range(10, -1, -1)):
print('\r', f' {"*" * j} Dastur ishga tushmoqda {"*" * i}', end='')
if j == 30:
break
time.sleep(0.1)
welcomer()
condition = 1
while condition == 1:
print('''
'''
)
print("Dinamik boshqarish sistemalarini sintezlash masalasini samarali hal qilish imkonini")

'''Chiziqli sistemalarda rostlagich parametrlari vektorini modal boshqarish
asosida turg'un hisoblash algoritmini boshlang'ich parametrlarini kiritamiz'''

xt = float(input(" x(t) xolat vektorini qiymatini kiriting = "))
print('''
'''
)
a = 4 # bu yerda a oladigan qiymatimizni aniqliligini chegaralaymiz
ut = float(input(" u(t) skalyar boshqarishda kerakli qiymatni kiriting = "))
A = ("3x3 o'lchamli rostlagich parametrlarinign o'tish matritsasi berilgan bo'lsin ")
a11 = float(input(" a11 ni qiymatini kiriting = "))
a12 = float(input(" a12 ni qiymatini kiriting = "))
a13 = float(input(" a13 ni qiymatini kiriting = "))
a21 = float(input(" a21 ni qiymatini kiriting = "))
a22 = float(input(" a22 ni qiymatini kiriting = "))
a23 = float(input(" a23 ni qiymatini kiriting = "))
a31 = float(input(" a31 ni qiymatini kiriting = "))
a32 = float(input(" a32 ni qiymatini kiriting = "))
a33 = float(input(" a33 ni qiymatini kiriting = "))

A = [[a11, a12, a13],


[a21, a22, a23],
[a31, a32, a33]]
A1 = ((a11 * a22 * a33) + (a12 * a23 * a31) + (a13 * a21 * a32)) - (
(a12 * a21 * a33) - (a11 * a23 * a32) - (a13 * a22 * a31))
B = np.array([9, 2, -32])
C = np.linalg.solve(A, B)
print('''
'''
)
print(f"Chiziqli sistemaning {C} natijasi:.{a}f")
print('''
'''
)
k = float(input(" k ni qiymatini kiriting "))
print('''
'''
)
ut = k * xt
print(f" boshqarish qonunini quyidagicha {ut} natija chiqardi:.{a}f")
print('''
'''
)
b = float(input(" b boshqarish vektorini qiymatini kiriting "))
print('''
'''
)
if A1 >= 0:
x1 = A1 * xt + b * ut
print(x1, "Keltirilgan algoritm modal boshqaruv asosida rostlagichning parametrlari turg'un xolatda ")
elif A1 == 0:
x2 = b * ut
print(x2, "Keltirilgan algoritm modal boshqaruv asosida rostlagichning parametrlari maximal chegarasida ")
else:
print(" Tizim turg'un emas ")
print("1 ni bosing agar yana qaytadan hisoblamoqchi bo'lsangiz")
x=int(input())
if x==0:
print("Dastur yakunlandi",datetime.datetime.now(),"vaqt bilan yakunlandi")


Natijasi
Chiziqli sistemalarda rostlagich parametrlari vektorlarini
modal boshqarish asosida turg'un hisoblash algoritmlari
********** Dastur ishga tushmoqda
Dinamik boshqarish sistemalarini sintezlash masalasini samarali hal qilish imkonini
x(t) xolat vektorini qiymatini kiriting = 0.2

u(t) skalyar boshqarishda kerakli qiymatni kiriting = 0.6


a11 ni qiymatini kiriting = 1
a12 ni qiymatini kiriting = 5
a13 ni qiymatini kiriting = -3
a21 ni qiymatini kiriting = 4
a22 ni qiymatini kiriting = 2.6
a23 ni qiymatini kiriting = 2.7
a31 ni qiymatini kiriting = 1.6
a32 ni qiymatini kiriting = 3.2
a33 ni qiymatini kiriting = 2
Chiziqli sistemaning [ 15.74036851 -9.44053601 -13.48743719] natijasi:.4f
k ni qiymatini kiriting 0.2
boshqarish qonunini quyidagicha 0.04000000000000001 natija chiqardi:.4f
b boshqarish vektorini qiymatini kiriting 5.6
Tizim turg'un emas
1 ni bosing agar yana qaytadan hisoblamoqchi bo'lsangiz
3

Dinamik boshqarish sistemalarini sintezlash masalasini samarali hal qilish imkonini


x(t) xolat vektorini qiymatini kiriting = 1
u(t) skalyar boshqarishda kerakli qiymatni kiriting = 3
a11 ni qiymatini kiriting = 2
a12 ni qiymatini kiriting = 36
a13 ni qiymatini kiriting = 65
a21 ni qiymatini kiriting = 9
a22 ni qiymatini kiriting = 5
a23 ni qiymatini kiriting = 7
a31 ni qiymatini kiriting = 8
a32 ni qiymatini kiriting = 52
a33 ni qiymatini kiriting = 2
Chiziqli sistemaning [ 0.20245787 -0.66580056 0.50098315] natijasi:.4f
k ni qiymatini kiriting 1.3

boshqarish qonunini quyidagicha 1.3 natija chiqardi:.4f


b boshqarish vektorini qiymatini kiriting 3.9
35141.07 Keltirilgan algoritm modal boshqaruv asosida rostlagichning parametrlari turg'un xolatda
1 ni bosing agar yana qaytadan hisoblamoqchi bo'lsangiz
0
Dastur yakunlandi 2022-11-04 14:34:09.490568
Download 16.92 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling