Ifpack Package Browser (Single Doxygen Collection)
Development
Toggle main menu visibility
Loading...
Searching...
No Matches
src
euclid
Vec_dh.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 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_dhCreate
void Vec_dhCreate(Vec_dh *v)
Definition
Vec_dh.c:52
Vec_dhDuplicate
void Vec_dhDuplicate(Vec_dh v, Vec_dh *out)
Definition
Vec_dh.c:104
Vec_dhDestroy
void Vec_dhDestroy(Vec_dh v)
Definition
Vec_dh.c:66
Vec_dhRead
void Vec_dhRead(Vec_dh *v, int ignore, char *filename)
Definition
Vec_dh.c:290
Vec_dhSet
void Vec_dhSet(Vec_dh v, double value)
Definition
Vec_dh.c:121
Vec_dhInit
void Vec_dhInit(Vec_dh v, int size)
Definition
Vec_dh.c:79
Vec_dhPrint
void Vec_dhPrint(Vec_dh v, SubdomainGraph_dh sg, char *filename)
Definition
Vec_dh.c:164
Vec_dhReadBIN
void Vec_dhReadBIN(Vec_dh *v, char *filename)
Definition
Vec_dh.c:369
Vec_dhPrintBIN
void Vec_dhPrintBIN(Vec_dh v, SubdomainGraph_dh sg, char *filename)
Definition
Vec_dh.c:270
Vec_dhCopy
void Vec_dhCopy(Vec_dh x, Vec_dh y)
Definition
Vec_dh.c:89
Vec_dhSetRand
void Vec_dhSetRand(Vec_dh v)
Definition
Vec_dh.c:134
euclid_common.h
Vec_dh
struct _vec_dh * Vec_dh
Definition
euclid_common.h:87
SubdomainGraph_dh
struct _subdomain_dh * SubdomainGraph_dh
Definition
euclid_common.h:80
_vec_dh
Definition
Vec_dh.h:53
_vec_dh::n
int n
Definition
Vec_dh.h:54
_vec_dh::vals
double * vals
Definition
Vec_dh.h:55
Generated by
1.17.0