Fonction impulsionnelle – Dirac Delta

La fonction « Impulse » est également connue sous le nom de fonction « Diracdelta », ou fonction δ (elle a été introduite par le psychiatre Paul Dirac). Dans le contexte du traitement numérique du signal (DSP), il est souvent appelé « fonction unitimpulse ».

C’est défini comme suit:

 définition de la fonction impulsionnelle - delta de dirac

et a pour satisfaire l’identité:

 La fonction d'impulsion contraint

La fonction dépend des paramètres d’entrée réels. La sortie de la fonction est parfaite lorsque l’entrée est exactement 0. La sortie est nulle pour toute autre valeur d’entrée.

Le delta dirac n’est pas strictement une fonction, car toute fonction réelle qui est égale à zéro partout mais en un seul point doit avoir une intégrale totale égale à zéro, mais à de nombreuses fins, cette définition peut être manipulée comme une fonction.

Créons quelques tracés discrets en utilisant la fonction Matlab ‘stem’.

Pour nos objectifs, nous allons définir la fonction comme 1 lorsque l’argument de la fonction Dirac est 0, et la sortie sera 0 pour toute autre valeur de l’argument d’entrée.

On peut définir la fonction ayant un scalaire en entrée. Par exemple:

fonction y = dd1(n)
% Notre valeur par défaut est 0
y = 0;

% La fonction est 1 seulement si l’entrée est 0
si n == 0
y = 1;
end

Trouvons la sortie appropriée pour ce vecteur:

n = -2 :2

Nous utilisons notre fonction ci-dessus (‘dd1’) comme ceci:

pour i = 1 :longueur(n)
f(i) = dd1(n(i));
fin
tige(n, f)
axe()
xlabel(‘n’)
ylabel(‘ImpulseFunction’)

Le résultat, comme prévu, est:

 exemple de fonction d'impulsion 1

Maintenant, supposons un autre vecteur:

n =

Nous pouvons utiliser notre fonction ‘dd1’ pour trouver la sortie de la fonction delta:

pour i = 1: length(n)
f(i) = dd1(n(i));
end
stem(f)

Le résultat est:

 exemple de delta dirac 2

Maintenant, disons que nous avons un vecteur (pas un scalaire) en entrée. Nous voulons calculer la fonction unité pour toutes les valeurs incluses dans le vecteur d’entrée.Nous pouvons créer une autre fonction (‘dd’) pour prendre en compte cette approche:

fonction y = dd(x)
%x est un vecteur
% Nous créons un vecteur de sortie de seulement 0 (notre valeur par défaut)
y = zéros (1, longueur(x));

% Nous trouvons des index de valeurs d’entrée égales à 0,
% et les faisons 1
y(find(x==0))= 1;

Nous n’avons pas besoin d’aloop maintenant, donc notre processus a été beaucoup simplifié.

n =
f = dd(n)

Le résultat est: d =0 0 0 1 0 0 1 0

Si nous voulons calculer y = 4δ(n) + 3δ(n-2), dans une plage d’entiers allant de -10 à 10, nous pouvons dosimplifier ceci:

n =-10: 10
y = 4 * dd(n) + 3 * dd(n-2)
tige(n, y)
xlabel(‘n’)
ylabel(‘DeltaFunction’)

You might also like

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.