Solve ODE with BC

5 visualizzazioni (ultimi 30 giorni)
Sergio Manzetti
Sergio Manzetti il 3 Giu 2020
Hi, I would like to solve this ODE with initial conditions y=0 and y'=0, and boundary cond L=[0,1] using the given command:
syms x y(x)
% Define first and second derivatives for y
Dy = diff(y,x);
% Define differential equation
Diff = (1i*diff(y,x)-x)^2+x^2 == 0.326307*y;
% Set initial conditions
y = y(0) == 0;
Dy = diff(y,0) == 0;
% Solve differential equation and display
Uc_sym = dsolve(Diff, y, Dy);
display(['y = ',char(10),char(Uc_sym),char(10)])
Alternatively, check out this example in the documentation.
But I am not aware on how to include the BCs and how to make this script work at all.. Can someone help?
Thanks

Risposta accettata

Stephan
Stephan il 3 Giu 2020
Modificato: Stephan il 3 Giu 2020
I doubt that your ode has an analytical solution - however here is a minimal working example of how to include BC's in a symbolic way:
syms y(x)
% Define first derivative for y
Dy = diff(y,x);
% Define differential equation
ode = y == Dy * x;
% Set conditions
conds = [y(0)==0, y(1)==2, Dy(0)==2, Dy(1)==2];
% Solve differential equation and display
sol = dsolve(ode, conds)
If you dont find an analytical solution use bvp4c instead to solve numeric.
  1 Commento
Sergio Manzetti
Sergio Manzetti il 8 Giu 2020
Modificato: Sergio Manzetti il 8 Giu 2020
Thanks! Seems solving this problem with bvp4c is not easy at all, although the problem here and the BC conditions are quite straight forward presented.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by