How to plotting symbolic solution over range?

2 visualizzazioni (ultimi 30 giorni)
Keith Grey
Keith Grey il 15 Giu 2020
Modificato: Ameer Hamza il 15 Giu 2020
syms y(x)
ode = x * diff(y, x) == (50) * x * diff(y, x, 2) - (40.3) * x + (101); % DE shown above.
x_dot = dsolve(ode);
plot(195, x_dot)
The value (101) changes with frequency, but I've simplified the equation for minimalism.
I'm trying to plot x_dot vs frequency, but I get:
>> Input must be a function or functions of a single variable.
How can I plot this?
  1 Commento
KSSV
KSSV il 15 Giu 2020
x_dot will be a symbolic expression with x and has two constants C1, C2. You cannot plot using plot.

Accedi per commentare.

Risposte (1)

Ameer Hamza
Ameer Hamza il 15 Giu 2020
Modificato: Ameer Hamza il 15 Giu 2020
There is a mistake in the writing of the equations. Also, you need to specify initial conditions to solve for the constant of integrations. Try following code
syms y(x)
dy = diff(y, x, 1);
dy2 = diff(y, x, 2);
ode = dy == (50) * dy2 - (40.3) * x + (101); % DE shown above.
ic = [y(0)==1, dy(0)==0]; % initial conditions
y_sol(x) = dsolve(ode, ic);
fplot(y_sol, [0 10])

Prodotti


Release

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by