void dump(string filename, fullVector<Complex>& eig){ const double Pi = 4 * atan(1); FILE* file = fopen(filename.c_str(), "w"); fprintf(file, "Eig\tReal(Omega^2)\tImag(Omega^2)\tf[MHz]\tt[ms]\n"); for(int i = 0; i < eig.size(); i++) fprintf(file, "%d:\t%.16e\t%.16e\t%.16e\t%.16e\n", i, eig(i).real(), eig(i).imag(), sqrt(eig(i)).real() / (2 * Pi) * 1e-9, 1.0 / (sqrt(eig(i)).imag() / (2 * Pi)) * 1e3); fclose(file); }
// Research purpose (to be removed ?) void JacobianBasis::interpolate(const fullVector<double> &jacobian, const fullMatrix<double> &uvw, fullMatrix<double> &result, bool areBezier) const { fullMatrix<double> bezM(jacobian.size(), 1); fullVector<double> bez; bez.setAsProxy(bezM, 0); if (areBezier) bez.setAll(jacobian); else lag2Bez(jacobian, bez); getBezier()->interpolate(bezM, uvw, result); }