- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
/*
См. маткад файл по нерекурсивным цифровым фильтрам.
Рачёт дискретной последовательности отфильтрованного сигнала
У меня то в файликах уже значения, функции нету,а в маткаде такая строка
lpf(k)*x(Ta*(n-k)) - дык тут идёт расчёт функции х(т). Идея!!!
*барабанная дробь*
Сигнал повторяется с периодом 2Пи, тем более данный сигнал
парный. Знач делаем следующее
1. Вычисляем Step = |Ta*(n-k)|.
2. Так как сигнал парный и симетричный на отрезке 2Пи
то значение функции в Step = |step - 2*ПИ| тоже самое, что и
значение функции в Step. Зачем такой геморой? Ибо в файле step.dat
хначения идут до 2*Пи, тобишь до 6.283
3. В файле data.dat на строке Step ищем искомое нам значение,
по сути тоже самое, что и x(Ta*(n-k)), где х - сигнал.
Сл. функция и возвращает значение Step = |step - 2*ПИ|
*/
int FindStep(int k)
{
float step = fabs(fabs((Ta * k)) - 6.283); // (n-k) in main program
return step*1000;
}