Simplify Transfer Function Matrix from State Space Form
Show older comments
Hello,
So I am trying to find the transfer function based on a given state space.
I have 4 state space variables and 2 input variables
I solve for the matrix by solving for it via:
M=inv(s*eye(4)-A)*B(:,1) where s is the transfer function variable
A and B are a 4x4 and a 4x2 matrix, respectively.
I only want to know the transfer function of the last state variable based on the 1st input and so I ran the code to get M(4)
The result is:
(291092572962188544*(52192918614186625698444518236820348728735495618560*s^2 + 11252397011746677728245236731359753030204089434112*s + 444373219855405652822261463840068999419504203635))/(67399866667876599486667537717549076684092861056351431202759025623040*s^4 + 42464278741089363000296954579309245873406204871934648171073988722688*s^3 + 2297488914641467386088601099487479294998500605751388518061919174656*s^2 - 2440319864177907270599586997470126899570878247883142511440169009152*s - 349746435404782601645659492711056495443542480131034307368768072445) + (179449926349046518120448*(16703017991267559745434935388614455463159204413440*s^2 + 9694255099214075385675054328905457782285043499008*s + 1200327659673728889951461375690725495294778934073))/(78125*(67399866667876599486667537717549076684092861056351431202759025623040*s^4 + 42464278741089363000296954579309245873406204871934648171073988722688*s^3 + 2297488914641467386088601099487479294998500605751388518061919174656*s^2 - 2440319864177907270599586997470126899570878247883142511440169009152*s - 349746435404782601645659492711056495443542480131034307368768072445)) + (12453065286370507543289888743877440*(81129638414606681695789005144064*s^2 + 54732842176865668872273383129088*s + 8898770669723102454779195279849))/(67399866667876599486667537717549076684092861056351431202759025623040*s^4 + 42464278741089363000296954579309245873406204871934648171073988722688*s^3 + 2297488914641467386088601099487479294998500605751388518061919174656*s^2 - 2440319864177907270599586997470126899570878247883142511440169009152*s - 349746435404782601645659492711056495443542480131034307368768072445) - (498460498419343452338927647605129216*(5*s + 1)*(9007199254740992*s + 2461747390280677)*(9007199254740992*s + 3614818768512437))/(125*(67399866667876599486667537717549076684092861056351431202759025623040*s^4 + 42464278741089363000296954579309245873406204871934648171073988722688*s^3 + 2297488914641467386088601099487479294998500605751388518061919174656*s^2 - 2440319864177907270599586997470126899570878247883142511440169009152*s - 349746435404782601645659492711056495443542480131034307368768072445))
How Can I simplify this line of code to get my answer with decimals vs these awful integers?
I tried using 'format', but that didn't change. I still want my output to be in terms of s of course.
Future thanks!
Accepted Answer
More Answers (0)
Categories
Find more on Mathematics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!