Effacer les filtres
Effacer les filtres

function and indexing erros

3 vues (au cours des 30 derniers jours)
Hichem Younsi
Hichem Younsi le 22 Déc 2018
Modifié(e) : madhan ravi le 22 Déc 2018
Hello a newest asking for help.
I have a function to calculate in a loop a variable.
function Ls= WeLatente(WeSolFin,Lc,Ds)
Ls=zeros(1,6);
Ls=0;
k=6;
for k=1:k
Ls(k)=Ls(k)+WeSolFin(k)'*Lc*Ds;
end
and I get 2 errors messages :
Not enough input arguments.
and
Error in WeLatente (line 6)
Ls(k)=Ls(k)+WeSolFin(k)'*Lc*Ds;
Any help i'll appreciate.
  4 commentaires
Walter Roberson
Walter Roberson le 22 Déc 2018
It is not enough that WeSolFin, Lc, and Ds exist in .mat files. You have to load them into memory and you have to pass them in when you call WeLatente
Note that
k=6;
for k=1:k
is confusing. It would be recommended to use a different variable name for the upper bound than is used for the loop index.
Hichem Younsi
Hichem Younsi le 22 Déc 2018
Walter Roberson can you more explecite please to how to use them on memory, i'm runing the code on the script m.file shouldn't he call the variables and data that is on the path file! ?

Connectez-vous pour commenter.

Réponse acceptée

madhan ravi
madhan ravi le 22 Déc 2018
Modifié(e) : madhan ravi le 22 Déc 2018
EDITED
Addendum to sir Image Analyst and sir Walter's comments:
upload your .mat file
load matlab.mat % load your .mat file
Ls= WeLatente(WeSolFin{:,:},Lc,Ds) % function call
function Ls= WeLatente(WeSolFin,Lc,Ds) % function definition
Ls=zeros(1,6);
k=6;
for i=2:k
Ls(i)=Ls(i-1)+WeSolFin(k)'*Lc*Ds;
end
end

Plus de réponses (0)

Catégories

En savoir plus sur Get Started with MATLAB dans Help Center et File Exchange

Tags

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by