Tpetra parallel linear algebra Version of the Day
Loading...
Searching...
No Matches
Tpetra_Details_makeColMap_decl.hpp
Go to the documentation of this file.
1#ifndef TPETRA_DETAILS_MAKECOLMAP_DECL_HPP
2#define TPETRA_DETAILS_MAKECOLMAP_DECL_HPP
3
4// @HEADER
5// ***********************************************************************
6//
7// Tpetra: Templated Linear Algebra Services Package
8// Copyright (2008) Sandia Corporation
9//
10// Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
11// the U.S. Government retains certain rights in this software.
12//
13// Redistribution and use in source and binary forms, with or without
14// modification, are permitted provided that the following conditions are
15// met:
16//
17// 1. Redistributions of source code must retain the above copyright
18// notice, this list of conditions and the following disclaimer.
19//
20// 2. Redistributions in binary form must reproduce the above copyright
21// notice, this list of conditions and the following disclaimer in the
22// documentation and/or other materials provided with the distribution.
23//
24// 3. Neither the name of the Corporation nor the names of the
25// contributors may be used to endorse or promote products derived from
26// this software without specific prior written permission.
27//
28// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
29// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
30// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
31// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
32// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
33// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
34// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
35// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
36// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
37// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
38// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39//
40// Questions? Contact Michael A. Heroux (maherou@sandia.gov)
41//
42// ************************************************************************
43// @HEADER
44
55
56#include "TpetraCore_config.h"
57#include "Tpetra_Map_fwd.hpp"
59#include "Kokkos_Core.hpp"
60#include <ostream>
61
62#ifndef DOXYGEN_SHOULD_SKIP_THIS
63namespace Teuchos {
64 // forward declaration of Array
65 template<class T> class Array;
66
67 // forward declaration of RCP
68 template<class T> class RCP;
69} // namespace Teuchos
70#endif // DOXYGEN_SHOULD_SKIP_THIS
71
72namespace Tpetra {
73
74namespace Details {
75
127template <class LO, class GO, class NT>
128int
129makeColMap (Teuchos::RCP<const Tpetra::Map<LO, GO, NT> >& colMap,
130 Teuchos::Array<int>& remotePIDs,
131 const Teuchos::RCP<const Tpetra::Map<LO, GO, NT> >& domMap,
132 const RowGraph<LO, GO, NT>& graph,
133 const bool sortEachProcsGids = true,
134 std::ostream* errStrm = NULL);
135
139template <class LO, class GO, class NT>
140int
141makeColMap (Teuchos::RCP<const Tpetra::Map<LO, GO, NT>>& colMap,
142 const Teuchos::RCP<const Tpetra::Map<LO, GO, NT>>& domMap,
143 Kokkos::View<GO*, typename NT::memory_space> gids,
144 std::ostream* errStrm = NULL);
145
146} // namespace Details
147} // namespace Tpetra
148
149#endif // TPETRA_DETAILS_MAKECOLMAP_DECL_HPP
Forward declaration of Tpetra::Map.
Forward declaration of Tpetra::RowGraph.
Struct that holds views of the contents of a CrsMatrix.
Implementation details of Tpetra.
int makeColMap(Teuchos::RCP< const Tpetra::Map< LO, GO, NT > > &colMap, Teuchos::Array< int > &remotePIDs, const Teuchos::RCP< const Tpetra::Map< LO, GO, NT > > &domMap, const RowGraph< LO, GO, NT > &graph, const bool sortEachProcsGids=true, std::ostream *errStrm=NULL)
Make the graph's column Map.
Namespace Tpetra contains the class and methods constituting the Tpetra library.