matlab求解常数微分方程:xy‘’-3y‘=x^2,y(1)=0,y’(1)=-0.75
时间: 2024-01-21 09:02:45 浏览: 174
可以使用matlab中的ode45函数求解常数微分方程。具体步骤如下:
1. 定义匿名函数,将常数微分方程转化为一阶微分方程组:
```matlab
fun = @(x, y) [y(2); (x.^2+3*y(2))/x];
```
这里的y(1)代表y,y(2)代表y'。
2. 定义初始值:
```matlab
x0 = 1;
y0 = [0 -0.75];
```
这里的y0是一个行向量,包含了y(1)和y(2)在x=1时的值。
3. 定义求解区间:
```matlab
xspan = [1 3];
```
这里的[1 3]表示从x=1开始,求解到x=3。
4. 调用ode45函数求解微分方程:
```matlab
[x, y] = ode45(fun, xspan, y0);
```
5. 绘制解的图像:
```matlab
plot(x, y(:,1), 'linewidth', 2);
xlabel('x');
ylabel('y');
```
完整代码如下:
```matlab
fun = @(x, y) [y(2); (x.^2+3*y(2))/x];
x0 = 1;
y0 = [0 -0.75];
xspan = [1 3];
[x, y] = ode45(fun, xspan, y0);
plot(x, y(:,1), 'linewidth', 2);
xlabel('x');
ylabel('y');
```
运行代码后,可以得到如下解的图像:
注意:由于x=0时分母为0,因此上述代码不能求解x=0的情况。
相关问题
求微分方程:x3y”+x2y”-4xy'=3x2 ,y(0.1)=y(0.1)=2,y”(0.1)=1 的解析解、并使用MATLAB画出它们的图形
首先,将微分方程化为常系数线性齐次微分方程。
令 v(x) = y'(x),则 y''(x) = v'(x)
将 v(x) 替换 y'(x),得到:
x^3v'(x) + x^2v'(x) - 4xv(x) = 3x^2
化简得到:
v'(x) + (2/x)v(x) = 3/x
这是一个一阶常系数线性非齐次微分方程,可以使用常数变易法求解。
首先求解对应的齐次方程:
v'(x) + (2/x)v(x) = 0
其通解为:
v(x) = C/x^2
其中 C 为任意常数。
然后,根据常数变易法,假设特解为 v = A(x)/x^2,则:
v' = A'/x^2 - 2A/x^3
将特解和特解的导数代入原方程得到:
A'(x)/x^3 = 3/x
解得:
A(x) = (3/2)x^2 + C
特解为:
v(x) = ((3/2)x^2 + C)/x^2
代入 y' = v(x) 得到:
y'(x) = ((3/2)x^2 + C)/x^2
再次积分得到:
y(x) = (-3/2)x + C1ln(x) + C2
根据初始条件 y(0.1) = 2,可得:
C2 = 2
根据初始条件 y'(0.1) = 2,可得:
C1 = 13/20
根据初始条件 y''(0.1) = 1,可得:
C = -17/2
因此,原微分方程的解析解为:
y(x) = (-3/2)x - (17/2)ln(x) + (13/20)ln(x) + 2
使用MATLAB画图如下:
```
x=linspace(0.1,10,1000);
y=(-3/2).*x-(17/2).*log(x)+(13/20).*log(x)+2;
plot(x,y)
xlabel('x')
ylabel('y')
title('Solution to the differential equation')
```

求微分方程的解析解、并使用MATLAB画出它们的图形 :x3y”+x2y”-4xy'=3x2 ,y(0.1)=y(0.1)=2,y”(0.1)=1
首先将微分方程化为标准形式:
$$x^3y''+x^2y'-4xy'=3x^2$$
然后令 $u=y'$,则:
$$x^3u'+x^2u-4xu=3x^2$$
化简可得:
$$u' + \frac{u}{x} - \frac{4u}{x^2} = \frac{3}{x}$$
这是一个一阶常系数非齐次线性微分方程,可以使用常数变易法来求解。
首先求出对应的齐次方程的通解:
$$u_h = c_1 x^2 + c_2 x^{-2}$$
然后再求出一个特解 $u_p$,代入原方程中解得:
$$u_p = \frac{3}{4}x$$
因此原方程的通解为:
$$u = c_1 x^2 + c_2 x^{-2} + \frac{3}{4}x$$
再对 $u$ 求一次不定积分得到 $y$:
$$y = \frac{1}{5} c_1 x^5 - \frac{1}{3} c_2 x^{-3} + \frac{3}{8}x^2 + C$$
其中 $C$ 为积分常数。
根据初始条件 $y(0.1)=y'(0.1)=2,y''(0.1)=1$ ,可以列出如下方程组:
$$\begin{cases}
y(0.1) = \frac{1}{5} c_1 (0.1)^5 - \frac{1}{3} c_2 (0.1)^{-3} + \frac{3}{8}(0.1)^2 + C = 2 \\
y'(0.1) = c_1 (0.1)^4 + \frac{2}{3} c_2 (0.1)^{-4} + \frac{3}{4}(0.1) = 2 \\
y''(0.1) = 20c_1(0.1)^3 - \frac{8}{3}c_2(0.1)^{-5} = 1
\end{cases}$$
解得 $c_1=30.3252$,$c_2=-0.1663$,$C=0.4995$。
因此,原微分方程的解析解为:
$$y = 6.06504 x^5 - 0.1663 x^{-3} + 0.375x^2 + 0.4995$$
使用MATLAB画出图像的代码如下:
```matlab
x = linspace(0.1, 2, 1000);
y = 6.06504 * x.^5 - 0.1663 * x.^(-3) + 0.375 * x.^2 + 0.4995;
plot(x, y);
xlabel('x');
ylabel('y');
title('Solution of the Differential Equation x^3y``+x^2y`-4xy`=3x^2');
```
得到的图形如下:

阅读全文
相关推荐













