GNU Octave  3.8.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
passb2.f
Go to the documentation of this file.
1  subroutine passb2 (ido,l1,cc,ch,wa1)
2  dimension cc(ido,2,l1) ,ch(ido,l1,2) ,
3  1 wa1(1)
4  if (ido .gt. 2) go to 102
5  do 101 k=1,l1
6  ch(1,k,1) = cc(1,1,k)+cc(1,2,k)
7  ch(1,k,2) = cc(1,1,k)-cc(1,2,k)
8  ch(2,k,1) = cc(2,1,k)+cc(2,2,k)
9  ch(2,k,2) = cc(2,1,k)-cc(2,2,k)
10  101 continue
11  return
12  102 do 104 k=1,l1
13  do 103 i=2,ido,2
14  ch(i-1,k,1) = cc(i-1,1,k)+cc(i-1,2,k)
15  tr2 = cc(i-1,1,k)-cc(i-1,2,k)
16  ch(i,k,1) = cc(i,1,k)+cc(i,2,k)
17  ti2 = cc(i,1,k)-cc(i,2,k)
18  ch(i,k,2) = wa1(i-1)*ti2+wa1(i)*tr2
19  ch(i-1,k,2) = wa1(i-1)*tr2-wa1(i)*ti2
20  103 continue
21  104 continue
22  return
23  end