Backward Finite-Div​ided-Diffe​rence Coding

10 views (last 30 days)
Adrian
Adrian on 12 Jun 2023
Answered: Nivedita on 7 Nov 2023
g = input('Enter the function: e.g @(x) sin(x): ','s');
f = str2func(g);
h = input('Enter step size, H: ');
x = input('At which point you want to approximate the derivative: ');
Bd2 = (f(x)-f(x-h))/h;
fprintf('Backward FDD: %.4f',Bd2)
How do I make my coding to compute this function @(x) -0.3757*x+5
  2 Comments
Ashutosh
Ashutosh on 14 Jun 2023
It works as expected for me, what is the error message you are getting?
Kim
Kim on 28 Oct 2023
Error using str2func Argument must be a text scalar. Error in BDD (line 9) f = str2func(g);

Sign in to comment.

Answers (1)

Nivedita
Nivedita on 7 Nov 2023
Hello Adrian,
I understand that you want to compute the function @(x) -0.3757*x+5 with the provided code.
I executed the provided code and it worked as expected from the definition of the "Bd2" variable providing a result of 0.3757.
If you are facing any difficulty with the "str2func" function and obtaining the same error as mentioned by Kim, you can take care of the following pointers:
  1. Ensure that there are no extra characters or spaces in the function expression stored in "g".
  2. Verify that the function expression in "g" follows the correct syntax as you have mentioned in your question.
For more information on the "str2func" function, please refer to the following documentation link:
I hope it helped!
Regards,
Nivedita.

Categories

Find more on MATLAB 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!