С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/21: Рейтинг темы: голосов - 21, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 03.01.2018
Сообщений: 14

Фазовый портрет сигнала по точкам

29.01.2020, 06:57. Показов 4601. Ответов 4

Студворк — интернет-сервис помощи студентам
Здравствуйте, у меня есть сигнал формата .txt (время, напряжение) и нужно построить фазовый портрет. Нашёл в интернете разные примеры, но они конкретно для дифф.ур'ов. Вот такой код получился у меня, он выглядит очень коряво и фазовый портрет тоже, всё ли правильно?
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import numpy as np
import matplotlib.pyplot as plt
 
M1 = np.loadtxt("1.txt")
t1 = M1[:,0]
s1 = M1[:,1]
n1 = len(s1)
tAdd = t1[25201]
Fs = 202665 #частота дискретизации
t0 = np.split(t1, 2)
t0_ = t0[0];
t__ = np.append(t0_, tAdd) #время размерности графика
FFTsig1 = np.fft.rfft(s1, n1)
FFTsig1_ = np.abs(FFTsig1)
Phase0 = np.angle(FFTsig1);
F = np.arange(0, Fs/2 + Fs/(n1*2), Fs/n1);
dPhase0 = np.diff(Phase0)/np.diff(t__)
pseudoPhase = np.delete(Phase0, 25200)
plt.plot(pseudoPhase, dPhase0)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.01.2020, 06:57
Ответы с готовыми решениями:

Нарисовать фазовый портрет решений системы уравнений
Нарисовать фазовый портрет решений системы уравнений (система дифференциальных уравнений движения материальной точки в среде с...

Построить фазовый портрет по точкам
Добрый день. Стоит следующая задача: дана система из трех ДУ. Нужно решить ее численно методом Эйлера, получить зависимость Psi (T) -...

Фазовый портрет
Добрый день. Раньше не пользовалась мэпл 13, но захотелось построить график покрасивще, чем от руки. Помогите разобраться в чем ошибка ...

4
5515 / 2868 / 571
Регистрация: 07.11.2019
Сообщений: 4,757
29.01.2020, 16:53
Может имеется ввиду АФЧХ?
Сделали fft и стройте зависимость мнимой части от действительной.

Добавлено через 10 минут
Т.е. изображаете точки на комплексной плоскости.
0
0 / 0 / 0
Регистрация: 03.01.2018
Сообщений: 14
30.01.2020, 00:35  [ТС]
вроде нет, зависимость производной от функции, может я просто в коде что-то не так сделал. Ещё эти цифры пришлось вбивать(частоту дискретизации, количество отсчётов/2), эти цифры приходится сначала считать из файла и каждый раз они будут разные, вбивать не самое удобное решение. Когда я пытался вектор создать от 1 до n/2 у меня писало ошибку, в общем всё диковинно и что-то может быть не правильно, в целом нужно построить, но с этим вроде относительно не возникло проблем. Раньше я пытался это сделать в матлабе, попытался импортировать код, но выдавало ошибки в элементах P*:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#from scipy.integrate import odeint
import numpy as np
import matplotlib.pyplot as plt
 
#from matplotlib import rcParams
#rcParams['font.sans-serif']=['Arial']
M1 = np.loadtxt("1.txt")
t1 = M1[:,0]
s1 = M1[:,1]
s = np.array(M1[:,1])
t = np.array(M1[:,0])
n1 = len(s)
FFTsig1 = np.fft(s1, n1)
def func(s1, t1):
plt.plot(t1, s1, color='blue')
        FFTsig1 = np.fft(s1, n1)
 
Phase0 = np.angle(FFTsig1);
plt.plot(t1, Phase0)
P21 = abs(FFTsig1 / n1)
P11 = P21(1, n1/2)
P11[2, n1/2] = 2*P11(2, n1/2)
P41 = np.angle(FFTsig1 / n1);
P31 = P41(1, n1/2);
P31[2, n1/2] = 2*P31(2, n1/2);  # Фазовый спектр
Phase1 = np.angle(FFTsig1); # Фазовый спектр тоже
Amp1 = abs(FFTsig1);
fs = 1 / (1 * 10^-7); # частота дискретизации
F = 0, fs/2 - fs/n1, fs/n1;
       return FFTsig1;
plt.plot(t1, FFTsig1)
0
5515 / 2868 / 571
Регистрация: 07.11.2019
Сообщений: 4,757
30.01.2020, 07:33
Лучший ответ Сообщение было отмечено Armlet как решение

Решение

Строка 23:
Фаза не изменится поделите вы на n или нет.
Строка 25:
Зачем умножение на 2? Для амплитуды это еще как-то объяснимо, но не для фазы.
Строка31:
Что нужно изобразить? Какую зависимость? ФЧХ, АЧХ?
Если сделали FFT, то уже не время t1, а частота.
1
0 / 0 / 0
Регистрация: 03.01.2018
Сообщений: 14
31.01.2020, 00:25  [ТС]
сейчас мне всё прояснили и действительно нужно было реальную по x, мнимую часть аналитического сигнала по y откладывать, через преобразование гильберта
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.01.2020, 00:25
Помогаю со студенческими работами здесь

Фазовый портрет
Доброго времени суток. Очень надеюсь на вашу помощь, ибо что-то у меня не выходит "приручить" маткад. Вкратце: пишу бакалаврскую...

Построить фазовый портрет
Условия задачи: Движение груза массы m, подвешенного на пружине нулевой массы, зависимость упругой силы которой от деформации имеет вид...

Построить фазовый портрет
Доброго времени суток! Помогите, пожалуйста, выбивает ошибку при команде = ode45('F', t, x); , как будто захожу за пределы. Сама...

Построить фазовый портрет
Вообщем дана такая система уравнений: \left\{\begin{array}{lcl} \dot{x} & = & x\, -\, 3y \\ \dot{y} & = & 3xy \\ ...

Построить фазовый портрет
Помогите пожалуйста построить фазовый портреть уравнения y'''+3y''+2y'=1-x^2


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru