00001 /* @HEADER@ */ 00002 // 00003 /* @HEADER@ */ 00004 00005 00006 #ifndef PLAYA_HEATOPERATOR1D_HPP 00007 #define PLAYA_HEATOPERATOR1D_HPP 00008 00009 #include "PlayaOperatorBuilder.hpp" 00010 00011 using namespace Playa; 00012 using namespace Teuchos; 00013 00014 00015 namespace Playa 00016 { 00017 /** */ 00018 class HeatOperator1D : public OperatorBuilder<double> 00019 { 00020 public: 00021 /** */ 00022 HeatOperator1D(int nLocal, const VectorType<double>& vecType); 00023 00024 /** */ 00025 void set_cj(const double& cj) {cj_ = cj;} 00026 00027 /** */ 00028 LinearOperator<double> getOp() const ; 00029 00030 private: 00031 RCP<MatrixFactory<double> > matrixFactory_; 00032 double cj_; 00033 double h_; 00034 int nLocalRows_; 00035 int lowestLocalRow_; 00036 }; 00037 00038 } 00039 00040 #endif