Azzera filtri
Azzera filtri

How do I plot a function that has a value given

1 visualizzazione (ultimi 30 giorni)
jake stan
jake stan il 7 Feb 2018
Modificato: jake stan il 7 Feb 2018
I'm trying to graph this question from here https://math.stackexchange.com/questions/2638189/express-density-as-a-ratio-of-height
I'm given values for D2 and D1, and then get the ratio D2/D1. I end up with an
equation 4*D2/D1 = 3x^2-x^3, and I need to acquire x from that equation and then plot it.
I tried doing the root of this equation, and when I tried to graph x, D2/D1, it says that "Vectors must be the same length".

Risposte (2)

Star Strider
Star Strider il 7 Feb 2018
Modificato: Star Strider il 7 Feb 2018
Since you did not post your code, I cannot help you troubleshoot it.
Two options —
Symbolic:
syms x
DRatio = 3*x^2-x^3;
xroot = solve(DRatio == 0)
xroot =
0
0
3
Numeric:
xroots = roots([-1 3 0 0])
xroots =
0
0
3
  5 Commenti
jake stan
jake stan il 7 Feb 2018
Oh yeah sorry I just edited
Star Strider
Star Strider il 7 Feb 2018
Try this:
xroots = arrayfun(@(a) roots([1 -3 0 4*a]), [0.4, 0.87, 0.84,0.88], 'Uni',0)
Roots = [xroots{:}]'
Roots =
2.7952 0.8659 -0.6611
2.3916 1.5483 -0.9398
2.4318 1.4934 -0.9252
2.3770 1.5676 -0.9446

Accedi per commentare.


Walter Roberson
Walter Roberson il 7 Feb 2018
For vector D1 and D2, you need D2./D1 instead of D2/D1

Categorie

Scopri di più su Function Creation in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by