Showing results for

- Intel Community
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
- output length of cosine transform

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

Highlighted

Bo_Q_

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

07-21-2014
09:03 AM

73 Views

I have a seemingly naive question: why the length of the output of cosine transform might be longer than n? For example, for staggered cosine transform, the output length is 3n/2. But just looking at its equation, the output should have the same length as the input, which is n. Thanks!

Bo

Accepted Solutions

Highlighted

Chao_Y_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

07-23-2014
08:11 PM

73 Views

Bo,

I think you are talking the dpar/spar parameter for these functions. Actually, they are not used for the computed result. They are just used for store the intermediate sin/cos data that are used in the TT computation.

For the computation function:

d_forward_trig_transform(double f[], DFTI_DESCRIPTOR_HANDLE *handle, MKL_INT ipar[], double dpar[], MKL_INT *stat);

Both the input and output is F[], which is the same size.

Thanks

Chao

3 Replies

Highlighted

Chao_Y_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

07-21-2014
07:11 PM

73 Views

Bo,

Are you talking to some specific MKL questions, or this just a general question regarding the DCT transform?

Thanks,

Chao

Highlighted

Bo_Q_

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

07-21-2014
07:37 PM

73 Views

Thanks for your reply. I am only interested in using DCT but the question is applicable to sine transforms as well. Here are the defination of the transforms:

For instance, for the staggered cosine transform, its output is F(k) with k = 0...n-1, that is n elements in total. But if you look at the documentation here:

You will find the output has 3n/2 elements. Why?

Bo

Highlighted

Chao_Y_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

07-23-2014
08:11 PM

74 Views

Bo,

I think you are talking the dpar/spar parameter for these functions. Actually, they are not used for the computed result. They are just used for store the intermediate sin/cos data that are used in the TT computation.

For the computation function:

d_forward_trig_transform(double f[], DFTI_DESCRIPTOR_HANDLE *handle, MKL_INT ipar[], double dpar[], MKL_INT *stat);

Both the input and output is F[], which is the same size.

Thanks

Chao

For more complete information about compiler optimizations, see our Optimization Notice.