Is there any error in my code?
Show older comments
These are my codes to plot the graph of f(x, q) = (q^4/(q^3+6))(1+x^3)exp(-qx)
clear all
q = 0.4;
x = linspace(0,20);
for i = 1:length(x);
f(i) = (q^4/(q^3+6))*(1+x(i))*exp(-q*x(i));
end
plot(x,f,'linewidth',2)
xlabel(x)
ylabel('f(x)')
please reply me with the correction. Thanks.
2 Comments
You are missing a ^3 from your code, but this really is something you should double-check yourself before asking other people!
You don't need a for loop either, you can just vectorise it, but if at the moment you are only at the level of for loops I will leave that aside.
You can also easily create a quick test script with correct results calculated by hand or by calculator to check whether your answer is right or not.
Jan
on 9 Jun 2017
I've used the "{} Code" button to format your code, which was unreadable. Please do this by your own in the future - thanks.
Accepted Answer
More Answers (1)
The ^3 in (1+x^3) has been forgotton:
... (1+x(i)^3) ...
You can do this without a loop also:
x = linspace(0,20);
f = (q^4 / (q^3 + 6)) * (1 + x.^3) .* exp(-q * x);
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!