Skip to content Skip to navigation

Connexions

You are here: Home » Content » N = 16 FFT module

Navigation

Recently Viewed

This feature requires Javascript to be enabled.

N = 16 FFT module

Module by: Howard Johnson, C. Sidney Burrus. E-mail the authors

User rating (How does the rating system work?)
Ratings

Ratings allow you to judge the quality of modules. If other users have ranked the module then its average rating is displayed below. Ratings are calculated on a scale from one star (Poor) to five stars (Excellent).

How to rate a module

Hover over the star that corresponds to the rating you wish to assign. Click on the star to add your rating. Your rating should be based on the quality of the content. You must have an account and be logged in to rate content.

:
(0 ratings)

Summary: A very efficient length N = 16 FFT module that can be use alone or with the PFA or the WFTA.

N=16 FFT module

A FORTRAN implementation of a length-16 FFT module to be used in a Prime Factor Algorithm program.

C
C-------------------WFTA N=16----------------------------
C
  116   R1 = X(I(1)) + X(I(9))
    R2 = X(I(1)) - X(I(9))
    S1 = Y(I(1)) + Y(I(9))
    S2 = Y(I(1)) - Y(I(9))
    R3 = X(I(2)) + X(I(10))
    R4 = X(I(2)) - X(I(10))
    S3 = Y(I(2)) + Y(I(10))
    S4 = Y(I(2)) - Y(I(10))
    R5 = X(I(3)) + X(I(11))
    R6 = X(I(3)) - X(I(11))
    S5 = Y(I(3)) + Y(I(11))
    S6 = Y(I(3)) - Y(I(11))
    R7 = X(I(4)) + X(I(12))
    R8 = X(I(4)) - X(I(12))
    S7 = Y(I(4)) + Y(I(12))
    S8 = Y(I(4)) - Y(I(12))
    R9 = X(I(5)) + X(I(13))
    R10= X(I(5)) - X(I(13))
    S9 = Y(I(5)) + Y(I(13))
    S10= Y(I(5)) - Y(I(13))
    R11 = X(I(6)) + X(I(14))
    R12 = X(I(6)) - X(I(14))
    S11 = Y(I(6)) + Y(I(14))
    S12 = Y(I(6)) - Y(I(14))
    R13 = X(I(7)) + X(I(15))
    R14 = X(I(7)) - X(I(15))
    S13 = Y(I(7)) + Y(I(15))
    S14 = Y(I(7)) - Y(I(15))
    R15 = X(I(8)) + X(I(16))
    R16 = X(I(8)) - X(I(16))
    S15 = Y(I(8)) + Y(I(16))
    S16 = Y(I(8)) - Y(I(16))
    T1 = R1 + R9
    T2 = R1 - R9
    U1 = S1 + S9
    U2 = S1 - S9
    T3 = R3 + R11
    T4 = R3 - R11
    U3 = S3 + S11
    U4 = S3 - S11
    T5 = R5 + R13
    T6 = R5 - R13
    U5 = S5 + S13
    U6 = S5 - S13
    T7 = R7 + R15
    T8 = R7 - R15
    U7 = S7 + S15
    U8 = S7 - S15
    T9 = C81 * (T4 + T8)
    T10= C81 * (T4 - T8)
    U9 = C81 * (U4 + U8)
    U10= C81 * (U4 - U8)
    R1 = T1 + T5
    R3 = T1 - T5
    S1 = U1 + U5
    S3 = U1 - U5
    R5 = T3 + T7
    R7 = T3 - T7
    S5 = U3 + U7
    S7 = U3 - U7
    R9 = T2 + T10
    R11= T2 - T10
    S9 = U2 + U10
    S11= U2 - U10
    R13 = T6 + T9
    R15 = T6 - T9
    S13 = U6 + U9
    S15 = U6 - U9
    T1 = R4 + R16
    T2 = R4 - R16
    U1 = S4 + S16
    U2 = S4 - S16
    T3 = C81 * (R6 + R14)
    T4 = C81 * (R6 - R14)
    U3 = C81 * (S6 + S14)
    U4 = C81 * (S6 - S14)
    T5 = R8 + R12
    T6 = R8 - R12
    U5 = S8 + S12
    U6 = S8 - S12
    T7 = C162 * (T2 - T6)
    T8 = C163 * T2 - T7
    T9 = C164 * T6 - T7
    T10 = R2 + T4
    T11 = R2 - T4
    R2 = T10 + T8
    R4 = T10 - T8
    R6 = T11 + T9
    R8 = T11 - T9
    U7 = C162 * (U2 - U6)
    U8 = C163 * U2 - U7
    U9 = C164 * U6 - U7
    U10 = S2 + U4
    U11 = S2 - U4
    S2 = U10 + U8
    S4 = U10 - U8
    S6 = U11 + U9
    S8 = U11 - U9
    T7 = C165 * (T1 + T5)
    T8 = T7 - C164 * T1
    T9 = T7 - C163 * T5
    T10 = R10 + T3
    T11 = R10 - T3
    R10 = T10 + T8
    R12 = T10 - T8
    R14 = T11 + T9
    R16 = T11 - T9
    U7 = C165 * (U1 + U5)
    U8 = U7 - C164 * U1
    U9 = U7 - C163 * U5
    U10 = S10 + U3
    U11 = S10 - U3
    S10 = U10 + U8
    S12 = U10 - U8
    S14 = U11 + U9
    S16 = U11 - U9
