Xpetra_TpetraCrsGraph_def.hpp
Go to the documentation of this file.
1 // @HEADER
2 //
3 // ***********************************************************************
4 //
5 // Xpetra: A linear algebra interface package
6 // Copyright 2012 Sandia Corporation
7 //
8 // Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
9 // the U.S. Government retains certain rights in this software.
10 //
11 // Redistribution and use in source and binary forms, with or without
12 // modification, are permitted provided that the following conditions are
13 // met:
14 //
15 // 1. Redistributions of source code must retain the above copyright
16 // notice, this list of conditions and the following disclaimer.
17 //
18 // 2. Redistributions in binary form must reproduce the above copyright
19 // notice, this list of conditions and the following disclaimer in the
20 // documentation and/or other materials provided with the distribution.
21 //
22 // 3. Neither the name of the Corporation nor the names of the
23 // contributors may be used to endorse or promote products derived from
24 // this software without specific prior written permission.
25 //
26 // THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27 // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33 // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37 //
38 // Questions? Contact
39 // Jonathan Hu (jhu@sandia.gov)
40 // Andrey Prokopenko (aprokop@sandia.gov)
41 // Ray Tuminaro (rstumin@sandia.gov)
42 //
43 // ***********************************************************************
44 //
45 // @HEADER
46 #ifndef XPETRA_TPETRACRSGRAPH_DEF_HPP
47 #define XPETRA_TPETRACRSGRAPH_DEF_HPP
49 #include "Xpetra_Exceptions.hpp"
50 
51 #include "Tpetra_CrsGraph.hpp"
52 
53 #include "Xpetra_CrsGraph.hpp"
55 #include "Xpetra_Utils.hpp"
56 #include "Xpetra_TpetraMap.hpp"
57 #include "Xpetra_TpetraImport.hpp"
58 #include "Xpetra_TpetraExport.hpp"
59 
60 
61 namespace Xpetra {
62 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
63 #endif
64 
65 template<class LocalOrdinal, class GlobalOrdinal, class Node>
67 : graph_(Teuchos::rcp(new Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node >(toTpetra(rowMap), maxNumEntriesPerRow, toTpetra(pftype), params))) { }
68 
69 template<class LocalOrdinal, class GlobalOrdinal, class Node>
71 : graph_(Teuchos::rcp(new Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node >(toTpetra(rowMap), NumEntriesPerRowToAlloc(), toTpetra(pftype), params))) { }
72 
73 template<class LocalOrdinal, class GlobalOrdinal, class Node>
75 : graph_(Teuchos::rcp(new Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node >(toTpetra(rowMap), toTpetra(colMap), maxNumEntriesPerRow, toTpetra(pftype), params))) { }
76 
77 template<class LocalOrdinal, class GlobalOrdinal, class Node>
79 : graph_(Teuchos::rcp(new Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node >(toTpetra(rowMap), toTpetra(colMap), NumEntriesPerRowToAlloc(), toTpetra(pftype), params))) { }
80 
81 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
82 template<class LocalOrdinal, class GlobalOrdinal, class Node>
86  const typename local_graph_type::row_map_type& rowPointers,
87  const typename local_graph_type::entries_type::non_const_type& columnIndices,
89  : graph_(Teuchos::rcp(new Tpetra::CrsGraph<LocalOrdinal, GlobalOrdinal, Node>(toTpetra(rowMap), toTpetra(colMap), rowPointers, columnIndices, plist))) { }
90 
91 
92 template<class LocalOrdinal, class GlobalOrdinal, class Node>
95  const Teuchos::RCP<const map_type>& colMap,
96  const local_graph_type& lclGraph,
98  : graph_(Teuchos::rcp(new Tpetra::CrsGraph<LocalOrdinal, GlobalOrdinal, Node>(toTpetra(rowMap), toTpetra(colMap), lclGraph, params))) { }
99 
100 template<class LocalOrdinal, class GlobalOrdinal, class Node>
102 TpetraCrsGraph(const local_graph_type& lclGraph,
103  const Teuchos::RCP<const map_type>& rowMap,
104  const Teuchos::RCP<const map_type>& colMap,
105  const Teuchos::RCP<const map_type>& domainMap,
106  const Teuchos::RCP<const map_type>& rangeMap,
108  : graph_(Teuchos::rcp(new Tpetra::CrsGraph<LocalOrdinal, GlobalOrdinal, Node>(lclGraph, toTpetra(rowMap), toTpetra(colMap), toTpetra(domainMap), toTpetra(rangeMap), params))) { }
109 #endif
110 
111 template<class LocalOrdinal, class GlobalOrdinal, class Node>
113 
114 template<class LocalOrdinal, class GlobalOrdinal, class Node>
116 { XPETRA_MONITOR("TpetraCrsGraph::insertGlobalIndices"); graph_->insertGlobalIndices(globalRow, indices); }
117 
118 template<class LocalOrdinal, class GlobalOrdinal, class Node>
120 { XPETRA_MONITOR("TpetraCrsGraph::insertLocalIndices"); graph_->insertLocalIndices(localRow, indices); }
121 
122 template<class LocalOrdinal, class GlobalOrdinal, class Node>
124 { XPETRA_MONITOR("TpetraCrsGraph::removeLocalIndices"); graph_->removeLocalIndices(localRow); }
125 
126 template<class LocalOrdinal, class GlobalOrdinal, class Node>
128 { XPETRA_MONITOR("TpetraCrsGraph::fillComplete"); graph_->fillComplete(toTpetra(domainMap), toTpetra(rangeMap), params); }
129 
130 template<class LocalOrdinal, class GlobalOrdinal, class Node>
132 { XPETRA_MONITOR("TpetraCrsGraph::fillComplete"); graph_->fillComplete(params); }
133 
134 template<class LocalOrdinal, class GlobalOrdinal, class Node>
136 { XPETRA_MONITOR("TpetraCrsGraph::getComm"); return graph_->getComm(); }
137 
138 template<class LocalOrdinal, class GlobalOrdinal, class Node>
140 { XPETRA_MONITOR("TpetraCrsGraph::getRowMap"); return toXpetra(graph_->getRowMap()); }
141 
142 template<class LocalOrdinal, class GlobalOrdinal, class Node>
144 { XPETRA_MONITOR("TpetraCrsGraph::getColMap"); return toXpetra(graph_->getColMap()); }
145 
146 template<class LocalOrdinal, class GlobalOrdinal, class Node>
148 { XPETRA_MONITOR("TpetraCrsGraph::getDomainMap"); return toXpetra(graph_->getDomainMap()); }
149 
150 template<class LocalOrdinal, class GlobalOrdinal, class Node>
152 { XPETRA_MONITOR("TpetraCrsGraph::getRangeMap"); return toXpetra(graph_->getRangeMap()); }
153 
154 template<class LocalOrdinal, class GlobalOrdinal, class Node>
156 { XPETRA_MONITOR("TpetraCrsGraph::getImporter"); return toXpetra(graph_->getImporter()); }
157 
158 template<class LocalOrdinal, class GlobalOrdinal, class Node>
160 { XPETRA_MONITOR("TpetraCrsGraph::getExporter"); return toXpetra(graph_->getExporter()); }
161 
162 template<class LocalOrdinal, class GlobalOrdinal, class Node>
164 { XPETRA_MONITOR("TpetraCrsGraph::getGlobalNumRows"); return graph_->getGlobalNumRows(); }
165 
166 template<class LocalOrdinal, class GlobalOrdinal, class Node>
168 { XPETRA_MONITOR("TpetraCrsGraph::getGlobalNumCols"); return graph_->getGlobalNumCols(); }
169 
170 template<class LocalOrdinal, class GlobalOrdinal, class Node>
172 { XPETRA_MONITOR("TpetraCrsGraph::getNodeNumRows"); return graph_->getNodeNumRows(); }
173 
174 template<class LocalOrdinal, class GlobalOrdinal, class Node>
176 { XPETRA_MONITOR("TpetraCrsGraph::getNodeNumCols"); return graph_->getNodeNumCols(); }
177 
178 template<class LocalOrdinal, class GlobalOrdinal, class Node>
180 { XPETRA_MONITOR("TpetraCrsGraph::getIndexBase"); return graph_->getIndexBase(); }
181 
182 template<class LocalOrdinal, class GlobalOrdinal, class Node>
184 { XPETRA_MONITOR("TpetraCrsGraph::getGlobalNumEntries"); return graph_->getGlobalNumEntries(); }
185 
186 template<class LocalOrdinal, class GlobalOrdinal, class Node>
188 { XPETRA_MONITOR("TpetraCrsGraph::getNodeNumEntries"); return graph_->getNodeNumEntries(); }
189 
190 template<class LocalOrdinal, class GlobalOrdinal, class Node>
192 { XPETRA_MONITOR("TpetraCrsGraph::getNumEntriesInGlobalRow"); return graph_->getNumEntriesInGlobalRow(globalRow); }
193 
194 template<class LocalOrdinal, class GlobalOrdinal, class Node>
196 { XPETRA_MONITOR("TpetraCrsGraph::getNumEntriesInLocalRow"); return graph_->getNumEntriesInLocalRow(localRow); }
197 
198 template<class LocalOrdinal, class GlobalOrdinal, class Node>
200 { XPETRA_MONITOR("TpetraCrsGraph::getNumAllocatedEntriesInGlobalRow"); return graph_->getNumAllocatedEntriesInGlobalRow(globalRow); }
201 
202 template<class LocalOrdinal, class GlobalOrdinal, class Node>
204 { XPETRA_MONITOR("TpetraCrsGraph::getNumAllocatedEntriesInLocalRow"); return graph_->getNumAllocatedEntriesInLocalRow(localRow); }
205 
206 template<class LocalOrdinal, class GlobalOrdinal, class Node>
208 { XPETRA_MONITOR("TpetraCrsGraph::getGlobalMaxNumRowEntries"); return graph_->getGlobalMaxNumRowEntries(); }
209 
210 template<class LocalOrdinal, class GlobalOrdinal, class Node>
212 { XPETRA_MONITOR("TpetraCrsGraph::getNodeMaxNumRowEntries"); return graph_->getNodeMaxNumRowEntries(); }
213 
214 template<class LocalOrdinal, class GlobalOrdinal, class Node>
216 { XPETRA_MONITOR("TpetraCrsGraph::hasColMap"); return graph_->hasColMap(); }
217 
218 template<class LocalOrdinal, class GlobalOrdinal, class Node>
220 { XPETRA_MONITOR("TpetraCrsGraph::isLocallyIndexed"); return graph_->isLocallyIndexed(); }
221 
222 template<class LocalOrdinal, class GlobalOrdinal, class Node>
224 { XPETRA_MONITOR("TpetraCrsGraph::isGloballyIndexed"); return graph_->isGloballyIndexed(); }
225 
226 template<class LocalOrdinal, class GlobalOrdinal, class Node>
228 { XPETRA_MONITOR("TpetraCrsGraph::isFillComplete"); return graph_->isFillComplete(); }
229 
230 template<class LocalOrdinal, class GlobalOrdinal, class Node>
232 { XPETRA_MONITOR("TpetraCrsGraph::isStorageOptimized"); return graph_->isStorageOptimized(); }
233 
234 template<class LocalOrdinal, class GlobalOrdinal, class Node>
236 { XPETRA_MONITOR("TpetraCrsGraph::getGlobalRowView"); graph_->getGlobalRowView(GlobalRow, Indices); }
237 
238 template<class LocalOrdinal, class GlobalOrdinal, class Node>
240 { XPETRA_MONITOR("TpetraCrsGraph::getLocalRowView"); graph_->getLocalRowView(LocalRow, indices); }
241 
242 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
243 template<class LocalOrdinal, class GlobalOrdinal, class Node>
245  return getTpetra_CrsGraph()->getLocalGraph();
246 }
247 #endif
248 
249 template<class LocalOrdinal, class GlobalOrdinal, class Node>
251  // mfh 07 May 2018: See GitHub Issue #2565.
252  constexpr bool computeLocalTriangularConstants = true;
253  graph_->computeGlobalConstants(computeLocalTriangularConstants);
254  }
255 
256 template<class LocalOrdinal, class GlobalOrdinal, class Node>
258 { XPETRA_MONITOR("TpetraCrsGraph::description"); return graph_->description(); }
259 
260 template<class LocalOrdinal, class GlobalOrdinal, class Node>
262 { XPETRA_MONITOR("TpetraCrsGraph::describe"); graph_->describe(out, verbLevel); }
263 
264 template<class LocalOrdinal, class GlobalOrdinal, class Node>
266 { XPETRA_MONITOR("TpetraCrsGraph::getNodeRowPtrs"); return graph_->getNodeRowPtrs(); }
267 
268 template<class LocalOrdinal, class GlobalOrdinal, class Node>
270 { XPETRA_MONITOR("TpetraCrsGraph::getMap"); return rcp( new TpetraMap< LocalOrdinal, GlobalOrdinal, Node >(graph_->getMap()) ); }
271 
272 template<class LocalOrdinal, class GlobalOrdinal, class Node>
275  XPETRA_MONITOR("TpetraCrsGraph::doImport");
276 
277  XPETRA_DYNAMIC_CAST(const TpetraCrsGraphClass, source, tSource, "Xpetra::TpetraCrsGraph::doImport only accept Xpetra::TpetraCrsGraph as input arguments.");//TODO: remove and use toTpetra()
278  RCP< const Tpetra::CrsGraph<LocalOrdinal, GlobalOrdinal, Node> > v = tSource.getTpetra_CrsGraph();
279  //graph_->doImport(toTpetraCrsGraph(source), *tImporter.getTpetra_Import(), toTpetra(CM));
280 
281  graph_->doImport(*v, toTpetra(importer), toTpetra(CM));
282 }
283 
284 template<class LocalOrdinal, class GlobalOrdinal, class Node>
287  XPETRA_MONITOR("TpetraCrsGraph::doExport");
288 
289  XPETRA_DYNAMIC_CAST(const TpetraCrsGraphClass, dest, tDest, "Xpetra::TpetraCrsGraph::doImport only accept Xpetra::TpetraCrsGraph as input arguments.");//TODO: remove and use toTpetra()
291  graph_->doExport(*v, toTpetra(importer), toTpetra(CM));
292 
293 }
294 
295 template<class LocalOrdinal, class GlobalOrdinal, class Node>
298  XPETRA_MONITOR("TpetraCrsGraph::doImport");
299 
300  XPETRA_DYNAMIC_CAST(const TpetraCrsGraphClass, source, tSource, "Xpetra::TpetraCrsGraph::doImport only accept Xpetra::TpetraCrsGraph as input arguments.");//TODO: remove and use toTpetra()
301  RCP< const Tpetra::CrsGraph<LocalOrdinal, GlobalOrdinal, Node> > v = tSource.getTpetra_CrsGraph();
302 
303  graph_->doImport(*v, toTpetra(exporter), toTpetra(CM));
304 
305 }
306 
307 template<class LocalOrdinal, class GlobalOrdinal, class Node>
310  XPETRA_MONITOR("TpetraCrsGraph::doExport");
311 
312  XPETRA_DYNAMIC_CAST(const TpetraCrsGraphClass, dest, tDest, "Xpetra::TpetraCrsGraph::doImport only accept Xpetra::TpetraCrsGraph as input arguments.");//TODO: remove and use toTpetra()
314 
315  graph_->doExport(*v, toTpetra(exporter), toTpetra(CM));
316 
317 }
318 
319 template<class LocalOrdinal, class GlobalOrdinal, class Node>
320 TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,Node>::TpetraCrsGraph(const Teuchos::RCP<Tpetra::CrsGraph<LocalOrdinal, GlobalOrdinal, Node> > &graph) : graph_(graph)
321 { }
322 
323 template<class LocalOrdinal, class GlobalOrdinal, class Node>
325 { return graph_; }
326 
327 
328 #ifdef HAVE_XPETRA_EPETRA
329 
330 #if ((defined(EPETRA_HAVE_OMP) && (!defined(HAVE_TPETRA_INST_OPENMP) || !defined(HAVE_TPETRA_INST_INT_INT))) || \
331  (!defined(EPETRA_HAVE_OMP) && (!defined(HAVE_TPETRA_INST_SERIAL) || !defined(HAVE_TPETRA_INST_INT_INT))))
332 
333  // specialization of TpetraCrsGraph for GO=LO=int
334  template <>
335  class TpetraCrsGraph<int,int,EpetraNode>
336  : public CrsGraph<int,int,EpetraNode>
337  {
338  typedef int LocalOrdinal;
339  typedef int GlobalOrdinal;
340  typedef EpetraNode Node;
341 
342  // The following typedef is used by the XPETRA_DYNAMIC_CAST() macro.
345 
346  public:
347 
349 
350 
352  TpetraCrsGraph(const RCP< const map_type > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null) {
354  }
355 
357  TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null) {
359  }
360 
362  TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null) {
364  }
365 
367  TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null) {
369  }
370 
371 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
393  const typename local_graph_type::row_map_type& rowPointers,
394  const typename local_graph_type::entries_type::non_const_type& columnIndices,
395  const Teuchos::RCP< Teuchos::ParameterList > &plist=Teuchos::null) {
398  "int",
399  typeid(EpetraNode).name());
400  }
401 
421  const Teuchos::RCP<const map_type>& colMap,
422  const local_graph_type& lclGraph,
423  const Teuchos::RCP<Teuchos::ParameterList>& params) {
424  XPETRA_TPETRA_ETI_EXCEPTION( typeid(TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,EpetraNode>).name(),
425  typeid(TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,EpetraNode>).name(),
426  "int",
427  typeid(EpetraNode).name());
428  }
429 
454  TpetraCrsGraph(const local_graph_type& lclGraph,
455  const Teuchos::RCP<const map_type>& rowMap,
456  const Teuchos::RCP<const map_type>& colMap,
457  const Teuchos::RCP<const map_type>& domainMap = Teuchos::null,
458  const Teuchos::RCP<const map_type>& rangeMap = Teuchos::null,
459  const Teuchos::RCP<Teuchos::ParameterList>& params = Teuchos::null) {
460  XPETRA_TPETRA_ETI_EXCEPTION( typeid(TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,EpetraNode>).name(),
461  typeid(TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,EpetraNode>).name(),
462  "int",
463  typeid(EpetraNode).name());
464  }
465 #endif
466 
468  virtual ~TpetraCrsGraph() { }
469 
471 
473 
474 
477 
479  void insertLocalIndices(const LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &indices) { }
480 
482  void removeLocalIndices(LocalOrdinal localRow) { }
483 
485 
487 
488 
490  void fillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null) { }
491 
493  void fillComplete(const RCP< ParameterList > &params=null) { }
494 
496 
498 
499 
501  RCP< const Comm< int > > getComm() const { return Teuchos::null; }
502 
505 
508 
511 
514 
517 
520 
522  global_size_t getGlobalNumRows() const { return 0; }
523 
525  global_size_t getGlobalNumCols() const { return 0; }
526 
528  size_t getNodeNumRows() const { return 0; }
529 
531  size_t getNodeNumCols() const { return 0; }
532 
534  GlobalOrdinal getIndexBase() const { return 0; }
535 
537  global_size_t getGlobalNumEntries() const { return 0; }
538 
540  size_t getNodeNumEntries() const { return 0; }
541 
543  size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const { return 0; }
544 
546  size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const { return 0; }
547 
549  size_t getNumAllocatedEntriesInGlobalRow(GlobalOrdinal globalRow) const { return 0; }
550 
552  size_t getNumAllocatedEntriesInLocalRow(LocalOrdinal localRow) const { return 0; }
553 
555  size_t getGlobalMaxNumRowEntries() const { return 0; }
556 
558  size_t getNodeMaxNumRowEntries() const { return 0; }
559 
561  bool hasColMap() const { return false; }
562 
564  bool isLocallyIndexed() const { return false; }
565 
567  bool isGloballyIndexed() const { return false; }
568 
570  bool isFillComplete() const { return false; }
571 
573  bool isStorageOptimized() const { return false; }
574 
577 
580 
581 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
582  local_graph_type getLocalGraph () const {
585  "Epetra does not support Kokkos::StaticCrsGraph!");
586  TEUCHOS_UNREACHABLE_RETURN((Kokkos::StaticCrsGraph<LocalOrdinal, Kokkos::LayoutLeft, execution_space>()));
587  }
588 #endif
589 
592 
594 
596 
597 
599  std::string description() const { return std::string(""); }
600 
603 
605 
607 
608 
611 
613 
615  //{@
616 
619 
623 
627 
631 
635 
636  // @}
637 
639 
640 
642  TpetraCrsGraph(const Teuchos::RCP<Tpetra::CrsGraph<LocalOrdinal, GlobalOrdinal, Node> > &graph) {
644  }
645 
648 
650  }; // TpetraCrsGraph class (specialization for LO=GO=int and NO=EpetraNode)
651 #endif
652 
653 #if ((defined(EPETRA_HAVE_OMP) && (!defined(HAVE_TPETRA_INST_OPENMP) || !defined(HAVE_TPETRA_INST_INT_LONG_LONG))) || \
654  (!defined(EPETRA_HAVE_OMP) && (!defined(HAVE_TPETRA_INST_SERIAL) || !defined(HAVE_TPETRA_INST_INT_LONG_LONG))))
655 
656  // specialization of TpetraCrsGraph for GO=long long and NO=EpetraNode
657  template <>
658  class TpetraCrsGraph<int,long long,EpetraNode>
659  : public CrsGraph<int,long long,EpetraNode>
660  {
661  typedef int LocalOrdinal;
662  typedef long long GlobalOrdinal;
663  typedef EpetraNode Node;
664 
665  // The following typedef is used by the XPETRA_DYNAMIC_CAST() macro.
668 
669  public:
670 
672 
673 
675  TpetraCrsGraph(const RCP< const map_type > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null) {
677  }
678 
680  TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null) {
682  }
683 
685  TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null) {
687  }
688 
690  TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null) {
692  }
693 
694 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
716  const typename local_graph_type::row_map_type& rowPointers,
717  const typename local_graph_type::entries_type::non_const_type& columnIndices,
718  const Teuchos::RCP< Teuchos::ParameterList > &plist=Teuchos::null) {
721  "int",
722  typeid(EpetraNode).name());
723  }
724 
744  const Teuchos::RCP<const map_type>& colMap,
745  const local_graph_type& lclGraph,
746  const Teuchos::RCP<Teuchos::ParameterList>& params) {
747  XPETRA_TPETRA_ETI_EXCEPTION( typeid(TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,EpetraNode>).name(),
748  typeid(TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,EpetraNode>).name(),
749  "int",
750  typeid(EpetraNode).name());
751  }
752 
777  TpetraCrsGraph(const local_graph_type& lclGraph,
778  const Teuchos::RCP<const map_type>& rowMap,
779  const Teuchos::RCP<const map_type>& colMap,
780  const Teuchos::RCP<const map_type>& domainMap = Teuchos::null,
781  const Teuchos::RCP<const map_type>& rangeMap = Teuchos::null,
782  const Teuchos::RCP<Teuchos::ParameterList>& params = Teuchos::null) {
783  XPETRA_TPETRA_ETI_EXCEPTION( typeid(TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,EpetraNode>).name(),
784  typeid(TpetraCrsGraph<LocalOrdinal,GlobalOrdinal,EpetraNode>).name(),
785  "int",
786  typeid(EpetraNode).name());
787  }
788 #endif
789 
791  virtual ~TpetraCrsGraph() { }
792 
794 
796 
797 
800 
802  void insertLocalIndices(const LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &indices) { }
803 
805  void removeLocalIndices(LocalOrdinal localRow) { }
806 
808 
810 
811 
813  void fillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null) { }
814 
816  void fillComplete(const RCP< ParameterList > &params=null) { }
817 
819 
821 
822 
824  RCP< const Comm< int > > getComm() const { return Teuchos::null; }
825 
828 
831 
834 
837 
840 
843 
845  global_size_t getGlobalNumRows() const { return 0; }
846 
848  global_size_t getGlobalNumCols() const { return 0; }
849 
851  size_t getNodeNumRows() const { return 0; }
852 
854  size_t getNodeNumCols() const { return 0; }
855 
857  GlobalOrdinal getIndexBase() const { return 0; }
858 
860  global_size_t getGlobalNumEntries() const { return 0; }
861 
863  size_t getNodeNumEntries() const { return 0; }
864 
866  size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const { return 0; }
867 
869  size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const { return 0; }
870 
872  size_t getNumAllocatedEntriesInGlobalRow(GlobalOrdinal globalRow) const { return 0; }
873 
875  size_t getNumAllocatedEntriesInLocalRow(LocalOrdinal localRow) const { return 0; }
876 
878  size_t getGlobalMaxNumRowEntries() const { return 0; }
879 
881  size_t getNodeMaxNumRowEntries() const { return 0; }
882 
884  bool hasColMap() const { return false; }
885 
887  bool isLocallyIndexed() const { return false; }
888 
890  bool isGloballyIndexed() const { return false; }
891 
893  bool isFillComplete() const { return false; }
894 
896  bool isStorageOptimized() const { return false; }
897 
900 
903 
904 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
905  local_graph_type getLocalGraph () const {
908  "Epetra does not support Kokkos::StaticCrsGraph!");
909  TEUCHOS_UNREACHABLE_RETURN((Kokkos::StaticCrsGraph<LocalOrdinal, Kokkos::LayoutLeft, execution_space>()));
910  }
911 #endif
912 
915 
917 
919 
920 
922  std::string description() const { return std::string(""); }
923 
926 
928 
930 
931 
934 
936 
938  //{@
939 
942 
946 
950 
954 
958 
959  // @}
960 
962 
963 
965  TpetraCrsGraph(const Teuchos::RCP<Tpetra::CrsGraph<LocalOrdinal, GlobalOrdinal, Node> > &graph) {
967  }
968 
971 
973  }; // TpetraCrsGraph class (specialization for GO=long long and NO=EpetraNode)
974 #endif
975 
976 #endif // HAVE_XPETRA_EPETRA
977 
978 
979 } // Xpetra namespace
980 #endif //XPETRA_TPETRACRSGRAPH_DEF_HPP
981 
Xpetra::TpetraCrsGraph::doImport
void doImport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Import.
Definition: Xpetra_TpetraCrsGraph_def.hpp:273
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNodeRowPtrs
ArrayRCP< const size_t > getNodeRowPtrs() const
Get an ArrayRCP of the row-offsets.
Definition: Xpetra_TpetraCrsGraph_def.hpp:610
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::isFillComplete
bool isFillComplete() const
Whether fillComplete() has been called and the graph is in compute mode.
Definition: Xpetra_TpetraCrsGraph_def.hpp:893
Xpetra::TpetraCrsGraph::getColMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap() const
Returns the Map that describes the column distribution in this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:143
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNodeMaxNumRowEntries
size_t getNodeMaxNumRowEntries() const
Maximum number of entries in all rows owned by the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:558
Kokkos::Compat::KokkosSerialWrapperNode
Definition: Kokkos_SerialNode.hpp:57
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNumEntriesInLocalRow
size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const
Returns the current number of entries on this node in the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:546
Xpetra::TpetraCrsGraph::getGlobalNumEntries
global_size_t getGlobalNumEntries() const
Returns the global number of entries in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:183
Xpetra::TpetraCrsGraph::getGlobalNumCols
global_size_t getGlobalNumCols() const
Returns the number of global columns in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:167
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::fillComplete
void fillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null)
Signal that data entry is complete, specifying domain and range maps.
Definition: Xpetra_TpetraCrsGraph_def.hpp:490
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph)
TpetraCrsGraph constructor to wrap a Tpetra::CrsGraph object.
Definition: Xpetra_TpetraCrsGraph_def.hpp:965
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::hasColMap
bool hasColMap() const
Whether the graph has a column Map.
Definition: Xpetra_TpetraCrsGraph_def.hpp:561
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::insertLocalIndices
void insertLocalIndices(const LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &indices)
Insert local indices into the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:479
Xpetra::TpetraCrsGraph::getDomainMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap() const
Returns the Map associated with the domain of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:147
Xpetra
Xpetra namespace
Definition: Xpetra_BlockedCrsMatrix.hpp:88
Xpetra::TpetraCrsGraph::getRowMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap() const
Returns the Map that describes the row distribution in this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:139
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNodeNumEntries
size_t getNodeNumEntries() const
Returns the local number of entries in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:540
Xpetra::TpetraCrsGraph::getLocalRowView
void getLocalRowView(LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices) const
Return a const, nonpersisting view of local indices in the given row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:239
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::doExport
void doExport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Export.
Definition: Xpetra_TpetraCrsGraph_def.hpp:625
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getComm
RCP< const Comm< int > > getComm() const
Returns the communicator.
Definition: Xpetra_TpetraCrsGraph_def.hpp:824
Xpetra::global_size_t
size_t global_size_t
Global size_t object.
Definition: Xpetra_ConfigDefs.hpp:174
Xpetra_CrsGraph.hpp
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::~TpetraCrsGraph
virtual ~TpetraCrsGraph()
Destructor.
Definition: Xpetra_TpetraCrsGraph_def.hpp:468
Xpetra::TpetraCrsGraph::getRangeMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap() const
Returns the Map associated with the domain of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:151
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::LocalOrdinal
int LocalOrdinal
Definition: Xpetra_TpetraCrsGraph_def.hpp:338
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::doExport
void doExport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Export.
Definition: Xpetra_TpetraCrsGraph_def.hpp:948
Xpetra::TpetraCrsGraph::getNumEntriesInGlobalRow
size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of entries on this node in the specified global row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:191
Xpetra::TpetraCrsGraph::TpetraCrsGraph
TpetraCrsGraph(const RCP< const map_type > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying fixed number of entries for each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:66
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getTpetra_CrsGraph
RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsGraph() const
Get the underlying Tpetra graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:970
Xpetra::TpetraCrsGraph::isGloballyIndexed
bool isGloballyIndexed() const
Whether column indices are stored using global indices on the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:223
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying column Map and fixed number of entries for each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:685
Xpetra::TpetraCrsGraph::isStorageOptimized
bool isStorageOptimized() const
Returns true if storage has been optimized.
Definition: Xpetra_TpetraCrsGraph_def.hpp:231
Xpetra::toTpetra
RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > toTpetra(const RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph)
Definition: Xpetra_TpetraCrsGraph_decl.hpp:378
Xpetra::DistObject
Definition: Xpetra_DistObject.hpp:66
Xpetra::DynamicProfile
@ DynamicProfile
Definition: Xpetra_ConfigDefs.hpp:191
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getExporter
RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > getExporter() const
Returns the exporter associated with this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:519
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const RCP< const map_type > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying fixed number of entries for each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:675
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::fillComplete
void fillComplete(const RCP< ParameterList > &params=null)
Signal that data entry is complete.
Definition: Xpetra_TpetraCrsGraph_def.hpp:493
Xpetra::TpetraCrsGraph::getGlobalMaxNumRowEntries
size_t getGlobalMaxNumRowEntries() const
Maximum number of entries in all rows over all processes.
Definition: Xpetra_TpetraCrsGraph_def.hpp:207
Xpetra::TpetraCrsGraph::getMap
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getMap() const
Implements DistObject interface.
Definition: Xpetra_TpetraCrsGraph_def.hpp:269
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getGlobalNumRows
global_size_t getGlobalNumRows() const
Returns the number of global rows in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:522
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNodeNumRows
size_t getNodeNumRows() const
Returns the number of graph rows owned on the calling node.
Definition: Xpetra_TpetraCrsGraph_def.hpp:851
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::describe
void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
Print the object with some verbosity level to an FancyOStream object.
Definition: Xpetra_TpetraCrsGraph_def.hpp:925
XPETRA_DYNAMIC_CAST
#define XPETRA_DYNAMIC_CAST(type, obj, newObj, exceptionMsg)
Definition: Xpetra_Exceptions.hpp:58
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getComm
RCP< const Comm< int > > getComm() const
Returns the communicator.
Definition: Xpetra_TpetraCrsGraph_def.hpp:501
Xpetra::TpetraCrsGraph::getNodeMaxNumRowEntries
size_t getNodeMaxNumRowEntries() const
Maximum number of entries in all rows owned by the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:211
Xpetra::Export
Definition: Xpetra_Export.hpp:64
Xpetra::TpetraCrsGraph::fillComplete
void fillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null)
Signal that data entry is complete, specifying domain and range maps.
Definition: Xpetra_TpetraCrsGraph_def.hpp:127
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::doExport
void doExport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &dest, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
Export (using an Importer).
Definition: Xpetra_TpetraCrsGraph_def.hpp:956
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::computeGlobalConstants
void computeGlobalConstants()
Dummy implementation for computeGlobalConstants.
Definition: Xpetra_TpetraCrsGraph_def.hpp:914
Xpetra::toXpetra
RCP< const CrsGraph< int, GlobalOrdinal, Node > > toXpetra(const Epetra_CrsGraph &g)
Definition: Xpetra_EpetraCrsGraph.cpp:168
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getMap
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getMap() const
Implements DistObject interface.
Definition: Xpetra_TpetraCrsGraph_def.hpp:618
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNumAllocatedEntriesInGlobalRow
size_t getNumAllocatedEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of allocated entries for this node in the specified global row .
Definition: Xpetra_TpetraCrsGraph_def.hpp:872
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNodeNumCols
size_t getNodeNumCols() const
Returns the number of columns connected to the locally owned rows of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:854
rcp
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNumEntriesInGlobalRow
size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of entries on this node in the specified global row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:543
Teuchos::EVerbosityLevel
EVerbosityLevel
Xpetra_Utils.hpp
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getExporter
RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > getExporter() const
Returns the exporter associated with this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:842
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::doExport
void doExport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &dest, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
Export (using an Importer).
Definition: Xpetra_TpetraCrsGraph_def.hpp:633
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::Node
EpetraNode Node
Definition: Xpetra_TpetraCrsGraph_def.hpp:340
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getLocalRowView
void getLocalRowView(LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices) const
Return a const, nonpersisting view of local indices in the given row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:579
Teuchos::ArrayView
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::computeGlobalConstants
void computeGlobalConstants()
Dummy implementation for computeGlobalConstants.
Definition: Xpetra_TpetraCrsGraph_def.hpp:591
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getRangeMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap() const
Returns the Map associated with the domain of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:836
Xpetra::Map
Definition: Xpetra_Map_decl.hpp:91
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::fillComplete
void fillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null)
Signal that data entry is complete, specifying domain and range maps.
Definition: Xpetra_TpetraCrsGraph_def.hpp:813
Xpetra::Import
Definition: Xpetra_Import.hpp:64
Xpetra::CombineMode
CombineMode
Xpetra::Combine Mode enumerable type.
Definition: Xpetra_ConfigDefs.hpp:218
Xpetra::TpetraCrsGraph::getNodeNumRows
size_t getNodeNumRows() const
Returns the number of graph rows owned on the calling node.
Definition: Xpetra_TpetraCrsGraph_def.hpp:171
Xpetra_TpetraCrsGraph_decl.hpp
Xpetra::TpetraCrsGraph::getGlobalRowView
void getGlobalRowView(GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &Indices) const
Return a const, nonpersisting view of global indices in the given row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:235
Teuchos::RCP
Xpetra::TpetraCrsGraph::getNumAllocatedEntriesInGlobalRow
size_t getNumAllocatedEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of allocated entries for this node in the specified global row .
Definition: Xpetra_TpetraCrsGraph_def.hpp:199
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::GlobalOrdinal
long long GlobalOrdinal
Definition: Xpetra_TpetraCrsGraph_def.hpp:662
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNumAllocatedEntriesInGlobalRow
size_t getNumAllocatedEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of allocated entries for this node in the specified global row .
Definition: Xpetra_TpetraCrsGraph_def.hpp:549
Xpetra::TpetraCrsGraph::~TpetraCrsGraph
virtual ~TpetraCrsGraph()
Destructor.
Definition: Xpetra_TpetraCrsGraph_def.hpp:112
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getColMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap() const
Returns the Map that describes the column distribution in this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:507
Xpetra::TpetraCrsGraph::computeGlobalConstants
void computeGlobalConstants()
Force the computation of global constants if we don't have them.
Definition: Xpetra_TpetraCrsGraph_def.hpp:250
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::doImport
void doImport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
Import (using an Exporter).
Definition: Xpetra_TpetraCrsGraph_def.hpp:952
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::hasColMap
bool hasColMap() const
Whether the graph has a column Map.
Definition: Xpetra_TpetraCrsGraph_def.hpp:884
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNodeMaxNumRowEntries
size_t getNodeMaxNumRowEntries() const
Maximum number of entries in all rows owned by the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:881
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying column Map and number of entries in each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:690
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::isStorageOptimized
bool isStorageOptimized() const
Returns true if storage has been optimized.
Definition: Xpetra_TpetraCrsGraph_def.hpp:896
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getColMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap() const
Returns the Map that describes the column distribution in this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:830
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const RCP< const map_type > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying fixed number of entries for each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:352
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getIndexBase
GlobalOrdinal getIndexBase() const
Returns the index base for global indices for this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:857
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getDomainMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap() const
Returns the Map associated with the domain of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:510
Xpetra::TpetraCrsGraph::getImporter
RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > getImporter() const
Returns the importer associated with this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:155
Teuchos::ArrayRCP
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getMap
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getMap() const
Implements DistObject interface.
Definition: Xpetra_TpetraCrsGraph_def.hpp:941
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::doImport
void doImport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
Import (using an Exporter).
Definition: Xpetra_TpetraCrsGraph_def.hpp:629
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getIndexBase
GlobalOrdinal getIndexBase() const
Returns the index base for global indices for this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:534
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNodeRowPtrs
ArrayRCP< const size_t > getNodeRowPtrs() const
Get an ArrayRCP of the row-offsets.
Definition: Xpetra_TpetraCrsGraph_def.hpp:933
Xpetra::TpetraCrsGraph::getNodeNumCols
size_t getNodeNumCols() const
Returns the number of columns connected to the locally owned rows of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:175
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNumEntriesInLocalRow
size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const
Returns the current number of entries on this node in the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:869
Xpetra::Exceptions::RuntimeError
Exception throws to report errors in the internal logical of the program.
Definition: Xpetra_Exceptions.hpp:102
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::isLocallyIndexed
bool isLocallyIndexed() const
Whether column indices are stored using local indices on the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:564
Xpetra::TpetraCrsGraph::insertGlobalIndices
void insertGlobalIndices(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &indices)
Insert global indices into the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:115
Teuchos::basic_FancyOStream
XPETRA_TPETRA_ETI_EXCEPTION
#define XPETRA_TPETRA_ETI_EXCEPTION(cl, obj, go, node)
Definition: Xpetra_Exceptions.hpp:79
Xpetra::CrsGraph
Definition: Xpetra_CrsGraph.hpp:86
Xpetra::TpetraMap
Definition: Xpetra_TpetraMap_decl.hpp:69
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::map_type
Map< LocalOrdinal, GlobalOrdinal, Node > map_type
Definition: Xpetra_TpetraCrsGraph_def.hpp:667
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying (possibly different) number of entries in each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:680
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::removeLocalIndices
void removeLocalIndices(LocalOrdinal localRow)
Remove all graph indices from the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:482
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getLocalRowView
void getLocalRowView(LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices) const
Return a const, nonpersisting view of local indices in the given row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:902
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getDomainMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap() const
Returns the Map associated with the domain of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:833
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNumAllocatedEntriesInLocalRow
size_t getNumAllocatedEntriesInLocalRow(LocalOrdinal localRow) const
Returns the current number of allocated entries on this node in the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:875
Xpetra::TpetraCrsGraph::hasColMap
bool hasColMap() const
Whether the graph has a column Map.
Definition: Xpetra_TpetraCrsGraph_def.hpp:215
Xpetra::TpetraCrsGraph::getExporter
RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > getExporter() const
Returns the exporter associated with this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:159
Xpetra::TpetraCrsGraph::getGlobalNumRows
global_size_t getGlobalNumRows() const
Returns the number of global rows in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:163
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNodeNumEntries
size_t getNodeNumEntries() const
Returns the local number of entries in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:863
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::isGloballyIndexed
bool isGloballyIndexed() const
Whether column indices are stored using global indices on the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:890
Xpetra::TpetraCrsGraph::removeLocalIndices
void removeLocalIndices(LocalOrdinal localRow)
Remove all graph indices from the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:123
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::LocalOrdinal
int LocalOrdinal
Definition: Xpetra_TpetraCrsGraph_def.hpp:661
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getRangeMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap() const
Returns the Map associated with the domain of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:513
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getImporter
RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > getImporter() const
Returns the importer associated with this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:839
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::describe
void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
Print the object with some verbosity level to an FancyOStream object.
Definition: Xpetra_TpetraCrsGraph_def.hpp:602
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getGlobalRowView
void getGlobalRowView(GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &Indices) const
Return a const, nonpersisting view of global indices in the given row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:576
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::removeLocalIndices
void removeLocalIndices(LocalOrdinal localRow)
Remove all graph indices from the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:805
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getGlobalNumEntries
global_size_t getGlobalNumEntries() const
Returns the global number of entries in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:537
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getGlobalNumRows
global_size_t getGlobalNumRows() const
Returns the number of global rows in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:845
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNodeNumRows
size_t getNodeNumRows() const
Returns the number of graph rows owned on the calling node.
Definition: Xpetra_TpetraCrsGraph_def.hpp:528
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::insertGlobalIndices
void insertGlobalIndices(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &indices)
Insert global indices into the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:476
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::GlobalOrdinal
int GlobalOrdinal
Definition: Xpetra_TpetraCrsGraph_def.hpp:339
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::TpetraCrsGraphClass
TpetraCrsGraph< LocalOrdinal, GlobalOrdinal, Node > TpetraCrsGraphClass
Definition: Xpetra_TpetraCrsGraph_def.hpp:666
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::description
std::string description() const
Return a simple one-line description of this object.
Definition: Xpetra_TpetraCrsGraph_def.hpp:922
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getTpetra_CrsGraph
RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsGraph() const
Get the underlying Tpetra graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:647
Xpetra::TpetraCrsGraph::getTpetra_CrsGraph
RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsGraph() const
Get the underlying Tpetra graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:324
Xpetra::TpetraCrsGraph::description
std::string description() const
Return a simple one-line description of this object.
Definition: Xpetra_TpetraCrsGraph_def.hpp:257
Xpetra_TpetraConfigDefs.hpp
Xpetra::TpetraCrsGraph::isLocallyIndexed
bool isLocallyIndexed() const
Whether column indices are stored using local indices on the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:219
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::isGloballyIndexed
bool isGloballyIndexed() const
Whether column indices are stored using global indices on the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:567
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::map_type
Map< LocalOrdinal, GlobalOrdinal, Node > map_type
Definition: Xpetra_TpetraCrsGraph_def.hpp:344
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getGlobalNumEntries
global_size_t getGlobalNumEntries() const
Returns the global number of entries in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:860
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::Node
EpetraNode Node
Definition: Xpetra_TpetraCrsGraph_def.hpp:663
Xpetra::TpetraCrsGraph::doExport
void doExport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Export.
Definition: Xpetra_TpetraCrsGraph_def.hpp:285
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::insertLocalIndices
void insertLocalIndices(const LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &indices)
Insert local indices into the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:802
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getGlobalMaxNumRowEntries
size_t getGlobalMaxNumRowEntries() const
Maximum number of entries in all rows over all processes.
Definition: Xpetra_TpetraCrsGraph_def.hpp:878
Xpetra::TpetraCrsGraph::getNumEntriesInLocalRow
size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const
Returns the current number of entries on this node in the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:195
Xpetra_Exceptions.hpp
Xpetra::TpetraCrsGraph::insertLocalIndices
void insertLocalIndices(const LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &indices)
Insert local indices into the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:119
Xpetra::TpetraCrsGraph::getComm
RCP< const Comm< int > > getComm() const
Returns the communicator.
Definition: Xpetra_TpetraCrsGraph_def.hpp:135
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getRowMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap() const
Returns the Map that describes the row distribution in this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:827
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::TpetraCrsGraphClass
TpetraCrsGraph< LocalOrdinal, GlobalOrdinal, Node > TpetraCrsGraphClass
Definition: Xpetra_TpetraCrsGraph_def.hpp:343
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getNumEntriesInGlobalRow
size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of entries on this node in the specified global row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:866
Xpetra::TpetraCrsGraph::isFillComplete
bool isFillComplete() const
Whether fillComplete() has been called and the graph is in compute mode.
Definition: Xpetra_TpetraCrsGraph_def.hpp:227
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::doImport
void doImport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Import.
Definition: Xpetra_TpetraCrsGraph_def.hpp:944
Xpetra::TpetraCrsGraph::getNumAllocatedEntriesInLocalRow
size_t getNumAllocatedEntriesInLocalRow(LocalOrdinal localRow) const
Returns the current number of allocated entries on this node in the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:203
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::description
std::string description() const
Return a simple one-line description of this object.
Definition: Xpetra_TpetraCrsGraph_def.hpp:599
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNodeNumCols
size_t getNodeNumCols() const
Returns the number of columns connected to the locally owned rows of this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:531
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::insertGlobalIndices
void insertGlobalIndices(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &indices)
Insert global indices into the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:799
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getNumAllocatedEntriesInLocalRow
size_t getNumAllocatedEntriesInLocalRow(LocalOrdinal localRow) const
Returns the current number of allocated entries on this node in the specified local row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:552
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getImporter
RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > getImporter() const
Returns the importer associated with this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:516
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getGlobalNumCols
global_size_t getGlobalNumCols() const
Returns the number of global columns in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:525
Teuchos
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying (possibly different) number of entries in each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:357
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::isStorageOptimized
bool isStorageOptimized() const
Returns true if storage has been optimized.
Definition: Xpetra_TpetraCrsGraph_def.hpp:573
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::doImport
void doImport(const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Import.
Definition: Xpetra_TpetraCrsGraph_def.hpp:621
Xpetra::TpetraCrsGraph::getIndexBase
GlobalOrdinal getIndexBase() const
Returns the index base for global indices for this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:179
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::~TpetraCrsGraph
virtual ~TpetraCrsGraph()
Destructor.
Definition: Xpetra_TpetraCrsGraph_def.hpp:791
Teuchos::Describable::verbLevel_default
static const EVerbosityLevel verbLevel_default
TEUCHOS_TEST_FOR_EXCEPTION
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::isFillComplete
bool isFillComplete() const
Whether fillComplete() has been called and the graph is in compute mode.
Definition: Xpetra_TpetraCrsGraph_def.hpp:570
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::isLocallyIndexed
bool isLocallyIndexed() const
Whether column indices are stored using local indices on the calling process.
Definition: Xpetra_TpetraCrsGraph_def.hpp:887
XPETRA_MONITOR
#define XPETRA_MONITOR(funcName)
Definition: Xpetra_ConfigDefs.hpp:132
Xpetra::TpetraCrsGraph::getNodeRowPtrs
ArrayRCP< const size_t > getNodeRowPtrs() const
Get an ArrayRCP of the row-offsets.
Definition: Xpetra_TpetraCrsGraph_def.hpp:265
Xpetra::TpetraCrsGraph::describe
void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
Print the object with some verbosity level to an FancyOStream object.
Definition: Xpetra_TpetraCrsGraph_def.hpp:261
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph)
TpetraCrsGraph constructor to wrap a Tpetra::CrsGraph object.
Definition: Xpetra_TpetraCrsGraph_def.hpp:642
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying column Map and number of entries in each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:367
Xpetra::TpetraCrsGraph
Definition: Xpetra_TpetraCrsGraph_decl.hpp:70
Xpetra::TpetraCrsGraph::getNodeNumEntries
size_t getNodeNumEntries() const
Returns the local number of entries in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:187
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getGlobalNumCols
global_size_t getGlobalNumCols() const
Returns the number of global columns in the graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:848
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::getGlobalRowView
void getGlobalRowView(GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &Indices) const
Return a const, nonpersisting view of global indices in the given row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:899
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getGlobalMaxNumRowEntries
size_t getGlobalMaxNumRowEntries() const
Maximum number of entries in all rows over all processes.
Definition: Xpetra_TpetraCrsGraph_def.hpp:555
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::TpetraCrsGraph
TpetraCrsGraph(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const RCP< ParameterList > &params=null)
Constructor specifying column Map and fixed number of entries for each row.
Definition: Xpetra_TpetraCrsGraph_def.hpp:362
Xpetra::TpetraCrsGraph< int, long long, EpetraNode >::fillComplete
void fillComplete(const RCP< ParameterList > &params=null)
Signal that data entry is complete.
Definition: Xpetra_TpetraCrsGraph_def.hpp:816
Xpetra::ProfileType
ProfileType
Definition: Xpetra_ConfigDefs.hpp:189
TEUCHOS_UNREACHABLE_RETURN
#define TEUCHOS_UNREACHABLE_RETURN(dummyReturnVal)
Xpetra::TpetraCrsGraph< int, int, EpetraNode >::getRowMap
RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap() const
Returns the Map that describes the row distribution in this graph.
Definition: Xpetra_TpetraCrsGraph_def.hpp:504