1 |
|
2 |
/******************************************************* |
3 |
* |
4 |
* Copyright (c) 2003-2009 by University of Queensland |
5 |
* Earth Systems Science Computational Center (ESSCC) |
6 |
* http://www.uq.edu.au/esscc |
7 |
* |
8 |
* Primary Business: Queensland, Australia |
9 |
* Licensed under the Open Software License version 3.0 |
10 |
* http://www.opensource.org/licenses/osl-3.0.php |
11 |
* |
12 |
*******************************************************/ |
13 |
|
14 |
|
15 |
/**************************************************************/ |
16 |
|
17 |
/* Paso: Pattern_coupling */ |
18 |
|
19 |
/**************************************************************/ |
20 |
|
21 |
/* Author: Artak Amirbekyan */ |
22 |
|
23 |
/**************************************************************/ |
24 |
|
25 |
#ifndef INC_PASO_PATTERN_COUPLING |
26 |
#define INC_PASO_PATTERN_COUPLING |
27 |
|
28 |
#include "SparseMatrix.h" |
29 |
|
30 |
/**************************************************************/ |
31 |
|
32 |
void Paso_Pattern_YS(Paso_SparseMatrix* A, index_t* mis_marker, double thershold); |
33 |
void Paso_Pattern_RS(Paso_SparseMatrix* A, index_t* mis_marker, double theta); |
34 |
void Paso_Pattern_Aggregiation(Paso_SparseMatrix* A, index_t* mis_marker, double theta); |
35 |
void Paso_Pattern_greedy(Paso_Pattern* pattern, index_t* mis_marker); |
36 |
void Paso_Pattern_greedy_color(Paso_Pattern* pattern, index_t* mis_marker); |
37 |
void Paso_Pattern_greedy_diag(Paso_SparseMatrix* A, index_t* mis_marker, double thershold); |
38 |
|
39 |
void Paso_Pattern_YS_plus(Paso_SparseMatrix* A, index_t* mis_marker, double alpha, double taw, double delta); |
40 |
void Paso_Pattern_Standard(Paso_SparseMatrix* A, index_t* mis_marker, double theta); |
41 |
void Paso_Pattern_Aggressive(Paso_SparseMatrix* A, index_t* mis_marker, double theta); |
42 |
/*dim_t how_many(dim_t n,dim_t* S_i, int value1, dim_t* addedSet, int value2);*/ |
43 |
|
44 |
dim_t how_many(dim_t i,Paso_Pattern * S, bool_t transpose); |
45 |
dim_t arg_max(dim_t n, dim_t* lambda, dim_t mask); |
46 |
Paso_Pattern* Paso_Pattern_getTranspose(Paso_Pattern* P); |
47 |
void Paso_Pattern_getReport(dim_t n,index_t* mis_marker); |
48 |
|
49 |
#endif |