1*7072be85SIrina Sokolova #define MKL_Complex16 PetscScalar 2*7072be85SIrina Sokolova #define MKL_Complex8 PetscScalar 3*7072be85SIrina Sokolova 4*7072be85SIrina Sokolova #if !defined(PETSC_USE_COMPLEX) 5*7072be85SIrina Sokolova # if defined(PETSC_USE_REAL_SINGLE) 6*7072be85SIrina Sokolova # define mkl_sparse_x_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) mkl_sparse_s_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) 7*7072be85SIrina Sokolova # elif defined(PETSC_USE_REAL_DOUBLE) 8*7072be85SIrina Sokolova # define mkl_sparse_x_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) mkl_sparse_d_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) 9*7072be85SIrina Sokolova # endif 10*7072be85SIrina Sokolova #else 11*7072be85SIrina Sokolova # if defined(PETSC_USE_REAL_SINGLE) 12*7072be85SIrina Sokolova # define mkl_sparse_x_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) mkl_sparse_c_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) 13*7072be85SIrina Sokolova # elif defined(PETSC_USE_REAL_DOUBLE) 14*7072be85SIrina Sokolova # define mkl_sparse_x_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) mkl_sparse_z_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) 15*7072be85SIrina Sokolova # endif 16*7072be85SIrina Sokolova #endif 17*7072be85SIrina Sokolova 18*7072be85SIrina Sokolova #if !defined(PETSC_USE_COMPLEX) 19*7072be85SIrina Sokolova # if defined(PETSC_USE_REAL_SINGLE) 20*7072be85SIrina Sokolova # define mkl_sparse_x_mv(operation,alpha,A,descr,x,beta,y) mkl_sparse_s_mv(operation,alpha,A,descr,x,beta,y) 21*7072be85SIrina Sokolova # elif defined(PETSC_USE_REAL_DOUBLE) 22*7072be85SIrina Sokolova # define mkl_sparse_x_mv(operation,alpha,A,descr,x,beta,y) mkl_sparse_d_mv(operation,alpha,A,descr,x,beta,y) 23*7072be85SIrina Sokolova # endif 24*7072be85SIrina Sokolova #else 25*7072be85SIrina Sokolova # if defined(PETSC_USE_REAL_SINGLE) 26*7072be85SIrina Sokolova # define mkl_sparse_x_mv(operation,alpha,A,descr,x,beta,y) mkl_sparse_c_mv(operation,alpha,A,descr,x,beta,y) 27*7072be85SIrina Sokolova # elif defined(PETSC_USE_REAL_DOUBLE) 28*7072be85SIrina Sokolova # define mkl_sparse_x_mv(operation,alpha,A,descr,x,beta,y) mkl_sparse_z_mv(operation,alpha,A,descr,x,beta,y) 29*7072be85SIrina Sokolova # endif 30*7072be85SIrina Sokolova #endif 31