How can I generate a code for this equation?

 采纳的回答

You can use the following code for this
a = [429.494, 93.112, -6.050];
N = 1024;
temp = 0;
lambda = zeros(1, N)
for i = 1:N
for j = 1:3;
temp = temp + (a(j) * (((i - 1) / N - 1) ^ (j - 1)));
end
lambda(i) = temp;
temp = 0;
end
The lambda array will contain the final values.

更多回答(1 个)

If you have Symbolic math toolbox then this can be done in an elegant way. In case you don't have symbolic math toolbox (like me) this code will do:
N=1024;
a=[429.494;93.112;-6.050];
wavelength=zeros(N,1);
for m=1:N
temp=zeros(3,1);
for n=1:3
temp(n,1)=a(n,1)*(((m-1)/(N-1))^(n-1));
end
wavelength(m,1)=sum(temp);
end

4 个评论

with so many thanks because of your help but I got this error' Dimensions of arrays being concatenated are not consistent.'
At which line are you getting this error? I ran the code and I am not getting any error.
It’s a homework obviously.
Dimensions of arrays being concatenated are not consistent.
This is the error. not homework, that is a part of my data analysis.

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by