source: CIVL/examples/mpi-omp/AMG2013/IJ_mv/IJ_vector.h

main
Last change on this file was ea777aa, checked in by Alex Wilton <awilton@…>, 3 years ago

Moved examples, include, build_default.properties, common.xml, and README out from dev.civl.com into the root of the repo.

git-svn-id: svn://vsl.cis.udel.edu/civl/trunk@5704 fb995dde-84ed-4084-dfe6-e5aef3e2452c

  • Property mode set to 100644
File size: 2.6 KB
RevLine 
[2aa6644]1/*BHEADER**********************************************************************
2 * Copyright (c) 2008, Lawrence Livermore National Security, LLC.
3 * Produced at the Lawrence Livermore National Laboratory.
4 * This file is part of HYPRE. See file COPYRIGHT for details.
5 *
6 * HYPRE is free software; you can redistribute it and/or modify it under the
7 * terms of the GNU Lesser General Public License (as published by the Free
8 * Software Foundation) version 2.1 dated February 1999.
9 *
10 * $Revision: 2.4 $
11 ***********************************************************************EHEADER*/
12
13
14
15/******************************************************************************
16 *
17 * Header info for the hypre_IJMatrix structures
18 *
19 *****************************************************************************/
20
21#ifndef hypre_IJ_VECTOR_HEADER
22#define hypre_IJ_VECTOR_HEADER
23
24/*--------------------------------------------------------------------------
25 * hypre_IJVector:
26 *--------------------------------------------------------------------------*/
27
28typedef struct hypre_IJVector_struct
29{
30 MPI_Comm comm;
31
32 HYPRE_BigInt *partitioning; /* Indicates partitioning over tasks */
33
34 int object_type; /* Indicates the type of "local storage" */
35
36 void *object; /* Structure for storing local portion */
37
38 void *translator; /* Structure for storing off processor
39 information */
40
41 HYPRE_BigInt global_first_row; /* these data items are necessary */
42 HYPRE_BigInt global_num_rows; /* to be able to avoid using the */
43 /* global partition */
44
45
46
47
48} hypre_IJVector;
49
50/*--------------------------------------------------------------------------
51 * Accessor macros: hypre_IJVector
52 *--------------------------------------------------------------------------*/
53
54#define hypre_IJVectorComm(vector) ((vector) -> comm)
55
56#define hypre_IJVectorPartitioning(vector) ((vector) -> partitioning)
57
58#define hypre_IJVectorObjectType(vector) ((vector) -> object_type)
59
60#define hypre_IJVectorObject(vector) ((vector) -> object)
61
62#define hypre_IJVectorTranslator(vector) ((vector) -> translator)
63
64#define hypre_IJVectorGlobalFirstRow(vector) ((vector) -> global_first_row)
65
66#define hypre_IJVectorGlobalNumRows(vector) ((vector) -> global_num_rows)
67
68/*--------------------------------------------------------------------------
69 * prototypes for operations on local objects
70 *--------------------------------------------------------------------------*/
71/* #include "./internal_protos.h" */
72
73#endif
Note: See TracBrowser for help on using the repository browser.