Problems with multiplications (matrix dimensions must agree) on F5, but not on F9
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
I have this code:
function [Pex] = ponderacaoPorEspecies(probabilidadeDeExtincao)
% Este módulo pondera a probabilidade de extinção das espécies em
% função das forças de interação entre espécies. A probabilidade
% varia em função de uma proporção dela mesma.
global forcaDeInteracoesEntreEspecies probabilidadeDeExtincao Especies
Pex = probabilidadeDeExtincao .* (1 - forcaDeInteracoesEntreEspecies);
It is used by another code, where the variables are given. After I F5 this main code, I get:
"_??? Error using ==> times Matrix dimensions must agree.
Error in ==> ponderacaoPorEspecies at 7 Pex = probabilidadeDeExtincao .* (1 - forcaDeInteracoesEntreEspecies);
Error in ==> compilador at 68 probabilidadeDeExtincao = ponderacaoPorEspecies(probabilidadeDeExtincao)_"
However, if I get to the fuction code above, select the line:
Pex = probabilidadeDeExtincao .* (1 - forcaDeInteracoesEntreEspecies);
And press F9, the results shows normally. Whats is going on?
0 comentarios
Respuesta aceptada
Fangjun Jiang
el 30 de Dic. de 2011
Your variable 'probabilidadeDeExtincao' is an input argument to the function, while it is also a global variable. This could be the problem.
In any case, it should be relatively easy to debug this problem. Set a break point in your main code, press F5 and then F10 to step through the code. Press F11 to step into the function. When it reaches this line, go to Command Window, check the size of the variable 'probabilidadeDeExtincao' and 'forcaDeInteracoesEntreEspecies', you'll find the problem.
size(forcaDeInteracoesEntreEspecies)
2 comentarios
Fangjun Jiang
el 30 de Dic. de 2011
Well, I don't think it's odd. The variable should not be an input argument and at the same time be a global variable. It will cause conflict and you are at the mercy of whether the value or size of the variable matches.
Más respuestas (0)
Ver también
Categorías
Más información sobre Genetic Algorithm en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!