source: CIVL/examples/mpi-omp/AMG2013/struct_mv/computation.h@ 7d77e64

main test-branch
Last change on this file since 7d77e64 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.9 KB
Line 
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 * Header info for computation
17 *
18 *****************************************************************************/
19
20#ifndef hypre_COMPUTATION_HEADER
21#define hypre_COMPUTATION_HEADER
22
23/*--------------------------------------------------------------------------
24 * hypre_ComputeInfo:
25 *--------------------------------------------------------------------------*/
26
27typedef struct hypre_ComputeInfo_struct
28{
29 hypre_CommInfo *comm_info;
30
31 hypre_BoxArrayArray *indt_boxes;
32 hypre_BoxArrayArray *dept_boxes;
33 hypre_Index stride;
34
35} hypre_ComputeInfo;
36
37/*--------------------------------------------------------------------------
38 * hypre_ComputePkg:
39 * Structure containing information for doing computations.
40 *--------------------------------------------------------------------------*/
41
42typedef struct hypre_ComputePkg_struct
43{
44 hypre_CommPkg *comm_pkg;
45
46 hypre_BoxArrayArray *indt_boxes;
47 hypre_BoxArrayArray *dept_boxes;
48 hypre_Index stride;
49
50 hypre_StructGrid *grid;
51 hypre_BoxArray *data_space;
52 int num_values;
53
54} hypre_ComputePkg;
55
56/*--------------------------------------------------------------------------
57 * Accessor macros: hypre_ComputeInfo
58 *--------------------------------------------------------------------------*/
59
60#define hypre_ComputeInfoCommInfo(info) (info -> comm_info)
61#define hypre_ComputeInfoIndtBoxes(info) (info -> indt_boxes)
62#define hypre_ComputeInfoDeptBoxes(info) (info -> dept_boxes)
63#define hypre_ComputeInfoStride(info) (info -> stride)
64
65/*--------------------------------------------------------------------------
66 * Accessor macros: hypre_ComputePkg
67 *--------------------------------------------------------------------------*/
68
69#define hypre_ComputePkgCommPkg(compute_pkg) (compute_pkg -> comm_pkg)
70
71#define hypre_ComputePkgIndtBoxes(compute_pkg) (compute_pkg -> indt_boxes)
72#define hypre_ComputePkgDeptBoxes(compute_pkg) (compute_pkg -> dept_boxes)
73#define hypre_ComputePkgStride(compute_pkg) (compute_pkg -> stride)
74
75#define hypre_ComputePkgGrid(compute_pkg) (compute_pkg -> grid)
76#define hypre_ComputePkgDataSpace(compute_pkg) (compute_pkg -> data_space)
77#define hypre_ComputePkgNumValues(compute_pkg) (compute_pkg -> num_values)
78
79#endif
Note: See TracBrowser for help on using the repository browser.