From 9b9044ded0c8f8366a827d08bada5f1bb244c9ea Mon Sep 17 00:00:00 2001 From: Menouar AZIB Date: Fri, 26 Aug 2022 17:26:42 +0200 Subject: [PATCH] Suppression des anciens fichiers concernant le discrete fourier transform 'DFT.cc' --- src/Parameters/fonctions/fourier/DFT.cc | 43 ------------------------------------------- src/Parameters/fonctions/fourier/DFT.hh | 82 ---------------------------------------------------------------------------------- 2 files changed, 0 insertions(+), 125 deletions(-) delete mode 100644 src/Parameters/fonctions/fourier/DFT.cc delete mode 100644 src/Parameters/fonctions/fourier/DFT.hh diff --git a/src/Parameters/fonctions/fourier/DFT.cc b/src/Parameters/fonctions/fourier/DFT.cc deleted file mode 100644 index 51a836e..0000000 --- a/src/Parameters/fonctions/fourier/DFT.cc +++ /dev/null @@ -1,43 +0,0 @@ -#include "DFT.hh" - -template -DFT::DFT(int nbEchantillons, vector &signal) -{ - nbEchantillons = nbEchantillons; - signal = *signal; -} - -template -pair, vector> DFT::compute() -{ - const vector amplitudes; - const vector phases; - for (int k = 0; k < nbEchantillons; k++) - { - T xR = 0; - T yI = 0; - for (int n = 0; n < nbEchantillons; n++) - { - const T val = signal[n]; - if (!isNAN(val)) - { - const double f0 = n / nbEchantillons; - const double angle = 2 * k * PI * f0; - xR += (T)cos(angle) * val; - yI += (T)sin(angle) * val; - } - } - - const T amplitude = (T)sqrt(xR * xR + yI * yI); - const T phase = (T)atan2(yI, xR); - - amplitudes.push_back(amplitude); - phases.push_back(phase); - } - - const pair, vector> out; - out.first = amplitudes; - out.second = phases; - - return out; -} diff --git a/src/Parameters/fonctions/fourier/DFT.hh b/src/Parameters/fonctions/fourier/DFT.hh deleted file mode 100644 index 20baf19..0000000 --- a/src/Parameters/fonctions/fourier/DFT.hh +++ /dev/null @@ -1,82 +0,0 @@ -#ifndef DFT_H -#define DFT_H - -#include -#include -#include - -#define PI 3.14159265 - -using namespace std; -/** - * @brief Représente un type paramétrique (générique) qui permet à n'importe quelle fonction de type f(T) d'opérer peu importe les types impliqués, dans la mesure où les contraintes du template en question sont respectées mais - * aussi éviter d'écrire le code de pour chaque combinaison de type différent. - * - * @tparam T le type générique - */ -template - -/** - * @brief Une classe qui reprèsente une transformée de Fourier discrète (DFT) à appliquer pour - * un signal numérique donné et pour un nombre d'échantillons donné - * - */ -class DFT -{ - -public: - /** - * @brief Construct a new DFT object - * - * @param nbEchantillons nombre d'échantillons - * @param signal le signal - */ - DFT(int nbEchantillons, vector &signal); - - /** - * @brief compute the amplitudes and the phases (en radian) - * - * @return pair, vector> a pair of amplitudes and phases - */ - pair, vector> compute(); - - /** - * @brief Set the Nb Echantillons object - * - * @param nbEchantillons nouvelle valeur du nombre d'échantillons - */ - void setNbEchantillons(int nbEchantillons); - /** - * @brief Set the Signal object - * - * @param signal nouveau signal - */ - - void setSignal(vector signal); - /** - * @brief Get the Nb Echantillons object - * - * @return int - */ - int getNbEchantillons() { return nbEchantillons; } - /** - * @brief Get the Signal object - * - * @return vector - */ - vector getSignal() { return signal; } - -private: - /** - * @brief nombre d'échantillons - * - */ - int nbEchantillons; - /** - * @brief le signal numérique dont on cherche à calculer la DFT - * - */ - vector signal; -}; - -#endif \ No newline at end of file -- libgit2 0.21.2