Error Undefined x!

2 views (last 30 days)
Zhuoying Lin
Zhuoying Lin on 10 Nov 2017
Commented: Star Strider on 12 Nov 2017
In my script, I call a function value to input values and put the input in another function integrnfn:
[A,x1,x2]=value;
y=integrfn(A,x1,x2);
fprintf('The value of the integral is %.3f', integrfn(A,x1,x2))
function [A,x1,x2]=value
A=input('Please enter a positive value: ');
x1=input('Please enter another positive value: ');
x2=input('Please enter a positive value that is greater than the previous one: ');
end
function y=integrfn(A,x1,x2)
y=int(A*exp(-x^2)*cos(2*x)/(1+x^2),x,x1,x2);
end
However, when I run it, it says:
Undefined function or variable 'x'.
Error in script >integrfn (line 15)
y=int(A*exp(-x^2)*cos(2*x)/(1+x^2),x,x1,x2);
Error in the script (line 5)
y=integrfn(A,x1,x2);
Can someone tell me the problem?
Thank you!!

Accepted Answer

Star Strider
Star Strider on 10 Nov 2017
The int function is part of the Symbolic Math Toolbox. The most appropriate function is integral, with the integrand as an anonymous function:
y = integral(@(x) A*exp(-x.^2).*cos(2*x)./(1+x.^2),x1,x2);
  6 Comments
Zhuoying Lin
Zhuoying Lin on 12 Nov 2017
I figure out why now. Thank you!
Star Strider
Star Strider on 12 Nov 2017
My pleasure!

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!