Undefined function 'eval' for input arguments of type 'double'.

When using the code below:
function [Df]=difc(f,u,h)
syms x
x=u+h; lp=eval(f);
x=u-h; ll=eval(f);
Df=(lp-ll)/(2*h);
end
, the same error keeps appearing ''Undefined function 'eval' for input arguments of type 'double'.''
I would like to know what´s the problem and what can I do to solve it, in order to have a working code.
Thankyou very much

2 件のコメント

Walter Roberson
Walter Roberson 2012 年 11 月 8 日
What are you passing in to the function?
Note: your assignments to "x" are undoing the effect of "syms x".
Ana Luisa
Ana Luisa 2012 年 11 月 8 日
I want to pass the values lp=u+h and ll=u-h, being that u and h are real numbers given by the user

サインインしてコメントする。

 採用された回答

C.J. Harris
C.J. Harris 2012 年 11 月 8 日

0 投票

You are getting that error because you are trying to evaluate a double. A double is just a double - there is nothing there to evaluate.
What are you expecting the 'eval' function to do?

2 件のコメント

Ana Luisa
Ana Luisa 2012 年 11 月 8 日
I'm trying to calculate the numerical first derivative of a function f using the central differences method with an error of O(h^2).
Walter Roberson
Walter Roberson 2012 年 11 月 8 日
What are you passing in to your routine?

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File Exchange で Numeric Types についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by