Epetra Package Browser (Single Doxygen Collection)
Development
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
test
src
Epetra_matrix_data.h
Go to the documentation of this file.
1
/*
2
//@HEADER
3
// ************************************************************************
4
//
5
// Epetra: Linear Algebra Services Package
6
// Copyright 2011 Sandia Corporation
7
//
8
// Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
9
// the U.S. Government retains certain rights in this software.
10
//
11
// Redistribution and use in source and binary forms, with or without
12
// modification, are permitted provided that the following conditions are
13
// met:
14
//
15
// 1. Redistributions of source code must retain the above copyright
16
// notice, this list of conditions and the following disclaimer.
17
//
18
// 2. Redistributions in binary form must reproduce the above copyright
19
// notice, this list of conditions and the following disclaimer in the
20
// documentation and/or other materials provided with the distribution.
21
//
22
// 3. Neither the name of the Corporation nor the names of the
23
// contributors may be used to endorse or promote products derived from
24
// this software without specific prior written permission.
25
//
26
// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37
//
38
// Questions? Contact Michael A. Heroux (maherou@sandia.gov)
39
//
40
// ************************************************************************
41
//@HEADER
42
*/
43
44
#ifndef EPETRA_MATRIX_DATA_H
45
#define EPETRA_MATRIX_DATA_H
46
47
#if defined(Epetra_SHOW_DEPRECATED_WARNINGS)
48
#ifdef __GNUC__
49
#warning "The Epetra package is deprecated"
50
#endif
51
#endif
52
53
54
55
#include "
Epetra_ConfigDefs.h
"
56
57
class
Epetra_CrsMatrix
;
58
59
namespace
epetra_test {
60
66
class
EPETRA_LIB_DLL_EXPORT
matrix_data
{
67
public
:
68
matrix_data
(
int
num_rows,
int
* rowlengths,
int
blocksize=1);
69
matrix_data
(
int
num_rows,
int
num_cols,
int
num_off_diagonals,
int
blocksize);
70
matrix_data
(
int
num_quad_elements,
int
num_dof_per_node,
71
bool
make_numerically_nonsymmetric=
false
);
72
virtual
~
matrix_data
();
73
74
int
numrows
() {
return
(numrows_); }
75
int
numcols
() {
return
(numcols_); }
76
int
blocksize
() {
return
(blocksize_); }
77
int
*
rows
() {
return
(rows_); }
78
int
*
rowlengths
() {
return
(rowlengths_); }
79
80
int
**
colindices
() {
return
(colindices_); }
81
double
**
coefs
() {
return
(coefs_); }
82
double
* coefs(
int
row,
int
col);
83
88
//Not used.
89
//void copy_local_data_to_matrix(Epetra_CrsMatrix& A);
90
94
bool
compare_local_data(
const
Epetra_CrsMatrix
&
A
);
95
96
private
:
97
int
numrows_
;
98
int
numcols_
;
99
int
*
rows_
;
100
int
*
rowlengths_
;
101
int
blocksize_
;
102
103
int
**
colindices_
;
104
double
**
coefs_
;
105
106
matrix_data
(
const
matrix_data
& data);
107
matrix_data
& operator=(
const
matrix_data
& data);
108
109
};
//class matrix_data
110
111
}
//namespace epetra_test
112
113
#endif
epetra_test::matrix_data::blocksize_
int blocksize_
Definition:
Epetra_matrix_data.h:101
epetra_test::matrix_data::coefs
double ** coefs()
Definition:
Epetra_matrix_data.h:81
A
epetra_test::matrix_data::rowlengths
int * rowlengths()
Definition:
Epetra_matrix_data.h:78
epetra_test::matrix_data::numrows_
int numrows_
Definition:
Epetra_matrix_data.h:97
epetra_test::matrix_data::blocksize
int blocksize()
Definition:
Epetra_matrix_data.h:76
epetra_test::matrix_data::numcols_
int numcols_
Definition:
Epetra_matrix_data.h:98
epetra_test::matrix_data::numcols
int numcols()
Definition:
Epetra_matrix_data.h:75
epetra_test::matrix_data::colindices
int ** colindices()
Definition:
Epetra_matrix_data.h:80
epetra_test::matrix_data::rows_
int * rows_
Definition:
Epetra_matrix_data.h:99
epetra_test::matrix_data::colindices_
int ** colindices_
Definition:
Epetra_matrix_data.h:103
epetra_test::matrix_data::coefs_
double ** coefs_
Definition:
Epetra_matrix_data.h:104
epetra_test::matrix_data::numrows
int numrows()
Definition:
Epetra_matrix_data.h:74
epetra_test::matrix_data
matrix_data is a very simple data source to be used for filling test matrices.
Definition:
Epetra_matrix_data.h:66
Epetra_CrsMatrix
Epetra_CrsMatrix: A class for constructing and using real-valued double-precision sparse compressed r...
Definition:
Epetra_CrsMatrix.h:181
epetra_test::matrix_data::rows
int * rows()
Definition:
Epetra_matrix_data.h:77
epetra_test::matrix_data::rowlengths_
int * rowlengths_
Definition:
Epetra_matrix_data.h:100
Epetra_ConfigDefs.h
Generated on Wed Nov 6 2024 09:20:39 for Epetra Package Browser (Single Doxygen Collection) by
1.8.5