Numerical Integration with symbolic integration limits

6 views (last 30 days)
Hi all,
I am trying to solve the following expression:
exp1=((L+rho)-sqrt(rho^2-(z-(delta+c)/2)^2))^2;
Vg=2*pi*vpaintegral(exp1,z,delta/2,delta+c)
with delta and c being symbolic variables. rho and L depend directly on c.
The problem is that I would like to prescribe a value for Vg and then get a numerical solution for c which is also a part of my integration limits.
Can somebody help me solve this problem? I assume there is a more intelligent way to get a quick solution for this problem.
Thanks!

Answers (1)

Walter Roberson
Walter Roberson on 23 Mar 2020
You cannot do that. vpaintegral does not support symbolic limits.
You are asking for something like
vpasolve( Vg - 2*pi*vpaintegral(exp1,z,delta/2,delta+c), c)
but you still want delta to be symbolic, so you are looking for c expressed in terms of delta. You cannot get that with numeric techniques. If we had your full formulas then maybe a non-numeric technique could be found.
  1 Comment
Denis Smaitch
Denis Smaitch on 23 Mar 2020
Edited: Denis Smaitch on 23 Mar 2020
Hi Walter,
thanks for your quick response. Actually, I will be plotting c over delta=a so I could make delta numerical before solving the integral problem. The only sym I am left with during the integration step is c.
syms z delta c a real
theta=deg2rad(30);
alp=acos((a-c)/(a));
rho=(delta+2*a-2*a*cos(alp))/(2*cos(alp+theta));
L=a*sin(alp)-rho*(1-sin(alp+theta));
%% Get volume of gel
exp1=((L+rho)-sqrt(rho^2-(z-(delta+c)/2)^2))^2;
exp2=(z-delta)*(2*a+delta-z);
Vg=vpa(2*pi*vpaintegral(exp1,z,delta/2,delta+c)...
-2*pi*vpaintegral(exp2,z,delta,delta+c),4);
The second part of the integral is easily solvable. The first part is what makes the computation long/imposible.
Thanks for your help!

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!