How to use three- line loop with disp to find derivative

1 view (last 30 days)
I want to find the first five derivatives of f(x)=x((2x+1)^1/2), Using the three-line for loop wih disp.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 12 Feb 2012
syms x real
f = x.*(2*x+1).^(1/2)
df = arrayfun(@(i1)diff(f,x,i1),1:5,'un',0);
out = cat(1,df{:})
:)
out = sym('out',[5, 1]);
x = sym('x');
for i1 = 1:5
out(i1) = diff(x.*(2*x+1).^(1/2),x,i1);
end

More Answers (2)

Jan
Jan on 13 Feb 2012
You cannot find the derivative using a FOR-loop. As far as I can see, you only can use forward, backward or central differences to calculate an approximation of the derivative.
It is not clear what a "three-line for loop" is any what "with disp" exactly mean. It seems like you got a strange homework assignment.

G A
G A on 14 Feb 2012
syms y x
y=x*(2*x+1)^(1/2);
f{1}=diff(y,x);
for n=2:5, f{n}=diff(f{n-1},x);end
f{:} %is this what you mean disp?
  2 Comments
Dhurgham Kadhim
Dhurgham Kadhim on 14 Feb 2012
disp means display the answer. I evulated your steps but did not give me the derivative. Thanks
G A
G A on 14 Feb 2012
strange... you can just copy this code to the matlab window and press 'enter'. Do not forget f{:}

Sign in to comment.

Categories

Find more on Loops and Conditional Statements 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!