How to solve ODE with symbolic conditions

2 views (last 30 days)
I have an issue with the boundary conditions for this ODE. With the code as is it assumes that Dw is a function of a not that for r it should subsitute a. How can I solve this?
clear; clc;
syms a P G t nu F Q r D w(r)
F = - pi * a^2 * P
Q = (pi*r^2*P) / (2*pi*r)
ode = diff(((1/r)*diff((r*diff(w,r)),r)),r) == Q/D
Dw = diff(w,r);
cond1 = Dw(0) == 0
cond2 = Dw(a) == 0
cond3 = w(a) == 0
conds = [cond1 cond2 cond3];
wSol(r) = dsolve(ode,conds)
In all I try to solve this ODE:
with the following 3 BC:
Thank you,

Accepted Answer

Raunak Gupta
Raunak Gupta on 29 May 2020
I tried to solve the differential equation with the given code and I see that the returned wSol(r) is a function of r only and not a. Also, DW too is a function of r if you check in the workspace about the independent variable present for DW. I checked the solution too and it looks correct to me.
This is the solution I got.
wSol(r) = (P*a^4 - 2*P*a^2*r^2 + P*r^4)/(64*D);
You may want to check again about the correctness of the solution.
Aleksander Tyczynski
Aleksander Tyczynski on 29 May 2020
Updated to R2020a. Now it works fabulously.
Thank you.

Sign in to comment.

More Answers (0)




Community Treasure Hunt

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

Start Hunting!