Ifpack Package Browser (Single Doxygen Collection)
Development
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
src
Ifpack_IC_Utils.h
Go to the documentation of this file.
1
/*@HEADER
2
// ***********************************************************************
3
//
4
// Ifpack: Object-Oriented Algebraic Preconditioner Package
5
// Copyright (2002) Sandia Corporation
6
//
7
// Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive
8
// license for use of this work by or on behalf of the U.S. Government.
9
//
10
// Redistribution and use in source and binary forms, with or without
11
// modification, are permitted provided that the following conditions are
12
// met:
13
//
14
// 1. Redistributions of source code must retain the above copyright
15
// notice, this list of conditions and the following disclaimer.
16
//
17
// 2. Redistributions in binary form must reproduce the above copyright
18
// notice, this list of conditions and the following disclaimer in the
19
// documentation and/or other materials provided with the distribution.
20
//
21
// 3. Neither the name of the Corporation nor the names of the
22
// contributors may be used to endorse or promote products derived from
23
// this software without specific prior written permission.
24
//
25
// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
26
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
29
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
31
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
32
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
33
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
34
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
35
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36
//
37
// Questions? Contact Michael A. Heroux (maherou@sandia.gov)
38
//
39
// ***********************************************************************
40
//@HEADER
41
*/
42
43
#ifndef IFPACK_IC_UTILS_H
44
#define IFPACK_IC_UTILS_H
45
46
typedef
struct
{
47
double
*
val
;
/* also known as A */
48
int
*
col
;
/* also known as JA; first column is column 0 */
49
int
*
ptr
;
/* also known as IA; with ptr[0] = 0 */
50
}
Ifpack_AIJMatrix
;
51
52
extern
"C"
{
53
void
ifpack_multilist_sort
(
int
*
const
pbase,
double
*
const
daux,
int
total_elems);
54
}
55
56
void
Ifpack_AIJMatrix_dealloc
(
Ifpack_AIJMatrix
*a);
57
58
void
crout_ict
(
59
int
n,
60
#ifdef IFPACK
61
void
*
A
,
62
int
maxentries,
63
int
(*getcol)(
void
* A,
int
col,
int
** nentries,
double
* val,
int
* ind),
64
int
(*getdiag)(
void
*A,
double
* diag),
65
#
else
66
const
Ifpack_AIJMatrix
*AL,
67
const
double
*Adiag,
68
#endif
69
double
droptol,
70
int
lfil,
71
Ifpack_AIJMatrix
*L,
72
double
**pdiag);
73
74
75
#endif
Ifpack_AIJMatrix::val
double * val
Definition:
Ifpack_IC_Utils.h:47
A
Ifpack_AIJMatrix_dealloc
void Ifpack_AIJMatrix_dealloc(Ifpack_AIJMatrix *a)
Definition:
Ifpack_IC_Utils.cpp:70
Ifpack_AIJMatrix::col
int * col
Definition:
Ifpack_IC_Utils.h:48
Ifpack_AIJMatrix
Definition:
Ifpack_IC_Utils.h:46
ifpack_multilist_sort
void ifpack_multilist_sort(int *const pbase, double *const daux, int total_elems)
Ifpack_AIJMatrix::ptr
int * ptr
Definition:
Ifpack_IC_Utils.h:49
crout_ict
void crout_ict(int n, const Ifpack_AIJMatrix *AL, const double *Adiag, double droptol, int lfil, Ifpack_AIJMatrix *L, double **pdiag)
Definition:
Ifpack_IC_Utils.cpp:275
Generated by
1.8.5