Contenu principal

La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.

conv

Convolution et multiplication polynomiale

Description

w = conv(u,v) renvoie la convolution des vecteurs u et v. Si u et v sont des vecteurs des coefficients polynomiaux, le fait de les convoluer revient à multiplier les deux polynômes.

exemple

w = conv(u,v,shape) renvoie une sous-section de la convolution, telle que spécifiée par shape. Par exemple, conv(u,v,'same') renvoie uniquement la partie centrale de la convolution, de la même taille que u ; et conv(u,v,'valid') renvoie uniquement la partie de la convolution calculée sans les zéros aux extrémités.

exemple

Exemples

réduire tout

Créez des vecteurs u et v contenant les coefficients des polynômes x2+1 et 2x+7.

u = [1 0 1];
v = [2 7];

Utilisez la convolution pour multiplier les polynômes.

w = conv(u,v)
w = 1×4

     2     7     2     7

w contient les coefficients polynomiaux pour 2x3+7x2+2x+7.

Créez deux vecteurs et convoluez-les.

u = [1 1 1];
v = [1 1 0 0 0 1 1];
w = conv(u,v)
w = 1×9

     1     2     2     1     0     1     2     2     1

La longueur de w est length(u)+length(v)-1, qui dans cet exemple correspond à 9.

Créez deux vecteurs. Trouvez la partie centrale de la convolution de u et v ayant la même taille que u.

u = [-1 2 3 -2 0 1 2];
v = [2 4 -1 1];
w = conv(u,v,'same')
w = 1×7

    15     5    -9     7     6     7    -1

w a une longueur de 7. La convolution complète serait d’une longueur de length(u)+length(v)-1, qui dans cet exemple correspondrait à 10.

Arguments d'entrée

réduire tout

Les vecteurs en entrée sont spécifiés en tant que vecteurs ligne ou colonne. Les vecteurs u et v peuvent avoir des longueurs ou des types de données différents.

Lorsque u ou v sont de type single, la sortie est de type single. À défaut, conv convertit les entrées vers le type double et renvoie le type double.

Types de données : double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
Support des nombres complexes : Oui

Sous-section de la convolution, spécifiée en tant que 'full', 'same' ou 'valid'.

'full'

Convolution totale (par défaut).

'same'

La partie centrale de la convolution est de la même taille que u.

'valid'

Uniquement les parties de la convolution qui sont calculées sans les zéros aux extrémités. Avec cette option, length(w) est max(length(u)-length(v)+1,0), sauf lorsque length(v) est nulle. Si length(v) = 0, alors length(w) = length(u).

En savoir plus

réduire tout

Capacités étendues

développer tout

Génération de code GPU
Générez du code CUDA® pour les GPU NVIDIA® avec GPU Coder™.

Historique des versions

Introduit avant R2006a

Voir aussi

| | | | (Signal Processing Toolbox) |