MATLAB Answers

0

Integration is not evaluated inside a function file

Asked by Wazy sky on 18 Feb 2019
Latest activity Commented on by Star Strider
on 18 Feb 2019
Hi
Could you please help with code below. It is not clear to me why the integration does not evaluated inside the function file. when I used script it is worked but I need to simplified the process by creating the func file to call it at different steps. The integration is identified for the variable (b) as presented in the code below:
function Fg=Fg(a)
syms b;
f_UHM=b/(-0.181363336688152-0.637631218835414*b)+2.64004309728928;
diff_f_UHM=diff(f_UHM)
a1=a-2.5;
FF=diff_f_UHM*asin(b/a1)
q1=int(FF,0,a1)
F=subs(f_UHM,a1)
Fg=F-(2/pi)*q1
end

  0 Comments

Sign in to comment.

1 Answer

Answer by Star Strider
on 18 Feb 2019
 Accepted Answer

In the MATLAB Symbolic Math Toolbox, the correct syntax for your int call would be:
q1 = int(FF,b,0,a1)
However, I do not understand the endis call. Is this MATLAB, or is that a typographical error?

  4 Comments

Show 1 older comment
If I run the code and use the vpa function, I get a numeric result:
a = 42; % Supply Scalar Argument
...
q1 = int(FF,b,0,a1)
q1_vpa = vpa(q1)
...
produces:
q1_vpa =
-0.045932121720870913230908902574835
The vpa function will simplify expressions, and if possible, will force a numeric result.
Great! So much appreaciated

Sign in to comment.