Bonjour à tous,

J'ai un problème avec le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
function [a,sigma2]=xtoa(X,P)
N=length(X);
R=zeros(1,P);
for k=1:P, n=0:N-k-1, R(1,k)=sum(X(n+k)*conj(X(n+1)))/N, end
Rest=toeplitz(R);
U=zeros(P,1);
U(1,1)=1;
M=inv(Rest)*U;
sigma2=1/M(1,1);
a=zeros(P,1);
for k=1:P, a(k,1)=sigma2*M(k,1), end
Lorsque je le teste, Matlab me répond :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
operator *: nonconformant arguments (op1 is 15999*1, op2 is 15999*1) [...] at line 4, column 29
Or, si je ne suis pas encore devenu fou, les X(n) sont des réels... Je précise que j'ai effectué un whos afin de m'assurer que le X sur lequel je testais la fonction était bien un vecteur (16000*1 d'ailleurs). J'ai l'impression que ce que fait mon code, c'est qu'il prend le vecteur X en son entier en supprimant la n-ème coordonnée, serait-ce possible ... ?

Merci,

Cordialement,

P.