C
    X(I( 1)) = R1 + R5
    X(I( 9)) = R1 - R5
    Y(I( 1)) = S1 + S5
    Y(I( 9)) = S1 - S5
    X(I( 2)) = R2 + S10
    X(I(16)) = R2 - S10
    Y(I( 2)) = S2 - R10
    Y(I(16)) = S2 + R10
    X(I( 3)) = R9 + S13
    X(I(15)) = R9 - S13
    Y(I( 3)) = S9 - R13
    Y(I(15)) = S9 + R13
    X(I( 4)) = R8 - S16
    X(I(14)) = R8 + S16
    Y(I( 4)) = S8 + R16
    Y(I(14)) = S8 - R16
    X(I( 5)) = R3 + S7
    X(I(13)) = R3 - S7
    Y(I( 5)) = S3 - R7
    Y(I(13)) = S3 + R7
    X(I( 6)) = R6 + S14
    X(I(12)) = R6 - S14
    Y(I( 6)) = S6 - R14
    Y(I(12)) = S6 + R14
    X(I( 7)) = R11 - S15
    X(I(11)) = R11 + S15
    Y(I( 7)) = S11 + R15
    Y(I(11)) = S11 - R15
    X(I( 8)) = R4 - S12
    X(I(10)) = R4 + S12
    Y(I( 8)) = S4 + R12
    Y(I(10)) = S4 - R12
C
    GOTO 20
C
 
Figure. Length-16 FFT Module

References

    Content actions

    Give Feedback:

    E-mail the module authors | Rate module ( How does the rating system work?)

    Rating system

    Ratings

    Ratings allow you to judge the quality of modules. If other users have ranked the module then its average rating is displayed below. Ratings are calculated on a scale from one star (Poor) to five stars (Excellent).

    How to rate a module

    Hover over the star that corresponds to the rating you wish to assign. Click on the star to add your rating. Your rating should be based on the quality of the content. You must have an account and be logged in to rate content.

    (0 ratings)

    Download:

    Add module to:

    My Favorites (?)

    'My Favorites' is a special kind of lens which you can use to bookmark modules and collections directly in Connexions. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need a Connexions account to use 'My Favorites'.

    | A lens (?)

    Definition of a lens

    Lenses

    A lens is a custom view of Connexions content. You can think of it as a fancy kind of list that will let you see Connexions through the eyes of organizations and people you trust.

    What is in a lens?

    Lens makers point to Connexions materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

    Who can create a lens?

    Any individual Connexions member, a community, or a respected organization.

    What are tags? tag icon

    Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

    | External bookmarks