How can I generate a code for this equation?

 Accepted Answer

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.

More Answers (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 Comments

with so many thanks because of your help but I got this error' Dimensions of arrays being concatenated are not consistent.'
Raj
Raj on 11 Jun 2019
Edited: Raj on 11 Jun 2019
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.

Sign in to comment.

Asked:

FSh
on 10 Jun 2019

Commented:

FSh
on 11 Jun 2019

Community Treasure Hunt

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

Start Hunting!