MATLAB Answers

Analytical solution of ilaplace

3 views (last 30 days)
john
john on 19 Apr 2014
Commented: john on 19 Apr 2014
Hello,
numerical solution of ilaplace is done by:
s=ilaplace(result(i,1));
s=feval(symengine, 'float', s);
syms t 'real'
s=vpa(sqrt(2)*real(s),4);
but how can I solve ilaplace analytical? for example:
-((2^(1/2)*C*L2*U*sin((pi*phiU)/180)*s^3)/2 + ((2^(1/2)*C*R3*U*sin((pi*phiU)/180))/2 + (2^(1/2)*C*L2*U*omega*cos((pi*phiU)/180))/2)*s^2 + ((2^(1/2)*U*sin((pi*phiU)/180))/2 + (2^(1/2)*C*R3*U*omega*cos((pi*phiU)/180))/2)*s + (2^(1/2)*U*omega*cos((pi*phiU)/180))/2)/((omega^2 + s^2)*(R1 + R3 + L1*s - C*M12^2*s^3 + C*L1*L2*s^3 + C*L2*R1*s^2 + C*L1*R3*s^2 + C*L2*R3*s^2 + 2*C*M12*R3*s^2 + C*R1*R3*s))

Answers (1)

Walter Roberson
Walter Roberson on 19 Apr 2014
ilapace(expression)
is the analytic form. It might involve the symbolic sum over the roots of an expression, perhaps using a RootOf() object. If the polynomial in the RootOf() is degree higher than 4 then you are unlikely to be able to get an analytical solution. If it is degree 2, 3, or 4 then you can in theory extract the analytical solutions, but for anything higher than degree 2 they might be terribly long.
Unfortunately at the moment I do not know how to use MuPAD to request all of the roots of a RootOf() object which is a polynomial of degree 2, 3, o4 4. Possibly indexing the RootOf() might do it. In Maple I would use the allvalues() operation, which is not defined for MuPAD. I cannot test this as I do not have MuPAD.
The analytic transform for the expression you give, with the roots all expanded, runs to pages and pages. I have my system trying to simplify() it, but my expectation is that I will run out of memory.
  1 Comment
john
john on 19 Apr 2014
sorry....what does it mean: runs to pages and pages ? I will run out of memory?
thank you

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!