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 MOR_MEANSUBSTRACTINGSNAPSHOTPREPROCESSOR_HPP 00008 #define MOR_MEANSUBSTRACTINGSNAPSHOTPREPROCESSOR_HPP 00009 00010 #include "MOR_SnapshotPreprocessor.hpp" 00011 00012 namespace MOR { 00013 00014 class MeanSubstractingSnapshotPreprocessor : public SnapshotPreprocessor { 00015 public: 00016 MeanSubstractingSnapshotPreprocessor(); 00017 00018 virtual Teuchos::RCP<const Epetra_MultiVector> modifiedSnapshotSet() const; 00019 virtual Teuchos::RCP<const Epetra_Vector> origin() const; 00020 00021 virtual void rawSnapshotSetIs(const Teuchos::RCP<Epetra_MultiVector> &); 00022 00023 private: 00024 Teuchos::RCP<Epetra_MultiVector> modifiedSnapshots_; 00025 Teuchos::RCP<const Epetra_Vector> origin_; 00026 }; 00027 00028 } // namespace MOR 00029 00030 #endif /* MOR_MEANSUBSTRACTINGSNAPSHOTPREPROCESSOR_HPP */