11 #ifndef OOPS_ASSIMILATION_TRIDIAGSPECTRUM_H_ 12 #define OOPS_ASSIMILATION_TRIDIAGSPECTRUM_H_ 16 #include "oops/util/Logger.h" 25 void TriDiagSpectrum(
const std::vector<double> & diag,
const std::vector<double> & sub,
26 std::vector<double> & evals,
27 std::vector< std::vector<double> > & evecs) {
28 const unsigned nn = diag.size();
29 ASSERT(sub.size() == nn);
34 std::vector<double> ftnev(nn*nn);
39 for (
unsigned jv = 0; jv < nn; ++jv) {
41 for (
unsigned jj = 0; jj < nn; ++jj) {
42 evecs[jv][jj] = ftnev[ii];
51 #endif // OOPS_ASSIMILATION_TRIDIAGSPECTRUM_H_ void FtnTriDiagSpectrum(const int &, const double *, const double *, double *, double *)
The namespace for the main oops code.
void TriDiagSpectrum(const std::vector< double > &diag, const std::vector< double > &sub, std::vector< double > &evals, std::vector< std::vector< double > > &evecs)