Use matlab to solve differential equations 5261 numerical solution 4102 initial value problem and analytical solution, which can be handled like this:
1. Numerical solution
The numerical solution to the initial value problem of differential equations can be solved using the ode function.
First, customize the function of the differential equation, that is,
dy = 3/x*y x^3*(exp(x) cos(x))-2*x;
Second, determine the initial conditions, that is
y0=[(exp(pi) 2/pi)*pi^3];
Third, use the ode45 function to get the numerical solution [x, y]
2. Analytical solution
The analytical solution to the initial value problem of differential equations can be solved using the dsolve function.
First, declare the variable for y(x), that is,
syms y(x)
Second, the first derivative of y(x), that is,
Dy=diff(y,1)
Third, use the dsolve function to find the expression of the analytical solution y(x)
y=dsolve(Dy==3/x*y x^3*(exp(x) cos(x))-2*x,y(pi)==(exp(pi) 2/pi)*pi ^3)
3. Draw numerical solution and analytical solution curves
First, use the plot function to draw the curve of the numerical solution
plot(x.y)
Second, calculate the y value equivalent to a series of several values of x in the [π, 2π] interval and y
Third, use the plot function to draw the curve of the analytical solution
After running the code, you can get the following results.
%%%%%%%%%%%%%%%%%%% source program
i=0;equ=0;sum=0;
data=input('please input number: ');
while(data~=0)
sum=sum data;
key=input('please go on: ');
data=key;
i=i 1;
end
equ=sum/i;
equ,sum
%%%%%%%%%%%%%%%%%%%%%%%%%
Results of the:
please input number: 1
please go on: 2
please go on: 3
please go on: 4
please go on: 5
please go on: 0
equ =
3
sum =
15
The above is the detailed content of Matlab implementation method and graphical display of numerical and analytical solutions to the initial value problem of differential equations within an interval. For more information, please follow other related articles on the PHP Chinese website!