#include #include #include #include #include #include "JLang/gzstream.h" #include "JMath/JConstants.hh" #include "Jeep/JeepToolkit.hh" #include "Jeep/JParser.hh" #include "Jeep/JMessage.hh" /** * \file * Auxiliary program to generate spectrum for fast Fourier transformation. * * \author mdejong */ int main(int argc, char **argv) { using namespace std; using namespace JPP; string outputFile; size_t numberOfPoints; double frequency; double binWidth; int debug; try { JParser<> zap("Auxiliary program to generate spectrum for fast Fourier transformation."); zap['o'] = make_field(outputFile) = "waveform.txt"; zap['n'] = make_field(numberOfPoints); zap['F'] = make_field(frequency); zap['B'] = make_field(binWidth); zap['d'] = make_field(debug) = 2; zap(argc, argv); } catch(const exception& error) { FATAL(error.what() << endl); } // output ostream* out = open(outputFile.c_str()); for (size_t i = 0; i != numberOfPoints; ++i) { const double x = i * binWidth; const double y = sin(x * 2*PI * frequency); *out << SCIENTIFIC(9,6) << y << endl; } close(out); }