From c3ca705250b62cdd432aba1e131c5f96f577276d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9F=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82?= =?UTF-8?q?=D0=B5=D0=BB=D1=8C=20=E2=84=96=209=20=D0=B0=D1=83=D0=B4=D0=B8?= =?UTF-8?q?=D1=82=D0=BE=D1=80=D0=B8=D0=B8=20=D0=96-206?= Date: Mon, 24 Nov 2025 14:22:32 +0300 Subject: [PATCH] indtask addded --- TEMA7/indtask.md | 62 +++++++++++++++++++++++++ TEMA7/resultindtask.txt | 100 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 162 insertions(+) create mode 100644 TEMA7/indtask.md create mode 100644 TEMA7/resultindtask.txt diff --git a/TEMA7/indtask.md b/TEMA7/indtask.md new file mode 100644 index 0000000..095340f --- /dev/null +++ b/TEMA7/indtask.md @@ -0,0 +1,62 @@ +# Индивидуальное задание к теме 7 + +Савин Семён, А-02-23 + +## Вариант 9 + +## Задание + +Разработайте функцию с 3 параметрами: х, yT и T, реализующую расчет по значениям последовательности значений входного сигнала х значений выходного сигнала по формуле: y= (x+T*yТ)/(T+1). Здесь х- одно текущее значение входного сигнала, yT – значение выходного сигнала в предыдущий момент времени, Т – постоянная времени инерционного звена. Создайте список с последовательностью из 100 значений входного синусоидального сигнала с амплитудой 2, периодом 7 и фазой 0.35. Рассчитайте последовательность значений выходных сигналов, принимая Т=3 и yT равным предыдущему в последовательности вычисленных значений y (для первого значения х принять yT=0). Записать результаты в текстовый файл в виде двух столбцов: хi, yi. + +## Решение + +```py +import math +def rasch(x,yT,T): + """Расчет выходного значения""" + return (x + T*yT)/(T+1) + +def generator(n, A, tau, phi): + sign = [] + for i in range(n): + t = i + x = A*math.sin(2*math.pi*t/tau + phi) + sign.append(x) + return sign + +def output(inputsign, T): + outputsign = [] + yT = 0 + for x in inputsign: + y = rasch(x,yT,T) + outputsign.append(y) + yT=y + return outputsign + +saving(inputsign,outputsign,'resultindtask.txt') +def saving(inputsign, outputsign, filename): + with open(filename, 'w', encoding = 'utf-8') as file: + for i in range(len(inputsign)): + file.write(f'{inputsign[i]:.6f}, {outputsign[i]:.6f}\n' + +n = 100 +A = 2 +tau = 7 +phi = 0.35 +T=3 + +inputsign = generator(n,A,tau,phi) +inputsign +[0.6857956149109027, 1.8964488934073493, 1.6790374746606227, 0.19727659137173062, -1.4330375889291693, -1.9842452361268608, -1.0412757492945761, 0.6857956149109016, 1.896448893407349, 1.6790374746606234, 0.197276591371732, -1.4330375889291658, -1.984245236126861, -1.0412757492945734, 0.6857956149109011, 1.8964488934073476, 1.6790374746606236, 0.19727659137172895, -1.4330375889291704, -1.9842452361268605, -1.041275749294574, 0.685795614910904, 1.8964488934073476, 1.679037474660622, 0.19727659137172943, -1.43303758892917, -1.9842452361268597, -1.0412757492945743, 0.6857956149109036, 1.8964488934073496, 1.679037474660626, 0.19727659137172993, -1.4330375889291698, -1.9842452361268605, -1.0412757492945688, 0.685795614910903, 1.8964488934073493, 1.6790374746606225, 0.19727659137173043, -1.4330375889291695, -1.9842452361268608, -1.0412757492945752, 0.6857956149109026, 1.8964488934073493, 1.6790374746606305, 0.1972765913717309, -1.433037588929169, -1.9842452361268608, -1.0412757492945757, 0.6857956149109021, 1.8964488934073491, 1.6790374746606231, 0.19727659137171724, -1.4330375889291689, -1.9842452361268608, -1.0412757492945761, 0.6857956149109017, 1.896448893407349, 1.6790374746606234, 0.19727659137173187, -1.4330375889291584, -1.9842452361268608, -1.0412757492945766, 0.6857956149109012, 1.8964488934073487, 1.6790374746606236, 0.19727659137173237, -1.4330375889291682, -1.9842452361268592, -1.041275749294577, 0.6857956149109008, 1.8964488934073487, 1.6790374746606316, 0.19727659137176112, -1.4330375889291578, -1.9842452361268645, -1.0412757492945894, 0.6857956149109004, 1.896448893407344, 1.6790374746606243, 0.19727659137174747, -1.4330375889291476, -1.9842452361268628, -1.0412757492945777, 0.6857956149108865, 1.8964488934073482, 1.679037474660632, 0.19727659137176212, -1.4330375889291374, -1.9842452361268612, -1.0412757492945903, 0.6857956149108727, 1.8964488934073436, 1.67903747466064, 0.19727659137174847, -1.4330375889291667, -1.984245236126863, -1.0412757492946028, 0.6857956149108856, 1.896448893407348] + +outputsign = output(inputsign,T) +outputsign +[0.17144890372772567, 0.6026989011476316, 0.8717835445258794, 0.7031568062373422, 0.16910820744571436, -0.36923015344742943, -0.5372415524092161, -0.23148226057918672, 0.3005005279174472, 0.6451347646032413, 0.533170221295364, 0.04161826873923152, -0.4648476074772916, -0.6089546429316121, -0.28526707847098376, 0.26016191449859905, 0.6148808045391052, 0.5104797512472612, 0.024600416203153286, -0.47761099687935016, -0.6185271849831562, -0.2924464850096411, 0.25477735959460607, 0.61084238836111, 0.5074509391137649, 0.0223288071030312, -0.4793147037044415, -0.6198049651019748, -0.29340482009875524, 0.25405860827777094, 0.6103033248734847, 0.507046641498046, 0.02202558389124204, -0.4795421211132836, -0.6199755281586049, -0.2935327423912279, 0.25396266655841643, 0.610231368583968, 0.5069926742809086, 0.021985108478389026, -0.47957247767292344, -0.6199982955783363, -0.2935498179560266, 0.2539498598848174, 0.6102217635787707, 0.5069854705270107, 0.021979705662965754, -0.4795765297844909, -0.6200013346620121, -0.29355209726878356, 0.2539481504002496, 0.6102204814653429, 0.5069845089419365, 0.021978984474160135, -0.4795770706760951, -0.6200017403307154, -0.29355240152031115, 0.2539479222116039, 0.6102203103238588, 0.5069843805858271, 0.021978888207080716, -0.4795771428764046, -0.6200017944809476, -0.2935524421329854, 0.2539478917520981, 0.6102202874792295, 0.5069843634523552, 0.021978875356974348, -0.47957715251398403, -0.6200018017091322, -0.29355244755412396, 0.2539478876862442, 0.610220284429841, 0.5069843611653211, 0.02197887364170137, -0.4795771538004401, -0.6200018026739774, -0.293552448277758, 0.2539478871435175, 0.6102202840227942, 0.5069843608600325, 0.021978873412737465, -0.4795771539721626, -0.6200018028027664, -0.29355244837435324, 0.25394788707107213, 0.6102202839684621, 0.5069843608192871, 0.02197887338218102, -0.47957715399507955, -0.6200018028199572, -0.2935524483872497, 0.2539478870613986, 0.610220283961209, 0.5069843608138438, 0.02197887337809118, -0.4795771539981474, -0.6200018028222611, -0.29355244838897443, 0.2539478870601062] + +import os +os.chdir('C:\\Users\\u206-09\\Desktop\\python-labs\\TEMA7') + +saving(inputsign,outputsign,'resultindtask.txt') +``` + +Был создан файл содержащий два столбца с входным и выходным сигналом в папке. \ No newline at end of file diff --git a/TEMA7/resultindtask.txt b/TEMA7/resultindtask.txt new file mode 100644 index 0000000..83e5e77 --- /dev/null +++ b/TEMA7/resultindtask.txt @@ -0,0 +1,100 @@ +0.685796, 0.171449 +1.896449, 0.602699 +1.679037, 0.871784 +0.197277, 0.703157 +-1.433038, 0.169108 +-1.984245, -0.369230 +-1.041276, -0.537242 +0.685796, -0.231482 +1.896449, 0.300501 +1.679037, 0.645135 +0.197277, 0.533170 +-1.433038, 0.041618 +-1.984245, -0.464848 +-1.041276, -0.608955 +0.685796, -0.285267 +1.896449, 0.260162 +1.679037, 0.614881 +0.197277, 0.510480 +-1.433038, 0.024600 +-1.984245, -0.477611 +-1.041276, -0.618527 +0.685796, -0.292446 +1.896449, 0.254777 +1.679037, 0.610842 +0.197277, 0.507451 +-1.433038, 0.022329 +-1.984245, -0.479315 +-1.041276, -0.619805 +0.685796, -0.293405 +1.896449, 0.254059 +1.679037, 0.610303 +0.197277, 0.507047 +-1.433038, 0.022026 +-1.984245, -0.479542 +-1.041276, -0.619976 +0.685796, -0.293533 +1.896449, 0.253963 +1.679037, 0.610231 +0.197277, 0.506993 +-1.433038, 0.021985 +-1.984245, -0.479572 +-1.041276, -0.619998 +0.685796, -0.293550 +1.896449, 0.253950 +1.679037, 0.610222 +0.197277, 0.506985 +-1.433038, 0.021980 +-1.984245, -0.479577 +-1.041276, -0.620001 +0.685796, -0.293552 +1.896449, 0.253948 +1.679037, 0.610220 +0.197277, 0.506985 +-1.433038, 0.021979 +-1.984245, -0.479577 +-1.041276, -0.620002 +0.685796, -0.293552 +1.896449, 0.253948 +1.679037, 0.610220 +0.197277, 0.506984 +-1.433038, 0.021979 +-1.984245, -0.479577 +-1.041276, -0.620002 +0.685796, -0.293552 +1.896449, 0.253948 +1.679037, 0.610220 +0.197277, 0.506984 +-1.433038, 0.021979 +-1.984245, -0.479577 +-1.041276, -0.620002 +0.685796, -0.293552 +1.896449, 0.253948 +1.679037, 0.610220 +0.197277, 0.506984 +-1.433038, 0.021979 +-1.984245, -0.479577 +-1.041276, -0.620002 +0.685796, -0.293552 +1.896449, 0.253948 +1.679037, 0.610220 +0.197277, 0.506984 +-1.433038, 0.021979 +-1.984245, -0.479577 +-1.041276, -0.620002 +0.685796, -0.293552 +1.896449, 0.253948 +1.679037, 0.610220 +0.197277, 0.506984 +-1.433038, 0.021979 +-1.984245, -0.479577 +-1.041276, -0.620002 +0.685796, -0.293552 +1.896449, 0.253948 +1.679037, 0.610220 +0.197277, 0.506984 +-1.433038, 0.021979 +-1.984245, -0.479577 +-1.041276, -0.620002 +0.685796, -0.293552 +1.896449, 0.253948