Date: May 6, 2012 10:21 AM
Author: Wojtek
Subject: Calculating 1st derivative with a parameter
Hello,

in my program I want to calculate the 1st derivative of a function y (it's a function of 'x1'). Let's say I want to check if the 1st derivative of this function in some specific point is smaller then 0.05. I have:

syms x1;

y = ( x1 - za )*( x1 - zb )*( x1 - zc )*( x1 - zd ); %my function, all the parameters like 'za' were previously declared

dydx=diff(y,x1,1);

x_val=1;

dydx_val=subs(dydx,x1,x_val);

k2 = solve(dydx_val);

dydx_val =double(k2);

if (dydx_val<0.05)

remember=x_val;

end

unfortunately the derivative is not calculated. I get information:

Warning: 1 equations in 0 variables.

Warning: Explicit solution could not be found.

and when I try to display dydx_val i get:

dydx_val =

[]

I tried different methods, none of them was good (although I could do something wrong). I will be grateful for suggestions how can I calculate 1st derivative in a specific point and have the value of this derivative in double.