MATLAB Second Order Differential Equations in MatLab

AI Thread Summary
To model the stiff differential equation y'' + (2/x)*y' = (0.7/x^2)*((y^(-1/2)) - (0.067)*(1-y)^(-1/2)) in MATLAB, the user is encountering an error related to the undefined input argument "x" in the function definition. The correct function structure should include the parameters k and lambda defined within the function. The user should ensure that the function dy is properly defined before calling ode15s. The initial conditions and the xspan are set correctly, but the function must be structured to avoid referencing undefined variables. The error message indicates that the function needs to be adjusted to properly handle the input parameters for successful execution.
nasko89
Messages
1
Reaction score
0
Hey guys, I am new to PF. I need to be able to model a stiff differential equation in MatLab. I haven't used MatLab before so I am not really sure how to set the function and boundary conditions for the equation:

y'' + (2/x)*Y' = (.7/x^2)*( (y^(-1/2)) - (.067)((1-y)^(-1/2) )

y(0)=0
y'(1)=1
The zero boundary is undefined and there is a lot of singularities in the solution itself.

So far I have:

function dy = f(x,y)
y = [1 1];
k = .7;
lambda = .67;
xspan = [0 10];
ic = [0 1];
dy=[y(2); (-2/x) * y(2) + (k/(x)^2)*( (y(1)^(-1/2)) - lambda*((1-y(1)))^(-1/2) )];
[x,y] = ode15s(@f,xspan,ic);
plot(x,y(:,1),'-o')

And I am getting a an error in the command console:

? Input argument "x" is undefined.

Error in ==> f at 7
dy=[y(2); (-2/x) * y(2) + (k/(x)^2)*( (y(1)^(-1/2)) -
lambda*((1-y(1)))^(-1/2) )];

I do not know where to go from here.
 
Physics news on Phys.org
Can someone help me out?You need to define the function for dy before calling it in ode15s. The syntax should be something like this: function dy = f(x,y) k = .7; lambda = .67; dy=[y(2); (-2/x) * y(2) + (k/(x)^2)*( (y(1)^(-1/2)) - lambda*((1-y(1)))^(-1/2) )];endxspan = [0 10];ic = [0 1];[x,y] = ode15s(@f,xspan,ic);plot(x,y(:,1),'-o')
 

Similar threads

Replies
4
Views
1K
Replies
8
Views
2K
Replies
1
Views
2K
Replies
2
Views
3K
Replies
5
Views
2K
Replies
18
Views
4K
Back
Top