MATLAB Answers

Analytical solution of ilaplace

3 views (last 30 days)
john on 19 Apr 2014
Commented: john on 19 Apr 2014
numerical solution of ilaplace is done by:
s=feval(symengine, 'float', s);
syms t 'real'
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
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 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.


Community Treasure Hunt

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

Start Hunting!