Xpetra_TpetraCrsMatrix_decl.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_TPETRACRSMATRIX_DECL_HPP
47 #define XPETRA_TPETRACRSMATRIX_DECL_HPP
48 
49 /* this file is automatically generated - do not edit (see scripts/tpetra.py) */
50 
51 // FIXME (mfh 03 Sep 2014) The above is probably not true anymore.
52 // Furthermore, I don't think anyone maintains the scripts.
53 // Feel free to correct this comment if I'm wrong.
54 
56 
57 #include "Tpetra_CrsMatrix.hpp"
58 #include "Tpetra_replaceDiagonalCrsMatrix.hpp"
59 
60 #include "Xpetra_CrsMatrix.hpp"
61 #include "Xpetra_TpetraMap.hpp"
62 #include "Xpetra_TpetraMultiVector.hpp"
63 #include "Xpetra_TpetraVector.hpp"
64 #include "Xpetra_TpetraCrsGraph.hpp"
65 #include "Xpetra_Exceptions.hpp"
66 
67 namespace Xpetra {
68 
69  template<class Scalar,
70  class LocalOrdinal,
71  class GlobalOrdinal,
74  : public CrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node> //, public TpetraRowMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node>
75  {
76 
77  // The following typedef are used by the XPETRA_DYNAMIC_CAST() macro.
82 
83  // The following typedefs are used by the Kokkos interface
84 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
85 #ifdef HAVE_XPETRA_TPETRA
87 #endif
88 #endif
89 
90  public:
91 
93 
94 
96  TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null);
97 
99  TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null);
100 
102  TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null);
103 
106 
109 
113  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
114  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
115  const Teuchos::RCP<Teuchos::ParameterList>& params = Teuchos::null);
116 
120  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
121  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
122  const Teuchos::RCP<Teuchos::ParameterList>& params = Teuchos::null);
123 
126  const Import<LocalOrdinal,GlobalOrdinal,Node> & RowImporter,
127  const Teuchos::RCP<const Import<LocalOrdinal,GlobalOrdinal,Node> > DomainImporter,
128  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap,
129  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap,
131 
134  const Export<LocalOrdinal,GlobalOrdinal,Node> & RowExporter,
135  const Teuchos::RCP<const Export<LocalOrdinal,GlobalOrdinal,Node> > DomainExporter,
136  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap,
137  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap,
139 
140 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
141 #ifdef HAVE_XPETRA_TPETRA
164  const local_matrix_type& lclMatrix,
165  const Teuchos::RCP<Teuchos::ParameterList>& params = null);
166 
169  const local_matrix_type& lclMatrix,
172  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
173  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
174  const Teuchos::RCP<Teuchos::ParameterList>& params = null);
175 #endif
176 #endif
177 
179  virtual ~TpetraCrsMatrix();
180 
182 
184 
185 
187  void insertGlobalValues(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals);
188 
190  void insertLocalValues(LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals);
191 
193  void replaceGlobalValues(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals);
194 
196  void
197  replaceLocalValues (LocalOrdinal localRow,
198  const ArrayView<const LocalOrdinal> &cols,
199  const ArrayView<const Scalar> &vals);
200 
202  void setAllToScalar(const Scalar &alpha);
203 
205  void scale(const Scalar &alpha);
206 
208  //** \warning This is an expert-only routine and should not be called from user code. */
209  void allocateAllValues(size_t numNonZeros,ArrayRCP<size_t> & rowptr, ArrayRCP<LocalOrdinal> & colind, ArrayRCP<Scalar> & values)
210  ;
211 
213  void setAllValues(const ArrayRCP<size_t> & rowptr, const ArrayRCP<LocalOrdinal> & colind, const ArrayRCP<Scalar> & values)
214  ;
215 
218  ;
219 
220  bool haveGlobalConstants() const
221  ;
222 
224 
226 
227 
229  void resumeFill(const RCP< ParameterList > &params=null);
230 
232  void fillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null);
233 
235  void fillComplete(const RCP< ParameterList > &params=null);
236 
237 
240 
243  const RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> > & rangeMap,
244  const RCP<const Import<LocalOrdinal,GlobalOrdinal,Node> > &importer=Teuchos::null,
245  const RCP<const Export<LocalOrdinal,GlobalOrdinal,Node> > &exporter=Teuchos::null,
246  const RCP<ParameterList> &params=Teuchos::null);
247 
249 
251 
252 
255 
258 
261 
264 
267 
269  size_t getNodeNumRows() const;
270 
272  size_t getNodeNumCols() const;
273 
276 
278  size_t getNodeNumEntries() const;
279 
281  size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const;
282 
284  size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const;
285 
287  size_t getGlobalMaxNumRowEntries() const;
288 
290  size_t getNodeMaxNumRowEntries() const;
291 
293  bool isLocallyIndexed() const;
294 
296  bool isGloballyIndexed() const;
297 
299  bool isFillComplete() const;
300 
302  bool isFillActive() const;
303 
306 
308  bool supportsRowViews() const;
309 
311  void getLocalRowCopy(LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &Indices, const ArrayView< Scalar > &Values, size_t &NumEntries) const;
312 
314  void getGlobalRowView(GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &indices, ArrayView< const Scalar > &values) const;
315 
317  void getGlobalRowCopy(GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &indices, const ArrayView< Scalar > &values, size_t &numEntries) const;
318 
320  void getLocalRowView(LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices, ArrayView< const Scalar > &values) const;
321 
323 
325 
326 
329 
332 
335 
337 
339 
340 
342  std::string description() const;
343 
346 
348 
350 
351  void setObjectLabel( const std::string &objectLabel );
353 
354 
355 
357  TpetraCrsMatrix(const TpetraCrsMatrix& matrix);
358 
361 
363  void getLocalDiagOffsets(Teuchos::ArrayRCP<size_t> &offsets) const;
364 
367 
370 
373 
376 
378  //{@
379 
382 
386 
390 
394 
398 
400 
401  // @}
402 #ifdef XPETRA_ENABLE_DEPRECATED_CODE
403  template<class Node2>
405  clone (const RCP<Node2> &node2) const
406  {
408  }
409 #endif
410 
412 
413 
415  bool hasMatrix() const;
416 
418  TpetraCrsMatrix(const Teuchos::RCP<Tpetra::CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > &mtx);
419 
422 
425 
426 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
427 #ifdef HAVE_XPETRA_TPETRA
428  local_matrix_type getLocalMatrix () const {
430  return getTpetra_CrsMatrixNonConst()->getLocalMatrix();
431  }
432 
433  void setAllValues (const typename local_matrix_type::row_map_type& ptr,
434  const typename local_matrix_type::StaticCrsGraphType::entries_type::non_const_type& ind,
435  const typename local_matrix_type::values_type& val) {
436  getTpetra_CrsMatrixNonConst()->setAllValues(ptr,ind,val);
437  }
438 #endif
439 #endif
440 
442 
443  private:
445  }; // TpetraCrsMatrix class
446 
447 #ifdef HAVE_XPETRA_EPETRA
448 
449 #if ((defined(EPETRA_HAVE_OMP) && (!defined(HAVE_TPETRA_INST_OPENMP) || !defined(HAVE_TPETRA_INST_INT_INT))) || \
450  (!defined(EPETRA_HAVE_OMP) && (!defined(HAVE_TPETRA_INST_SERIAL) || !defined(HAVE_TPETRA_INST_INT_INT))))
451 
452  // specialization of TpetraCrsMatrix for GO=LO=int
453  template<class Scalar>
454  class TpetraCrsMatrix<Scalar,int,int,EpetraNode>
455  : public CrsMatrix<Scalar,int,int,EpetraNode> //, public TpetraRowMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node>
456  {
457  typedef int LocalOrdinal;
458  typedef int GlobalOrdinal;
459  typedef EpetraNode Node;
460  // The following typedef are used by the XPETRA_DYNAMIC_CAST() macro.
465 
466  // The following typedefs are used by the Kokkos interface
467 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
468 #ifdef HAVE_XPETRA_TPETRA
470 #endif
471 #endif
472 
473  public:
474 
476 
477 
479  TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null) {
481  }
482 
486  }
487 
489  TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null) {
491  }
492 
496  }
497 
501  }
502 
503 
504 
508  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
509  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
510  const Teuchos::RCP<Teuchos::ParameterList>& params = Teuchos::null) {
512  }
513 
517  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
518  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
519  const Teuchos::RCP<Teuchos::ParameterList>& params = Teuchos::null) {
521  }
522 
525  const Import<LocalOrdinal,GlobalOrdinal,Node> & RowImporter,
526  const Teuchos::RCP<const Import<LocalOrdinal,GlobalOrdinal,Node> > DomainImporter,
527  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap,
528  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap,
530  {
532  }
533 
536  const Export<LocalOrdinal,GlobalOrdinal,Node> & RowExporter,
537  const Teuchos::RCP<const Export<LocalOrdinal,GlobalOrdinal,Node> > DomainExporter,
538  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap,
539  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap,
541  {
543  }
544 
545 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
546 #ifdef HAVE_XPETRA_TPETRA
569  const local_matrix_type& lclMatrix,
570  const Teuchos::RCP<Teuchos::ParameterList>& params = null) {
571  XPETRA_TPETRA_ETI_EXCEPTION( typeid(TpetraCrsMatrix<Scalar,int,int,EpetraNode>).name() , "TpetraCrsMatrix<int,int>", "int", typeid(EpetraNode).name() );
572  }
573 
576  const local_matrix_type& lclMatrix,
577  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rowMap,
578  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& colMap,
579  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
580  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
581  const Teuchos::RCP<Teuchos::ParameterList>& params = null) {
582  XPETRA_TPETRA_ETI_EXCEPTION( typeid(TpetraCrsMatrix<Scalar,int,int,EpetraNode>).name() , "TpetraCrsMatrix<int,int>", "int", typeid(EpetraNode).name() );
583  }
584 #endif
585 #endif
586 
588  virtual ~TpetraCrsMatrix() { }
589 
591 
593 
594 
597 
600 
603 
605  void
607  const ArrayView<const LocalOrdinal> &cols,
608  const ArrayView<const Scalar> &vals)
609  { }
610 
612  void setAllToScalar(const Scalar &alpha) { }
613 
615  void scale(const Scalar &alpha) { }
616 
618  //** \warning This is an expert-only routine and should not be called from user code. */
619  void allocateAllValues(size_t numNonZeros,ArrayRCP<size_t> & rowptr, ArrayRCP<LocalOrdinal> & colind, ArrayRCP<Scalar> & values) { }
620 
622  void setAllValues(const ArrayRCP<size_t> & rowptr, const ArrayRCP<LocalOrdinal> & colind, const ArrayRCP<Scalar> & values) { }
623 
626 
627  bool haveGlobalConstants() const { return false;}
628 
630 
632 
633 
635  void resumeFill(const RCP< ParameterList > &params=null) { }
636 
638  void fillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null) { }
639 
641  void fillComplete(const RCP< ParameterList > &params=null) { }
642 
643 
646 
649  const RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> > & rangeMap,
650  const RCP<const Import<LocalOrdinal,GlobalOrdinal,Node> > &importer=Teuchos::null,
651  const RCP<const Export<LocalOrdinal,GlobalOrdinal,Node> > &exporter=Teuchos::null,
652  const RCP<ParameterList> &params=Teuchos::null) { }
653 
655 
657 
658 
660  const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap() const { return Teuchos::null; }
661 
663  const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap() const { return Teuchos::null; }
664 
667 
669  global_size_t getGlobalNumRows() const { return 0; }
670 
672  global_size_t getGlobalNumCols() const { return 0; }
673 
675  size_t getNodeNumRows() const { return 0; }
676 
678  size_t getNodeNumCols() const { return 0; }
679 
681  global_size_t getGlobalNumEntries() const { return 0; }
682 
684  size_t getNodeNumEntries() const { return 0; }
685 
687  size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const { return 0; }
688 
690  size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const { return 0; }
691 
693  size_t getGlobalMaxNumRowEntries() const { return 0; }
694 
696  size_t getNodeMaxNumRowEntries() const { return 0; }
697 
699  bool isLocallyIndexed() const { return false; }
700 
702  bool isGloballyIndexed() const { return false; }
703 
705  bool isFillComplete() const { return false; }
706 
708  bool isFillActive() const { return false; }
709 
712 
714  bool supportsRowViews() const { return false; }
715 
717  void getLocalRowCopy(LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &Indices, const ArrayView< Scalar > &Values, size_t &NumEntries) const { }
718 
721 
723  void getGlobalRowCopy(GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &indices, const ArrayView< Scalar > &values, size_t &numEntries) const { }
724 
727 
729 
731 
732 
735 
737  const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap() const { return Teuchos::null; }
738 
740  const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap() const { return Teuchos::null; }
741 
743 
745 
746 
748  std::string description() const { return std::string(""); }
749 
752 
754 
756 
757  void setObjectLabel( const std::string &objectLabel ) { }
759 
760 
763 
766 
769 
772 
775 
778 
781 
783  //{@
784 
787 
791 
795 
799 
803 
805 
806  // @}
807 #ifdef XPETRA_ENABLE_DEPRECATED_CODE
808  template<class Node2>
810  clone (const RCP<Node2> &node2) const { return Teuchos::null; }
811 #endif
812 
814 
816  bool hasMatrix() const { return false; }
817 
819  TpetraCrsMatrix(const Teuchos::RCP<Tpetra::CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > &mtx) {
821  }
822 
825 
828 
829 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
830 #ifdef HAVE_XPETRA_TPETRA
831  local_matrix_type getLocalMatrix () const {
833  TEUCHOS_UNREACHABLE_RETURN(local_matrix_type());
834  }
835 
836  void setAllValues (const typename local_matrix_type::row_map_type& ptr,
837  const typename local_matrix_type::StaticCrsGraphType::entries_type::non_const_type& ind,
838  const typename local_matrix_type::values_type& val) { }
839 #endif
840 #endif
841 
843  }; // TpetraCrsMatrix class (specialization for GO=int, NO=EpetraNode)
844 #endif
845 
846 #if ((defined(EPETRA_HAVE_OMP) && (!defined(HAVE_TPETRA_INST_OPENMP) || !defined(HAVE_TPETRA_INST_INT_LONG_LONG))) || \
847  (!defined(EPETRA_HAVE_OMP) && (!defined(HAVE_TPETRA_INST_SERIAL) || !defined(HAVE_TPETRA_INST_INT_LONG_LONG))))
848 
849  // specialization of TpetraCrsMatrix for GO=long long, NO=EpetraNode
850  template<class Scalar>
851  class TpetraCrsMatrix<Scalar,int,long long,EpetraNode>
852  : public CrsMatrix<Scalar,int,long long,EpetraNode> //, public TpetraRowMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node>
853  {
854  typedef int LocalOrdinal;
855  typedef long long GlobalOrdinal;
856  typedef EpetraNode Node;
857  // The following typedef are used by the XPETRA_DYNAMIC_CAST() macro.
862 
863  // The following typedefs are used by the Kokkos interface
864 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
865 #ifdef HAVE_XPETRA_TPETRA
867 #endif
868 #endif
869 
870  public:
871 
873 
874 
876  TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null) {
878  }
879 
883  }
884 
886  TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null) {
888  }
889 
893  }
894 
898  }
899 
900 
901 
905  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
906  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
907  const Teuchos::RCP<Teuchos::ParameterList>& params = Teuchos::null) {
909  }
910 
914  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
915  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
916  const Teuchos::RCP<Teuchos::ParameterList>& params = Teuchos::null) {
918  }
919 
922  const Import<LocalOrdinal,GlobalOrdinal,Node> & RowImporter,
923  const Teuchos::RCP<const Import<LocalOrdinal,GlobalOrdinal,Node> > DomainImporter,
924  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap,
925  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap,
927  {
929  }
930 
933  const Export<LocalOrdinal,GlobalOrdinal,Node> & RowExporter,
934  const Teuchos::RCP<const Export<LocalOrdinal,GlobalOrdinal,Node> > DomainExporter,
935  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap,
936  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap,
938  {
940  }
941 
942 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
943 #ifdef HAVE_XPETRA_TPETRA
966  const local_matrix_type& lclMatrix,
967  const Teuchos::RCP<Teuchos::ParameterList>& params = null) {
969  }
970 
973  const local_matrix_type& lclMatrix,
974  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rowMap,
975  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& colMap,
976  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& domainMap = Teuchos::null,
977  const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& rangeMap = Teuchos::null,
978  const Teuchos::RCP<Teuchos::ParameterList>& params = null) {
979  XPETRA_TPETRA_ETI_EXCEPTION( typeid(TpetraCrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,EpetraNode>).name() , typeid(TpetraCrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,EpetraNode>).name(), "long long", typeid(EpetraNode).name() );
980  }
981 #endif
982 #endif
983 
985  virtual ~TpetraCrsMatrix() { }
986 
988 
990 
991 
994 
997 
1000 
1002  void
1004  const ArrayView<const LocalOrdinal> &cols,
1005  const ArrayView<const Scalar> &vals)
1006  { }
1007 
1009  void setAllToScalar(const Scalar &alpha) { }
1010 
1012  void scale(const Scalar &alpha) { }
1013 
1015  //** \warning This is an expert-only routine and should not be called from user code. */
1016  void allocateAllValues(size_t numNonZeros,ArrayRCP<size_t> & rowptr, ArrayRCP<LocalOrdinal> & colind, ArrayRCP<Scalar> & values) { }
1017 
1019  void setAllValues(const ArrayRCP<size_t> & rowptr, const ArrayRCP<LocalOrdinal> & colind, const ArrayRCP<Scalar> & values) { }
1020 
1023 
1024  bool haveGlobalConstants() const { return false;}
1025 
1027 
1029 
1030 
1032  void resumeFill(const RCP< ParameterList > &params=null) { }
1033 
1035  void fillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null) { }
1036 
1038  void fillComplete(const RCP< ParameterList > &params=null) { }
1039 
1040 
1043 
1046  const RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> > & rangeMap,
1047  const RCP<const Import<LocalOrdinal,GlobalOrdinal,Node> > &importer=Teuchos::null,
1048  const RCP<const Export<LocalOrdinal,GlobalOrdinal,Node> > &exporter=Teuchos::null,
1049  const RCP<ParameterList> &params=Teuchos::null) { }
1050 
1052 
1054 
1055 
1057  const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap() const { return Teuchos::null; }
1058 
1060  const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap() const { return Teuchos::null; }
1061 
1064 
1066  global_size_t getGlobalNumRows() const { return 0; }
1067 
1069  global_size_t getGlobalNumCols() const { return 0; }
1070 
1072  size_t getNodeNumRows() const { return 0; }
1073 
1075  size_t getNodeNumCols() const { return 0; }
1076 
1078  global_size_t getGlobalNumEntries() const { return 0; }
1079 
1081  size_t getNodeNumEntries() const { return 0; }
1082 
1084  size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const { return 0; }
1085 
1087  size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const { return 0; }
1088 
1090  size_t getGlobalMaxNumRowEntries() const { return 0; }
1091 
1093  size_t getNodeMaxNumRowEntries() const { return 0; }
1094 
1096  bool isLocallyIndexed() const { return false; }
1097 
1099  bool isGloballyIndexed() const { return false; }
1100 
1102  bool isFillComplete() const { return false; }
1103 
1105  bool isFillActive() const { return false; }
1106 
1109 
1111  bool supportsRowViews() const { return false; }
1112 
1114  void getLocalRowCopy(LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &Indices, const ArrayView< Scalar > &Values, size_t &NumEntries) const { }
1115 
1118 
1120  void getGlobalRowCopy(GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &indices, const ArrayView< Scalar > &values, size_t &numEntries) const { }
1121 
1124 
1126 
1128 
1129 
1132 
1134  const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap() const { return Teuchos::null; }
1135 
1137  const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap() const { return Teuchos::null; }
1138 
1140 
1142 
1143 
1145  std::string description() const { return std::string(""); }
1146 
1149 
1151 
1153 
1154  void setObjectLabel( const std::string &objectLabel ) { }
1156 
1159 
1162 
1165 
1168 
1171 
1174 
1177 
1179  //{@
1180 
1183 
1187 
1191 
1195 
1199 
1201 
1202  // @}
1203 #ifdef XPETRA_ENABLE_DEPRECATED_CODE
1204  template<class Node2>
1206  clone (const RCP<Node2> &node2) const { return Teuchos::null; }
1207 #endif
1208 
1210 
1212  bool hasMatrix() const { return false; }
1213 
1215  TpetraCrsMatrix(const Teuchos::RCP<Tpetra::CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > &mtx) {
1217  }
1218 
1221 
1224 
1225 #ifdef HAVE_XPETRA_KOKKOS_REFACTOR
1226 #ifdef HAVE_XPETRA_TPETRA
1227  local_matrix_type getLocalMatrix () const {
1229  TEUCHOS_UNREACHABLE_RETURN(local_matrix_type());
1230  }
1231 
1232  void setAllValues (const typename local_matrix_type::row_map_type& ptr,
1233  const typename local_matrix_type::StaticCrsGraphType::entries_type::non_const_type& ind,
1234  const typename local_matrix_type::values_type& val) { }
1235 #endif
1236 #endif
1237 
1239  }; // TpetraCrsMatrix class (specialization for GO=long long, NO=EpetraNode)
1240 #endif
1241 
1242 #endif // HAVE_XPETRA_EPETRA
1243 
1244 } // Xpetra namespace
1245 
1246 #define XPETRA_TPETRACRSMATRIX_SHORT
1247 #endif // XPETRA_TPETRACRSMATRIX_DECL_HPP
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying fixed number of entries for each row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:479
Xpetra::TpetraCrsMatrix::getNumEntriesInGlobalRow
size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of entries in the (locally owned) global row.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:296
Xpetra::TpetraCrsMatrix::setObjectLabel
void setObjectLabel(const std::string &objectLabel)
Definition: Xpetra_TpetraCrsMatrix_def.hpp:350
Xpetra::TpetraImport
Definition: Xpetra_TpetraImport_decl.hpp:66
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalNumRows
global_size_t getGlobalNumRows() const
Number of global elements in the row map of this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1066
Xpetra::TpetraCrsMatrix::expertStaticFillComplete
void expertStaticFillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &importer=Teuchos::null, const RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > &exporter=Teuchos::null, const RCP< ParameterList > &params=Teuchos::null)
Expert static fill complete.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:244
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::rightScale
void rightScale(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
Right scale operator with given vector values.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1176
Kokkos::Compat::KokkosSerialWrapperNode
Definition: Kokkos_SerialNode.hpp:57
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying fixed number of entries for each row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:876
Xpetra::TpetraCrsMatrix::supportsRowViews
bool supportsRowViews() const
Returns true if getLocalRowView() and getGlobalRowView() are valid for this class.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:320
Xpetra::TpetraCrsMatrix::TpetraVectorClass
TpetraVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraVectorClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:79
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getGlobalNumRows
global_size_t getGlobalNumRows() const
Number of global elements in the row map of this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:669
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getNodeNumEntries
size_t getNodeNumEntries() const
Returns the local number of entries in this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:684
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getDomainMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap() const
Returns the Map associated with the domain of this operator. This will be null until fillComplete() i...
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:737
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::insertLocalValues
void insertLocalValues(LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Insert matrix entries, using local IDs.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:599
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying a previously constructed graph.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:499
Xpetra
Xpetra namespace
Definition: Xpetra_BlockedCrsMatrix.hpp:88
Xpetra::TpetraCrsMatrix::getRowMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap() const
Returns the Map that describes the row distribution in this matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:266
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying column Map and number of entries in each row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:891
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalDiagCopy
void getLocalDiagCopy(Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag) const
Get a copy of the diagonal entries owned by this node, with local row idices.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1161
Xpetra::TpetraCrsMatrix::getTpetra_CrsMatrix
RCP< const Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsMatrix() const
Get the underlying Tpetra matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:462
Xpetra::TpetraCrsMatrix::leftScale
void leftScale(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
Left scale operator with given vector values.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:388
Xpetra::global_size_t
size_t global_size_t
Global size_t object.
Definition: Xpetra_ConfigDefs.hpp:174
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::isFillActive
bool isFillActive() const
Returns true if the matrix is in edit mode.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:708
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::allocateAllValues
void allocateAllValues(size_t numNonZeros, ArrayRCP< size_t > &rowptr, ArrayRCP< LocalOrdinal > &colind, ArrayRCP< Scalar > &values)
Allocates and returns ArrayRCPs of the Crs arrays — This is an Xpetra-only routine.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:619
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::insertGlobalValues
void insertGlobalValues(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Insert matrix entries, using global IDs.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:596
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getTpetra_CrsMatrix
RCP< const Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsMatrix() const
Get the underlying Tpetra matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1220
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalDiagCopy
void getLocalDiagCopy(Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag, const Teuchos::ArrayView< const size_t > &offsets) const
Get a copy of the diagonal entries owned by this node, with local row indices.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1167
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getNodeMaxNumRowEntries
size_t getNodeMaxNumRowEntries() const
Returns the maximum number of entries across all rows/columns on this node.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1093
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap=Teuchos::null, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor for a fused import.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:506
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getLocalDiagCopy
void getLocalDiagCopy(Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag, const Teuchos::ArrayView< const size_t > &offsets) const
Get a copy of the diagonal entries owned by this node, with local row indices.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:771
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::isFillComplete
bool isFillComplete() const
Returns true if the matrix is in compute mode, i.e. if fillComplete() has been called.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1102
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getRowMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap() const
Returns the Map that describes the row distribution in this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1057
Xpetra::TpetraCrsMatrix::doImport
void doImport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Import.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:403
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Export< LocalOrdinal, GlobalOrdinal, Node > &RowExporter, const Teuchos::RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > DomainExporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
Constructor for a fused export.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:535
Xpetra::DistObject
Definition: Xpetra_DistObject.hpp:66
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::supportsRowViews
bool supportsRowViews() const
Returns true if getLocalRowView() and getGlobalRowView() are valid for this class.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:714
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalRowCopy
void getLocalRowCopy(LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &Indices, const ArrayView< Scalar > &Values, size_t &NumEntries) const
Extract a list of entries in a specified local row of the matrix. Put into storage allocated by calli...
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1114
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::fillComplete
void fillComplete(const RCP< ParameterList > &params=null)
Signal that data entry is complete.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1038
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::setAllValues
void setAllValues(const ArrayRCP< size_t > &rowptr, const ArrayRCP< LocalOrdinal > &colind, const ArrayRCP< Scalar > &values)
Sets the 1D pointer arrays of the graph.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:622
Xpetra::MultiVector
Definition: Xpetra_MultiVector.hpp:78
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getFrobeniusNorm
ScalarTraits< Scalar >::magnitudeType getFrobeniusNorm() const
Returns the Frobenius norm of the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1108
Xpetra::TpetraCrsMatrix::insertLocalValues
void insertLocalValues(LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Insert matrix entries, using local IDs.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:182
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::doImport
void doImport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Import.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1185
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getNodeNumRows
size_t getNodeNumRows() const
Returns the number of matrix rows owned on the calling node.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:675
Teuchos::ScalarTraits::magnitude
static magnitudeType magnitude(T a)
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::haveGlobalConstants
bool haveGlobalConstants() const
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:627
Xpetra::DynamicProfile
@ DynamicProfile
Definition: Xpetra_ConfigDefs.hpp:191
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:456
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::replaceDiag
void replaceDiag(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag)
Replace the diagonal entries of the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:774
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getNodeNumCols
size_t getNodeNumCols() const
Returns the number of columns connected to the locally owned rows of this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:678
Xpetra::TpetraCrsMatrix::getNumEntriesInLocalRow
size_t getNumEntriesInLocalRow(LocalOrdinal localRow) const
Returns the current number of entries on this node in the specified local row.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:293
Xpetra::TpetraCrsMatrix::getFrobeniusNorm
ScalarTraits< Scalar >::magnitudeType getFrobeniusNorm() const
Returns the Frobenius norm of the matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:317
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::LocalOrdinal
int LocalOrdinal
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:854
Xpetra::TpetraCrsMatrix::mtx_
RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > mtx_
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:444
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::replaceLocalValues
void replaceLocalValues(LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Replace matrix entries, using local IDs.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1003
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getNodeNumEntries
size_t getNodeNumEntries() const
Returns the local number of entries in this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1081
Xpetra::TpetraCrsMatrix::replaceDiag
void replaceDiag(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag)
Replace the diagonal entries of the matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:382
Xpetra::TpetraCrsMatrix::getNodeNumEntries
size_t getNodeNumEntries() const
Returns the local number of entries in this matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:290
Xpetra::Export
Definition: Xpetra_Export.hpp:64
Xpetra::TpetraCrsMatrix::getLocalRowView
void getLocalRowView(LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices, ArrayView< const Scalar > &values) const
Extract a const, non-persisting view of local indices in a specified row of the matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:332
Xpetra::TpetraCrsMatrix::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_TpetraCrsMatrix_def.hpp:347
Teuchos::NO_TRANS
NO_TRANS
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Export< LocalOrdinal, GlobalOrdinal, Node > &RowExporter, const Teuchos::RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > DomainExporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
Constructor for a fused export.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:932
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::isGloballyIndexed
bool isGloballyIndexed() const
If matrix indices are in the global range, this function returns true. Otherwise, this function retur...
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:702
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::scale
void scale(const Scalar &alpha)
Scale the current values of a matrix, this = alpha*this.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1012
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getGlobalMaxNumRowEntries
size_t getGlobalMaxNumRowEntries() const
Returns the maximum number of entries across all rows/columns on all nodes.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:693
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::doExport
void doExport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Export.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:793
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::leftScale
void leftScale(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
Left scale operator with given vector values.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1173
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::insertLocalValues
void insertLocalValues(LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Insert matrix entries, using local IDs.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:996
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getCrsGraph
RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > getCrsGraph() const
Returns the CrsGraph associated with this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1063
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraExportClass
TpetraExport< LocalOrdinal, GlobalOrdinal, Node > TpetraExportClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:861
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::doImport
void doImport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Import.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:789
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getMap
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getMap() const
Implements DistObject interface.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1182
Xpetra::TpetraCrsMatrix::getColMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap() const
Returns the Map that describes the column distribution in this matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:269
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::haveGlobalConstants
bool haveGlobalConstants() const
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1024
Xpetra::TpetraCrsMatrix::getGlobalNumEntries
global_size_t getGlobalNumEntries() const
Returns the global number of entries in this matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:287
Xpetra::TpetraCrsMatrix::setAllToScalar
void setAllToScalar(const Scalar &alpha)
Set all matrix entries equal to scalarThis.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:204
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::rightScale
void rightScale(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
Right scale operator with given vector values.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:780
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::apply
void apply(const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=ScalarTraits< Scalar >::one(), Scalar beta=ScalarTraits< Scalar >::zero()) const
Computes the sparse matrix-multivector multiplication.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1131
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::expertStaticFillComplete
void expertStaticFillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &importer=Teuchos::null, const RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > &exporter=Teuchos::null, const RCP< ParameterList > &params=Teuchos::null)
Expert static fill complete.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1045
Teuchos::EVerbosityLevel
EVerbosityLevel
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::setAllToScalar
void setAllToScalar(const Scalar &alpha)
Set all matrix entries equal to scalarThis.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1009
Xpetra::TpetraCrsMatrix< Scalar, 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_TpetraCrsMatrix_decl.hpp:1148
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getMap
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getMap() const
Implements DistObject interface.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:786
Xpetra::TpetraCrsMatrix::replaceGlobalValues
void replaceGlobalValues(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Replace matrix entries, using global IDs.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:185
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &mtx)
TpetraCrsMatrix constructor to wrap a Tpetra::CrsMatrix object.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:819
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getCrsGraph
RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > getCrsGraph() const
Returns the CrsGraph associated with this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:666
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::replaceDomainMapAndImporter
void replaceDomainMapAndImporter(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newDomainMap, Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &newImporter)
Replaces the current domainMap and importer with the user-specified objects.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:645
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getNodeNumCols
size_t getNodeNumCols() const
Returns the number of columns connected to the locally owned rows of this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1075
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getGlobalRowView
void getGlobalRowView(GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &indices, ArrayView< const Scalar > &values) const
Extract a const, non-persisting view of global indices in a specified row of the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:720
Xpetra::TpetraCrsMatrix::TpetraExportClass
TpetraExport< LocalOrdinal, GlobalOrdinal, Node > TpetraExportClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:81
Xpetra::TpetraCrsMatrix::isGloballyIndexed
bool isGloballyIndexed() const
If matrix indices are in the global range, this function returns true. Otherwise, this function retur...
Definition: Xpetra_TpetraCrsMatrix_def.hpp:308
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::resumeFill
void resumeFill(const RCP< ParameterList > &params=null)
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1032
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getRangeMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap() const
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1137
Teuchos::ArrayView
Xpetra::Map
Definition: Xpetra_Map_decl.hpp:91
Xpetra::Import
Definition: Xpetra_Import.hpp:64
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::description
std::string description() const
A simple one-line description of this object.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1145
Xpetra::CombineMode
CombineMode
Xpetra::Combine Mode enumerable type.
Definition: Xpetra_ConfigDefs.hpp:218
Xpetra::TpetraCrsMatrix::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying fixed number of entries for each row.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:54
Teuchos::RCP
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap=Teuchos::null, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor for a fused export.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:515
Xpetra::TpetraCrsMatrix::description
std::string description() const
A simple one-line description of this object.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:344
Xpetra::TpetraCrsMatrix::getLocalRowCopy
void getLocalRowCopy(LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &Indices, const ArrayView< Scalar > &Values, size_t &NumEntries) const
Extract a list of entries in a specified local row of the matrix. Put into storage allocated by calli...
Definition: Xpetra_TpetraCrsMatrix_def.hpp:323
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getLocalRowView
void getLocalRowView(LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices, ArrayView< const Scalar > &values) const
Extract a const, non-persisting view of local indices in a specified row of the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:726
Xpetra::TpetraExport
Definition: Xpetra_TpetraExport_decl.hpp:80
Xpetra::TpetraCrsMatrix::getGlobalRowView
void getGlobalRowView(GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &indices, ArrayView< const Scalar > &values) const
Extract a const, non-persisting view of global indices in a specified row of the matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:326
Xpetra::TpetraCrsMatrix::removeEmptyProcessesInPlace
void removeEmptyProcessesInPlace(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newMap)
Definition: Xpetra_TpetraCrsMatrix_def.hpp:448
Xpetra::TpetraCrsMatrix
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:75
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalMaxNumRowEntries
size_t getGlobalMaxNumRowEntries() const
Returns the maximum number of entries across all rows/columns on all nodes.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1090
Xpetra::TpetraCrsMatrix::TpetraCrsMatrixClass
TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraCrsMatrixClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:78
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getColMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap() const
Returns the Map that describes the column distribution in this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1060
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::description
std::string description() const
A simple one-line description of this object.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:748
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying (possibly different) number of entries in each row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:881
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::~TpetraCrsMatrix
virtual ~TpetraCrsMatrix()
Destructor.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:588
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getRangeMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap() const
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:740
Xpetra::TpetraCrsMatrix::resumeFill
void resumeFill(const RCP< ParameterList > &params=null)
Definition: Xpetra_TpetraCrsMatrix_def.hpp:226
Xpetra::TpetraCrsMatrix::getGlobalNumCols
global_size_t getGlobalNumCols() const
Number of global columns in the matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:278
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getAllValues
void getAllValues(ArrayRCP< const size_t > &rowptr, ArrayRCP< const LocalOrdinal > &colind, ArrayRCP< const Scalar > &values) const
Gets the 1D pointer arrays of the graph.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1022
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getNumEntriesInGlobalRow
size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of entries in the (locally owned) global row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:690
Xpetra::Vector
Definition: Xpetra_Vector.hpp:62
Xpetra::TpetraCrsMatrix::apply
void apply(const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=ScalarTraits< Scalar >::one(), Scalar beta=ScalarTraits< Scalar >::zero()) const
Computes the sparse matrix-multivector multiplication.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:335
Xpetra::clone
RCP< Map< LocalOrdinal, GlobalOrdinal, Node2 > > clone(const Map< LocalOrdinal, GlobalOrdinal, Node1 > &map, const RCP< Node2 > &node2)
Definition: Xpetra_Cloner.hpp:72
Teuchos::ArrayRCP
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::apply
void apply(const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=ScalarTraits< Scalar >::one(), Scalar beta=ScalarTraits< Scalar >::zero()) const
Computes the sparse matrix-multivector multiplication.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:734
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::supportsRowViews
bool supportsRowViews() const
Returns true if getLocalRowView() and getGlobalRowView() are valid for this class.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1111
Xpetra::TpetraCrsMatrix< Scalar, 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_TpetraCrsMatrix_decl.hpp:687
Xpetra::TpetraCrsMatrix::getLocalDiagOffsets
void getLocalDiagOffsets(Teuchos::ArrayRCP< size_t > &offsets) const
Get offsets of the diagonal entries in the matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:370
Xpetra::TpetraCrsMatrix::getGlobalMaxNumRowEntries
size_t getGlobalMaxNumRowEntries() const
Returns the maximum number of entries across all rows/columns on all nodes.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:299
Xpetra::TpetraCrsMatrix< Scalar, 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_TpetraCrsMatrix_decl.hpp:1035
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::scale
void scale(const Scalar &alpha)
Scale the current values of a matrix, this = alpha*this.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:615
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const TpetraCrsMatrix &matrix)
Deep copy constructor.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1158
Teuchos::basic_FancyOStream
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraVectorClass
TpetraVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraVectorClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:462
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::doExport
void doExport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
Export (using an Importer).
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:801
XPETRA_TPETRA_ETI_EXCEPTION
#define XPETRA_TPETRA_ETI_EXCEPTION(cl, obj, go, node)
Definition: Xpetra_Exceptions.hpp:79
Xpetra::TpetraCrsMatrix::getCrsGraph
RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > getCrsGraph() const
Returns the CrsGraph associated with this matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:272
Xpetra::TpetraCrsMatrix::allocateAllValues
void allocateAllValues(size_t numNonZeros, ArrayRCP< size_t > &rowptr, ArrayRCP< LocalOrdinal > &colind, ArrayRCP< Scalar > &values)
Allocates and returns ArrayRCPs of the Crs arrays — This is an Xpetra-only routine.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:210
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getLocalRowCopy
void getLocalRowCopy(LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &Indices, const ArrayView< Scalar > &Values, size_t &NumEntries) const
Extract a list of entries in a specified local row of the matrix. Put into storage allocated by calli...
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:717
Xpetra::CrsGraph
Definition: Xpetra_CrsGraph.hpp:86
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::isGloballyIndexed
bool isGloballyIndexed() const
If matrix indices are in the global range, this function returns true. Otherwise, this function retur...
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1099
Teuchos::ScalarTraits
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::setAllValues
void setAllValues(const ArrayRCP< size_t > &rowptr, const ArrayRCP< LocalOrdinal > &colind, const ArrayRCP< Scalar > &values)
Sets the 1D pointer arrays of the graph.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1019
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraImportClass
TpetraImport< LocalOrdinal, GlobalOrdinal, Node > TpetraImportClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:463
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::hasMatrix
bool hasMatrix() const
Does this have an underlying matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1212
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalNumCols
global_size_t getGlobalNumCols() const
Number of global columns in the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1069
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalRowCopy
void getGlobalRowCopy(GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &indices, const ArrayView< Scalar > &values, size_t &numEntries) const
Extract a list of entries in a specified global row of this matrix. Put into pre-allocated storage.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1120
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::expertStaticFillComplete
void expertStaticFillComplete(const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &importer=Teuchos::null, const RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > &exporter=Teuchos::null, const RCP< ParameterList > &params=Teuchos::null)
Expert static fill complete.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:648
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::replaceGlobalValues
void replaceGlobalValues(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Replace matrix entries, using global IDs.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:999
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getLocalDiagCopy
void getLocalDiagCopy(Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag) const
Get a copy of the diagonal entries owned by this node, with local row idices.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:765
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getNodeNumRows
size_t getNodeNumRows() const
Returns the number of matrix rows owned on the calling node.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1072
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap=Teuchos::null, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor for a fused import.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:903
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Import< LocalOrdinal, GlobalOrdinal, Node > &RowImporter, const Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > DomainImporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
Constructor for a fused import.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:524
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::replaceDiag
void replaceDiag(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag)
Replace the diagonal entries of the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1170
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::doImport
void doImport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
Import (using an Exporter).
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:797
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying column Map and fixed number of entries for each row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:886
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getNodeMaxNumRowEntries
size_t getNodeMaxNumRowEntries() const
Returns the maximum number of entries across all rows/columns on this node.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:696
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::doExport
void doExport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
Export (using an Importer).
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1197
Xpetra::TpetraCrsMatrix::isFillComplete
bool isFillComplete() const
Returns true if the matrix is in compute mode, i.e. if fillComplete() has been called.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:311
Xpetra::TpetraCrsMatrix::getNodeMaxNumRowEntries
size_t getNodeMaxNumRowEntries() const
Returns the maximum number of entries across all rows/columns on this node.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:302
Xpetra::TpetraCrsMatrix::getTpetra_CrsMatrixNonConst
RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsMatrixNonConst() const
Get the underlying Tpetra matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:466
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraVectorClass
TpetraVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraVectorClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:859
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying (possibly different) number of entries in each row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:484
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::resumeFill
void resumeFill(const RCP< ParameterList > &params=null)
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:635
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::setObjectLabel
void setObjectLabel(const std::string &objectLabel)
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:757
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::isFillActive
bool isFillActive() const
Returns true if the matrix is in edit mode.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1105
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::removeEmptyProcessesInPlace
void removeEmptyProcessesInPlace(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newMap)
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:804
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::doExport
void doExport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Export.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1189
Xpetra_TpetraConfigDefs.hpp
Xpetra::TpetraCrsMatrix< Scalar, 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_TpetraCrsMatrix_decl.hpp:751
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying column Map and number of entries in each row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:494
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrixClass
TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraCrsMatrixClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:461
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getColMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap() const
Returns the Map that describes the column distribution in this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:663
Xpetra::TpetraVector
Definition: Xpetra_TpetraVector_decl.hpp:82
Xpetra::TpetraCrsMatrix::haveGlobalConstants
bool haveGlobalConstants() const
Definition: Xpetra_TpetraCrsMatrix_def.hpp:222
Xpetra::TpetraCrsMatrix::getAllValues
void getAllValues(ArrayRCP< const size_t > &rowptr, ArrayRCP< const LocalOrdinal > &colind, ArrayRCP< const Scalar > &values) const
Gets the 1D pointer arrays of the graph.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:218
Xpetra::TpetraCrsMatrix::scale
void scale(const Scalar &alpha)
Scale the current values of a matrix, this = alpha*this.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:207
Xpetra::TpetraCrsMatrix::isLocallyIndexed
bool isLocallyIndexed() const
If matrix indices are in the local range, this function returns true. Otherwise, this function return...
Definition: Xpetra_TpetraCrsMatrix_def.hpp:305
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::hasMatrix
bool hasMatrix() const
Does this have an underlying matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:816
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalDiagOffsets
void getLocalDiagOffsets(Teuchos::ArrayRCP< size_t > &offsets) const
Get offsets of the diagonal entries in the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1164
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::fillComplete
void fillComplete(const RCP< ParameterList > &params=null)
Signal that data entry is complete.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:641
Xpetra::TpetraCrsMatrix::replaceLocalValues
void replaceLocalValues(LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Replace matrix entries, using local IDs.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:189
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::doImport
void doImport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
Import (using an Exporter).
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1193
Xpetra::TpetraCrsMatrix::getNodeNumCols
size_t getNodeNumCols() const
Returns the number of columns connected to the locally owned rows of this matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:284
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::~TpetraCrsMatrix
virtual ~TpetraCrsMatrix()
Destructor.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:985
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::Node
EpetraNode Node
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:856
Xpetra_Exceptions.hpp
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::isLocallyIndexed
bool isLocallyIndexed() const
If matrix indices are in the local range, this function returns true. Otherwise, this function return...
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:699
Xpetra::TpetraCrsMatrix::replaceDomainMapAndImporter
void replaceDomainMapAndImporter(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newDomainMap, Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &newImporter)
Replaces the current domainMap and importer with the user-specified objects.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:236
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getGlobalRowCopy
void getGlobalRowCopy(GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &indices, const ArrayView< Scalar > &values, size_t &numEntries) const
Extract a list of entries in a specified global row of this matrix. Put into pre-allocated storage.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:723
Xpetra::TpetraCrsMatrix::isFillActive
bool isFillActive() const
Returns true if the matrix is in edit mode.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:314
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::Node
EpetraNode Node
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:459
Xpetra::TpetraCrsMatrix::setAllValues
void setAllValues(const ArrayRCP< size_t > &rowptr, const ArrayRCP< LocalOrdinal > &colind, const ArrayRCP< Scalar > &values)
Sets the 1D pointer arrays of the graph.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:214
Xpetra::TpetraCrsMatrix< Scalar, 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_TpetraCrsMatrix_decl.hpp:638
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getRowMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap() const
Returns the Map that describes the row distribution in this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:660
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &mtx)
TpetraCrsMatrix constructor to wrap a Tpetra::CrsMatrix object.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1215
Xpetra::TpetraCrsMatrix::getGlobalRowCopy
void getGlobalRowCopy(GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &indices, const ArrayView< Scalar > &values, size_t &numEntries) const
Extract a list of entries in a specified global row of this matrix. Put into pre-allocated storage.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:329
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getTpetra_CrsMatrixNonConst
RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsMatrixNonConst() const
Get the underlying Tpetra matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:827
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getFrobeniusNorm
ScalarTraits< Scalar >::magnitudeType getFrobeniusNorm() const
Returns the Frobenius norm of the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:711
Xpetra::TpetraCrsMatrix::~TpetraCrsMatrix
virtual ~TpetraCrsMatrix()
Destructor.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:176
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::replaceLocalValues
void replaceLocalValues(LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Replace matrix entries, using local IDs.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:606
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::replaceDomainMapAndImporter
void replaceDomainMapAndImporter(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newDomainMap, Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &newImporter)
Replaces the current domainMap and importer with the user-specified objects.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1042
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::LocalOrdinal
int LocalOrdinal
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:457
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraImportClass
TpetraImport< LocalOrdinal, GlobalOrdinal, Node > TpetraImportClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:860
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const TpetraCrsMatrix &matrix)
Deep copy constructor.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:762
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::insertGlobalValues
void insertGlobalValues(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Insert matrix entries, using global IDs.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:993
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::replaceGlobalValues
void replaceGlobalValues(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Replace matrix entries, using global IDs.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:602
Xpetra::TpetraCrsMatrix< Scalar, 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_TpetraCrsMatrix_decl.hpp:1084
Teuchos::ScalarTraits::magnitudeType
T magnitudeType
Xpetra::TpetraCrsMatrix::TpetraImportClass
TpetraImport< LocalOrdinal, GlobalOrdinal, Node > TpetraImportClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:80
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getTpetra_CrsMatrix
RCP< const Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsMatrix() const
Get the underlying Tpetra matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:824
Xpetra::TpetraCrsMatrix::getLocalDiagCopy
void getLocalDiagCopy(Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag) const
Get a copy of the diagonal entries owned by this node, with local row indices.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:363
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalRowView
void getGlobalRowView(GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &indices, ArrayView< const Scalar > &values) const
Extract a const, non-persisting view of global indices in a specified row of the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1117
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalRowView
void getLocalRowView(LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices, ArrayView< const Scalar > &values) const
Extract a const, non-persisting view of local indices in a specified row of the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1123
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrixClass
TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraCrsMatrixClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:858
Xpetra::TpetraCrsMatrix::getNodeNumRows
size_t getNodeNumRows() const
Returns the number of matrix rows owned on the calling node.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:281
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap=Teuchos::null, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor for a fused export.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:912
Xpetra::TpetraCrsMatrix::hasMatrix
bool hasMatrix() const
Does this have an underlying matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:454
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::leftScale
void leftScale(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
Left scale operator with given vector values.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:777
Xpetra::TpetraCrsMatrix::getGlobalNumRows
global_size_t getGlobalNumRows() const
Number of global elements in the row map of this matrix.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:275
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getNumEntriesInGlobalRow
size_t getNumEntriesInGlobalRow(GlobalOrdinal globalRow) const
Returns the current number of entries in the (locally owned) global row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1087
Xpetra::TpetraCrsMatrix::getDomainMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap() const
Returns the Map associated with the domain of this operator. This will be null until fillComplete() i...
Definition: Xpetra_TpetraCrsMatrix_def.hpp:338
Teuchos::Describable::verbLevel_default
static const EVerbosityLevel verbLevel_default
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraExportClass
TpetraExport< LocalOrdinal, GlobalOrdinal, Node > TpetraExportClass
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:464
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::allocateAllValues
void allocateAllValues(size_t numNonZeros, ArrayRCP< size_t > &rowptr, ArrayRCP< LocalOrdinal > &colind, ArrayRCP< Scalar > &values)
Allocates and returns ArrayRCPs of the Crs arrays — This is an Xpetra-only routine.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1016
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::setObjectLabel
void setObjectLabel(const std::string &objectLabel)
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1154
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::GlobalOrdinal
int GlobalOrdinal
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:458
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::removeEmptyProcessesInPlace
void removeEmptyProcessesInPlace(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newMap)
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1200
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::isLocallyIndexed
bool isLocallyIndexed() const
If matrix indices are in the local range, this function returns true. Otherwise, this function return...
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1096
Xpetra::TpetraCrsMatrix::insertGlobalValues
void insertGlobalValues(GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
Insert matrix entries, using global IDs.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:179
Xpetra::TpetraCrsMatrix::rightScale
void rightScale(const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
Right scale operator with given vector values.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:394
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getTpetra_CrsMatrixNonConst
RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsMatrixNonConst() const
Get the underlying Tpetra matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1223
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getGlobalNumCols
global_size_t getGlobalNumCols() const
Number of global columns in the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:672
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::GlobalOrdinal
long long GlobalOrdinal
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:855
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getAllValues
void getAllValues(ArrayRCP< const size_t > &rowptr, ArrayRCP< const LocalOrdinal > &colind, ArrayRCP< const Scalar > &values) const
Gets the 1D pointer arrays of the graph.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:625
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying column Map and fixed number of entries for each row.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:489
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getDomainMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap() const
Returns the Map associated with the domain of this operator. This will be null until fillComplete() i...
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1134
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalNumEntries
global_size_t getGlobalNumEntries() const
Returns the global number of entries in this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:1078
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::setAllToScalar
void setAllToScalar(const Scalar &alpha)
Set all matrix entries equal to scalarThis.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:612
Xpetra::TpetraCrsMatrix::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_TpetraCrsMatrix_def.hpp:229
Teuchos::ETransp
ETransp
Xpetra_CrsMatrix.hpp
Xpetra::TpetraCrsMatrix::doExport
void doExport(const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
Export.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:415
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::isFillComplete
bool isFillComplete() const
Returns true if the matrix is in compute mode, i.e. if fillComplete() has been called.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:705
Xpetra::TpetraCrsMatrix::getRangeMap
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap() const
Definition: Xpetra_TpetraCrsMatrix_def.hpp:341
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getLocalDiagOffsets
void getLocalDiagOffsets(Teuchos::ArrayRCP< size_t > &offsets) const
Get offsets of the diagonal entries in the matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:768
Xpetra::CrsMatrix
Definition: Xpetra_CrsMatrix.hpp:74
Xpetra::ProfileType
ProfileType
Definition: Xpetra_ConfigDefs.hpp:189
Xpetra::TpetraCrsMatrix::getMap
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getMap() const
Implements DistObject interface.
Definition: Xpetra_TpetraCrsMatrix_def.hpp:400
Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >::getGlobalNumEntries
global_size_t getGlobalNumEntries() const
Returns the global number of entries in this matrix.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:681
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
Constructor specifying a previously constructed graph.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:896
TEUCHOS_UNREACHABLE_RETURN
#define TEUCHOS_UNREACHABLE_RETURN(dummyReturnVal)
Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraCrsMatrix
TpetraCrsMatrix(const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Import< LocalOrdinal, GlobalOrdinal, Node > &RowImporter, const Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > DomainImporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
Constructor for a fused import.
Definition: Xpetra_TpetraCrsMatrix_decl.hpp:921