fplot differentiated symbolic equation

조회 수: 6 (최근 30일)
robert hyde
robert hyde 2017년 11월 8일
답변: Omer Ali 2017년 11월 12일
Hello there!
I'm trying to use the fplot function to plot an equation that I defined previously. However I think because I used syms and the diff() function to create the variable I am trying to plot, it is messing up the fplot function. My output is one graph which I already got to plot and an orange error message saying: '''The following error was reported evaluating the function in FunctionLine update: sym output type is not supported. Set 'UniformOutput' to false.'''
Any ideas for how to solve this? All other threads talk about arrayfun or something unrelated, if not, no worries, but thanks!
  댓글 수: 1
robert hyde
robert hyde 2017년 11월 8일
편집: robert hyde 2017년 11월 8일
Here is my code (the error is in plotting Vg):

댓글을 달려면 로그인하십시오.

채택된 답변

Star Strider
Star Strider 2017년 11월 8일
I would calculate the derivative and create the anonymous function for ‘Vg’ with:
Vg = matlabFunction(diff(Mg,t), 'Vars',{t});
With that change, it runs without error, although the plot generates a long ‘Warning’ message.
  댓글 수: 2
robert hyde
robert hyde 2017년 11월 8일
this worked perfectly and fast, thanks! MVP isn't just a label
Star Strider
Star Strider 2017년 11월 8일
As always, my pleasure!
Thank you very much for your compliment!

댓글을 달려면 로그인하십시오.

추가 답변 (2개)

Karan Gill
Karan Gill 2017년 11월 8일
You made a simple mistake. You used anonymous functions instead of symbolic functions. Declare a symbolic function using
syms Va(t)
Va(t) = t^2;
and plot it with fplot
fplot(Va)
See the second example in fplot doc: https://www.mathworks.com/help/symbolic/fplot.html
Comment if you have issues. If it works, please accept this answer.
  댓글 수: 1
robert hyde
robert hyde 2017년 11월 8일
This also worked and is a lot simpler to read, so I will use this as I am marked on how my code looks rather than it's run time, thank you very much!

댓글을 달려면 로그인하십시오.


Omer Ali
Omer Ali 2017년 11월 12일
Thanks for asking this Rob! :)

카테고리

Help CenterFile Exchange에서 Get Started with Symbolic Math Toolbox에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by