VAPoR  0.1
Transpose.h
Go to the documentation of this file.
1 //
2 // $Id$
3 //
4 
5 
6 #ifndef __Transpose__
7 #define __Transpose__
8 
9 
10 namespace VetsUtil {
11 
12  //
13  // blocked submatrix Transpose suitable for multithreading
14  // *a : pointer to input matrix
15  // *b : pointer to output matrix
16  // p1,p2: starting index of submatrix (row,col)
17  // m1,m2: size of submatrix (row,col)
18  // s1,s2: size of entire matrix (row,col)
19  //
20 
21  void Transpose(float *a,float *b,int p1,int m1,int s1,int p2,int m2,int s2);
22 
23  // specialization for Real -> Complex
24  // note the S1 matrix dimension is for the Real matrix
25  // and the size of the Complex output is then s2 x (S1/2+1)
26 
27 
28  //
29  // blocked matrix Transpose single threaded
30  // *a : pointer to input matrix
31  // *b : pointer to output matrix
32  // s1,s2: size of entire matrix (row,col)
33  //
34 
35  void Transpose(float *a,float *b,int s1,int s2);
36 
37 
38 
39 };
40 
41 #endif
void Transpose(float *a, float *b, int p1, int m1, int s1, int p2, int m2, int s2)