How can I simplify my expression?

6 次查看(过去 30 天)
Hey Guys!
So I'm in the middle of a modelling assignment, and have to perform an inverse-laplace transformation on the following expression:
(4.1567898247199520341942099474821e+54*Ua)/(s*(100229224846904105411357376442422.0*s^6 + 5.9483485126126760990974540409349e+35*s^5 + 5.0239631343165245308229429056249e+40*s^4 + 2.9725399793555455758222675933522e+44*s^3 + 1.0212281680153877722127895364433e+48*s^2 + 5.6753104089399036705416819827312e+51*s + 1.0269914923230344802781707591666e+54))
My problem is that this returns a sum of exponential functions containing complex numbers, as below
4.0475406620140304336968591117778*Ua + 0.048633477607650367346402317141675*Ua*exp(-5720.286485024099496269401688463*t) - 4.1776273848702626395266209427561*Ua*exp(-186.91307534353595311970441088345*t) - Ua*exp(t*(- 1.3058525120961962405107425874867 - 21910.096393659412026550844582755i))*(0.00018263285547812810287333894168844 - 0.000049523771938216719441312262428056i) - Ua*exp(t*(- 1.3058525120961962405107425874867 + 21910.096393659412026550844582755i))*(0.00018263285547812810287333894168844 + 0.000049523771938216719441312262428056i) + Ua*exp(t*(- 12.466668994798763511731927336948 - 4467.9831446674244095221560260197i))*(0.040909255479769047344553095860047 - 0.056379618619562305355740635447079i) + Ua*exp(t*(- 12.466668994798763511731927336948 + 4467.9831446674244095221560260197i))*(0.040909255479769047344553095860047 + 0.056379618619562305355740635447079i)
Now, as you can see, the parts that have complexes in it are complex conjugates and therefore the imaginary parts could be eliminated - meaning that this expression simplifies into a real expression. My problem is that I just can't get matlab into doing this simplification.
What I have tried so far:
rewrite('sincos'), simplify('Criterion','preferReal'), but I still couldn't eliminate the imaginary parts.
Thank you for your thoughts!
  3 个评论
Star Strider
Star Strider 2019-5-5
This may be a bug. It would definitely be an enhancement request.
If you want to report it as such, use the Contact Us telephone handset icon in the upper right of this page. (Have MATLAB open at the time so you can execute the ver command.)

请先登录,再进行评论。

采纳的回答

gonzalo Mier
gonzalo Mier 2019-5-6
It only needs more time to simplify:
I'm doing:
simplify(4.0475406620140304336968591117778*Ua + 0.048633477607650367346402317141675*Ua*exp(-5720.286485024099496269401688463*t) - 4.1776273848702626395266209427561*Ua*exp(-186.91307534353595311970441088345*t) - Ua*exp(t*(- 1.3058525120961962405107425874867 - 21910.096393659412026550844582755i))*(0.00018263285547812810287333894168844 - 0.000049523771938216719441312262428056i) - Ua*exp(t*(- 1.3058525120961962405107425874867 + 21910.096393659412026550844582755i))*(0.00018263285547812810287333894168844 + 0.000049523771938216719441312262428056i) + Ua*exp(t*(- 12.466668994798763511731927336948 - 4467.9831446674244095221560260197i))*(0.040909255479769047344553095860047 - 0.056379618619562305355740635447079i) + Ua*exp(t*(- 12.466668994798763511731927336948 + 4467.9831446674244095221560260197i))*(0.040909255479769047344553095860047 + 0.056379618619562305355740635447079i),1000)
And the imaginary part is not there anymore.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by