1 |
|
2 |
/***************************************************************************** |
3 |
* |
4 |
* Copyright (c) 2014 by University of Queensland |
5 |
* http://www.uq.edu.au |
6 |
* |
7 |
* Primary Business: Queensland, Australia |
8 |
* Licensed under the Open Software License version 3.0 |
9 |
* http://www.opensource.org/licenses/osl-3.0.php |
10 |
* |
11 |
* Development until 2012 by Earth Systems Science Computational Center (ESSCC) |
12 |
* Development 2012-2013 by School of Earth Sciences |
13 |
* Development from 2014 by Centre for Geoscience Computing (GeoComp) |
14 |
* |
15 |
*****************************************************************************/ |
16 |
|
17 |
|
18 |
#ifndef _RIPLEY_SYSTEMMATRIXTESTCASE_H_ |
19 |
#define _RIPLEY_SYSTEMMATRIXTESTCASE_H_ |
20 |
|
21 |
#include <escript/AbstractDomain.h> |
22 |
#include <escript/AbstractSystemMatrix.h> |
23 |
|
24 |
#include <cppunit/TestFixture.h> |
25 |
#include <cppunit/TestSuite.h> |
26 |
|
27 |
class SystemMatrixTestCase : public CppUnit::TestFixture |
28 |
{ |
29 |
public: |
30 |
virtual void setUp(); |
31 |
|
32 |
void testSpMV_CPU_blocksize1_nonsymmetric(); |
33 |
void testSpMV_CPU_blocksize2_nonsymmetric(); |
34 |
void testSpMV_CPU_blocksize3_nonsymmetric(); |
35 |
void testSpMV_CPU_blocksize4_nonsymmetric(); |
36 |
void testSpMV_CPU_blocksize1_symmetric(); |
37 |
void testSpMV_CPU_blocksize2_symmetric(); |
38 |
void testSpMV_CPU_blocksize3_symmetric(); |
39 |
void testSpMV_CPU_blocksize4_symmetric(); |
40 |
|
41 |
static CppUnit::TestSuite* suite(); |
42 |
|
43 |
private: |
44 |
escript::ASM_ptr createMatrix(int blocksize, bool symmetric); |
45 |
escript::Data createInputVector(int blocksize); |
46 |
|
47 |
esysUtils::JMPI mpiInfo; |
48 |
escript::Domain_ptr domain; |
49 |
}; |
50 |
|
51 |
#endif // _RIPLEY_SYSTEMMATRIXTESTCASE_H_ |
52 |
|