00001 //*****************************************************************// 00002 // Albany 2.0: Copyright 2012 Sandia Corporation // 00003 // This Software is released under the BSD license detailed // 00004 // in the file "license.txt" in the top-level Albany directory // 00005 //*****************************************************************// 00006 00007 #ifndef ALBANY_EIGENDATASTRUCT 00008 #define ALBANY_EIGENDATASTRUCT 00009 00010 #include <string> 00011 #include <vector> 00012 #include "Teuchos_RCP.hpp" 00013 #include "Epetra_Vector.h" 00014 00015 namespace Albany { 00016 00017 struct EigendataStruct { 00018 00019 EigendataStruct () {}; 00020 ~EigendataStruct () {}; 00021 EigendataStruct (const EigendataStruct& copy) { 00022 eigenvalueRe = Teuchos::rcp(new std::vector<double>(*(copy.eigenvalueRe))); 00023 eigenvalueIm = Teuchos::rcp(new std::vector<double>(*(copy.eigenvalueIm))); 00024 eigenvectorRe = Teuchos::rcp(new Epetra_MultiVector(*(copy.eigenvectorRe))); 00025 eigenvectorIm = Teuchos::rcp(new Epetra_MultiVector(*(copy.eigenvectorIm))); 00026 }; 00027 00028 Teuchos::RCP<std::vector<double> > eigenvalueRe; 00029 Teuchos::RCP<std::vector<double> > eigenvalueIm; 00030 Teuchos::RCP<Epetra_MultiVector> eigenvectorRe; 00031 Teuchos::RCP<Epetra_MultiVector> eigenvectorIm; 00032 }; 00033 00034 } 00035 #endif 00036 00037 00038