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


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Evgenij Masherov                     2:5020/175.2   21 Sep 2001  10:03:03
 To : Artur Kamilyanov
 Subject : Интегральное преобразование Фурье
 -------------------------------------------------------------------------------- 
 
 Thu Sep 20 2001 20:38, Artur Kamilyanov wrote to Evgenij Masherov:
 
  >>>> 1. Интегральное преобразование Фурье - делается не численно, а
  БА>>> аналитически.
  БА>>> Речь шла - програмку написать. ;)
  EM>> Hу, может, коллега занимается компьютерной алгеброй?
 
  AK> программку надо. По поводу конкретики сказал все, что знал. Мне ведь
  AK> только сабж нужен был =)
 
 procedure fft512(var Ar:array of double; var Ai:array of double);
 // Зашиты 512 точек, изменения очевидны...
 // Входные данные - массивы действительных и мнимых частей
 // Выходные - они же для Фурье
 var
 Le,Le1,jt,it,ip,lt,kt:Integer;
 Tr,Ti,Ur,Ui,Wr,Wi:Double;
 
 begin
 // Перестановка в инвертированном битовом порядке
      for it:=0 to 511 do
      begin
      kt:=256;
      jt:=0;
      Le:=1;
      Le1:=it;
      for lt:=1 to 9 do
      begin
       if kt<=Le1 then begin
       jt:=jt+Le;
       Le1:=Le1-kt;
       end;
       Le:=Le*2;
       kt:=kt div 2;
      end;
      if it<jt then begin
         Tr:=Ar[jt];Ti:=Ai[jt];
         Ar[jt]:=Ar[it];Ai[jt]:=Ai[it];
         Ar[it]:=Tr;Ai[it]:=Ti;
         end;
      end;
 //Собственно Фурье
      for lt:=1 to 9 do
 //Делим пополам...
      begin
       Le:=1;
       for jt:=1 to lt do Le:=Le*2;
       Le1:=Le div 2;
       Ur:=1.0;
       Ui:=0.0;
       Wr:=cos(Pi/Le1);
       Wi:=sin(Pi/Le1);
 // синусы и косинусы считаем рекурсивно
       for jt:=0 to Le1-1 do
       begin
        it:=jt;
        while it<512-Le1 do
        begin
 // бабочка
         ip:=it+Le1;
         Tr:=Ar[ip]*Ur-Ai[ip]*Ui;
         Ti:=Ar[ip]*Ui+Ai[ip]*Ur;
         Ar[ip]:=Ar[it]-Tr;
         Ai[ip]:=Ai[it]-Ti;
         Ar[it]:=Ar[it]+Tr;
         Ai[it]:=Ai[it]+Ti;
         it:=it+Le;
        end;
 // Вычисление новых синусов
       Tr:=Ur*Wr-Ui*Wi;
       Ti:=Ur*Wi+Ui*Wr;
       Ur:=Tr;
       Ui:=Ti;
       end;
      end;
 end;
 
 Hу вот программка. 
 Обратное - ею же, но сопрягнув вектор. Деление на эH на совести считающего...
 
 Евгений Машеров АКА СанитарЖеня
 
 --- ifmail v.2.15
  * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)
 
 

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

 Тема:    Автор:    Дата:  
 Интегральное преобразование Фурье   Artur Kamilyanov   17 Sep 2001 21:16:28 
 Re: Интегральное преобразование Фурье   bnw   18 Sep 2001 14:48:05 
 Re: Интегральное преобразование Фурье   Ѓ евЁ­ Ђ­¤аҐ©   18 Sep 2001 15:34:59 
 Re: Интегральное преобразование Фурье   Artur Kamilyanov   18 Sep 2001 18:18:00 
 Re: Интегральное преобразование Фурье   Ѓ евЁ­ Ђ­¤аҐ©   19 Sep 2001 08:54:37 
 Re: Интегральное преобразование Фурье   Artur Kamilyanov   19 Sep 2001 15:09:35 
 Re: Интегральное преобразование Фурье   Ѓ евЁ­ Ђ­¤аҐ©   19 Sep 2001 15:20:30 
 Re: Интегральное преобразование Фурье   Artur Kamilyanov   20 Sep 2001 17:03:57 
 Интегральное преобразование Фурье   Ђ­¤аҐ©   19 Sep 2001 22:03:12 
 Интегральное преобразование Фурье   Evgenij Masherov   20 Sep 2001 10:42:15 
 Re: Интегральное преобразование Фурье   Serhiy Savychenko   20 Sep 2001 11:55:33 
 Интегральное преобразование Фурье   George Shepelev   21 Sep 2001 18:24:08 
 Интегральное преобразование Фурье   Ѓ евЁ­ Ђ­¤аҐ©   20 Sep 2001 14:07:41 
 Интегральное преобразование Фурье   Evgenij Masherov   20 Sep 2001 15:58:29 
 Интегральное преобразование Фурье   Artur Kamilyanov   20 Sep 2001 21:38:42 
 Интегральное преобразование Фурье   Evgenij Masherov   21 Sep 2001 10:03:03 
 Интегральное преобразование Фурье   Daniel Kamperov   22 Sep 2001 00:10:08 
 Интегральное преобразование Фурье   Evgenij Masherov   24 Sep 2001 11:01:49 
 Интегральное преобразование Фурье   Evgeny Sharandin   23 Sep 2001 20:29:00 
 Интегральное преобразование Фурье   Evgenij Masherov   01 Oct 2001 11:27:54 
 Интегральное преобразование Фурье   Evgeny Sharandin   07 Oct 2001 23:47:00 
 Интегральное преобразование Фурье   Artur Kamilyanov   20 Sep 2001 17:14:43 
 Интегральное преобразование Фурье   Ђ­¤аҐ©   21 Sep 2001 00:01:21 
 Интегральное преобразование Фурье   Ђ­¤аҐ©   21 Sep 2001 21:20:08 
Архивное /ru.algorithms/3300eab605d0.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional