Pour faire un echantillonage coherent j'utilise la formule suivante:
( Cela est indispensable pour eviter le '' Leakage effect '')
Finput/Fsample=Nwindow/Nrecord.
Finput= la frequence du signale a l entrer de mon convertisseur
analogique digital.
Fsample=la frequence d echantillonage du Convertisseur
Nrecord=le nombre de points(echantillons) que je vais recuperer
Nwindow=le nombre de cycle qu'il y a dans mon signal echantillone
Finput, Fsample, Nrecord sont donnes,je dois calculer Nwindow sachant que les conditions suivantes sont requises pour Nwindow:
1- Nwindow doit etre un nombre Entier ( c'est pourquoi j'utilise round() )
2- Nwindow doit etre un nombre premier, c'est a dire si je trouve un Nwindow qui n"est pas premier, je dois choisir le nombre premier qui est son voisin le plus proche:
Nwindow=round(Finput/Fsample)*Nrecord
Comment trouver le nombre premier voisin le plus proche ?
j'ai essayer de le faire moi meme , mais c pas tres propre...quelqu'un a t il une methode un peu plus efficace ?
il y a une fonction dans MATLAB :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 PRIMES(N) is a row vector of the prime numbers less than or equal to N.
Partager