Subscripted assignment dimension mismatch

5 visualizaciones (últimos 30 días)
trilochan
trilochan el 14 de Oct. de 2013
Comentada: trilochan el 14 de Oct. de 2013
hi i'm new to Matlab and i am working on a project in genetic algorithm. i'm getting an error saying Subscripted assignment dimension mismatch. can anyone tell me what does this error means. this is my objective function
function f = myfunction(x)
cc= (-138.71*log(x))+1727.1;
sv=0.1*cc;
i=0.06;
LT=15;
f(x) = ((cc*x)-((sv*x)*(1/((1+i)^LT))))*((i*(1+i)^LT)/(((i+1)^LT)-1));

Respuesta aceptada

Walter Roberson
Walter Roberson el 14 de Oct. de 2013
Why are you assigning the output to f(x) and not to f alone?
You should be considering whether x can ever be a 2D array. If it can, then your cc would be a 2D array, and then cc*x would be matrix multiplication rather than element-by-element multiplication; the same with sv*x
I note, by the way, that it would be more efficient to calculate (1+i)^LT once and then use the resulting variable three times in your f(x) instead of those several occurrences of the expression.
  1 comentario
trilochan
trilochan el 14 de Oct. de 2013
thank you very much walter. will keep in touch

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Genetic Algorithm en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by