Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Ivan Storogev                        2:5020/400     04 Jun 2002  06:24:39
 To : Dmitrij Matkov
 Subject : Re: синтез синусоидального сигнала
 -------------------------------------------------------------------------------- 
 
 Привет Dmitrij,
 
 Sunday, June 2, 2002, 8:32:04 PM, вы писали:
 
 DM> Ищется алгоpитм сабжа.
 
 Фактически вам нужен алгоритм равномерного вращения вектора
 вокруг начала координат. Тогда радиус вектора -- это амплитуда
 sin/cos, а координаты конца -- текущие значения функций.
 
 В дальнейшем x - это текущий синус, а y - текущий косинус.
 
 Классический алгоритм поворота, в нем 4 умножения и 2 сложения
 на итерацию:
 
 //Входные данные
 //R         -- амплитуда
 //alpha     -- шаг изменения аргумента функции в радианах
 
 //Инициализация
 S := sin(alpha);
 C := cos(alpha);
 x := 0;
 y := R:
 //Главный цикл
 loop
   xt := x; yt := y;
   x := xt*C - yt*S;
   y := yt*C + xt*S;
 end loop;
 Вот взятый из книжки Р. Брейсуэлла "Преобразование Хартли"
 алгоритм, в нем 3 умножения и 3 сложения на итерацию:
 
 //Входные данные
 //R         -- амплитуда
 //alpha     -- шаг изменения аргумента функции в радианах
 
 //Инициализация
 x := 0; y := R;
 dSin := sin(alpha);
 dTg :=  tg(alpha/2);
 
 //Главный цикл
 loop
     temp := y+x*dTg;
     x    := x - temp*dSin;
     y    := x*dTg + temp;
 end loop
 
 Если вас интересует целочисленная арифметика, приглядитесь к
 алгоритмам рисования окружности, например Брезенхема.
 Правда они выдают последовательность sin/cos для _неравномерного_
 вращения по окружности.
 
 -- 
 Всех благ, Иван.
 Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
 --- ifmail v.2.15dev5
  * Origin: KKK (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 синтез синусоидального сигнала   Dmitrij Matkov   02 Jun 2002 21:32:04 
 синтез синусоидального сигнала   Alex Astafiev   03 Jun 2002 14:48:22 
 синтез синусоидального сигнала   Dmitrij Matkov   04 Jun 2002 01:35:55 
 синтез синусоидального сигнала   Evgenij Masherov   04 Jun 2002 09:45:58 
 синтез синусоидального сигнала   Sergei Frolov   09 Jun 2002 09:52:00 
 Re: синтез синусоидального сигнала   Ivan Storogev   04 Jun 2002 06:24:39 
 Re: синтез синусоидального сигнала   Valentin Davydov   04 Jun 2002 13:55:10 
Архивное /ru.algorithms/1506c3abe716.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional