Matlab - Ayuda en function me dice error

 
Vista:
sin imagen de perfil

Ayuda en function me dice error

Publicado por Felipe (4 intervenciones) el 10/07/2014 01:38:17
Mi problema es el siguiente porfavor necesito que me ayuden, esta funcion calibra un parametro beta dada dos matrices de dimensiones iguales (mxm) no entiendo el error :( porfavor alguien que me oriente, soy nuevo en esto

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
function beta=calibra(v,c)
n=500;
[i,j]=size(v);
B=ones(1,j);
k=1;
err=100;
LP(1)=0;
error=input('Ingrese Valor Error deseado en % :');
while err>error
    k=k+1;
 
   for u=1:i
   LP(k)=(sum(sum(v.*c)))/(sum(sum(v)));
   beta(k)=1/LP(k);
   O(u,1)=sum(sum(v,2));
   D(u)=sum(sum(v));
 
   end
   for u=1:i
   A(u,1)=1/sum(sum((B.*D.*exp(-beta(k)*c(1,:)))));
   end
   for u=1:i
      B(u)=1/sum(sum((A.*O.*exp(-beta(k)*c(:,1)))));
   end
    for j=1:j
for i=1:i
    u=i;
    p=j;
    v(i,j)=A(i)*O(i)*B(j)*D(j)*exp(-beta*c(i,j));
 
end
    end
    err=((LP(k)-LP(k-1))/LP(k))*100;
end
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Jorge De Los Santos
Val: 30
Ha disminuido su posición en 12 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Ayuda en function me dice error

Publicado por Jorge De Los Santos (213 intervenciones) el 10/07/2014 05:25:06
Hola Felipe.

El error está en la siguiente línea:

1
v(i,j)=A(i)*O(i)*B(j)*D(j)*exp(-beta*c(i,j));


MATLAB devuelve un error porque intentas multiplicar valores escalares con un vector "beta" y el resultado de ello que es un vector NO puedes asignarlo a una posición de la matriz "v". Por lo cual lo más probable es que olvidases colocar el índice para "beta"...


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Gracias

Publicado por Felipe (4 intervenciones) el 10/07/2014 16:55:21
Gracias por tu respuesta me fue de mucha ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar