36 #ifndef NEKTAR_SOLVERUTILS_DRIVERARNOLDI_H
37 #define NEKTAR_SOLVERUTILS_DRIVERARNOLDI_H
95 void WriteEvs(std::ostream &evlout,
const int k,
98 bool DumpInverse =
true);
100 virtual void v_InitObject(std::ostream &out = std::cout);
117 #endif //NEKTAR_SOLVERUTILS_DRIVERARNOLDI_H
Array< OneD, NekDouble > m_imag_evl
DriverArnoldi(const LibUtilities::SessionReaderSharedPtr pSession)
Constructor.
void CopyFwdToAdj()
Copy the forward field to the adjoint system in transient growth calculations.
NekDouble m_evtol
Maxmum number of iterations.
void CopyArnoldiArrayToField(Array< OneD, NekDouble > &array)
Copy Arnoldi storage to fields.
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
SOLVER_UTILS_EXPORT void ArnoldiSummary(std::ostream &out)
void CopyFieldToArnoldiArray(Array< OneD, NekDouble > &array)
Copy fields to Arnoldi storage.
boost::shared_ptr< SessionReader > SessionReaderSharedPtr
void WriteFld(std::string file, std::vector< Array< OneD, NekDouble > > coeffs)
Write coefficients to file.
virtual ~DriverArnoldi()
Destructor.
virtual Array< OneD, NekDouble > v_GetRealEvl(void)
int m_nvec
Dimension of Krylov subspace.
Array< OneD, NekDouble > m_real_evl
Operator in solve call is negated.
void WriteEvs(std::ostream &evlout, const int k, const NekDouble real, const NekDouble imag, NekDouble resid=NekConstants::kNekUnsetDouble, bool DumpInverse=true)
virtual void v_InitObject(std::ostream &out=std::cout)
static const NekDouble kNekUnsetDouble
int m_nfields
interval to dump information if required.
bool m_timeSteppingAlgorithm
Period of time stepping algorithm.
#define SOLVER_UTILS_EXPORT
NekDouble m_period
Tolerance of iteratiosn.
int m_infosteps
underlying operator is time stepping
Base class for the development of solvers.
Base class for the development of solvers.
virtual Array< OneD, NekDouble > v_GetImagEvl(void)
int m_nits
Number of vectors to test.