IFPACK
Development
Toggle main menu visibility
Loading...
Searching...
No Matches
src
euclid
Vec_dh.h
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 VEC_DH_H
44
#define VEC_DH_H
45
46
#include "euclid_common.h"
47
#ifdef __cplusplus
48
extern
"C"
49
{
50
#endif
51
52
struct
_vec_dh
53
{
54
int
n;
55
double
*vals;
56
};
57
58
extern
void
Vec_dhCreate (Vec_dh * v);
59
extern
void
Vec_dhDestroy (Vec_dh v);
60
extern
void
Vec_dhInit (Vec_dh v,
int
size);
61
/* allocates storage, but does not initialize values */
62
63
extern
void
Vec_dhDuplicate (Vec_dh v, Vec_dh * out);
64
/* creates vec and allocates storage, but neither
65
* initializes nor copies values
66
*/
67
68
extern
void
Vec_dhCopy (Vec_dh x, Vec_dh y);
69
/* copies values from x to y;
70
* y must have proper storage allocated,
71
* e.g, through previous call to Vec_dhDuplicate,
72
* or Vec_dhCreate and Vec_dhInit.
73
*/
74
75
extern
void
Vec_dhSet (Vec_dh v,
double
value);
76
extern
void
Vec_dhSetRand (Vec_dh v);
77
78
extern
void
Vec_dhRead (Vec_dh * v,
int
ignore,
char
*filename);
79
extern
void
Vec_dhReadBIN (Vec_dh * v,
char
*filename);
80
extern
void
Vec_dhPrint (Vec_dh v, SubdomainGraph_dh sg,
char
*filename);
81
extern
void
Vec_dhPrintBIN (Vec_dh v, SubdomainGraph_dh sg,
char
*filename);
82
#ifdef __cplusplus
83
}
84
#endif
85
#endif
_vec_dh
Definition
Vec_dh.h:53
Generated by
1.17.0