一、实验内容
求微分方程 xy’+ y – exp(x) = 0,在初始条件y(1) = 2 exp下的特解,并画出解函数的图形。
二、实验源程序及结果截图
from scipy.integrate import odeint
import numpy as np
import math
import matplotlib.pyplot as plt
def dy_dx(y,x):
return (math.exp(x)-y)/x
x=np.linspace(1,10)
y_calculate=odeint(dy_dx,2*math.exp(1),x)
plt.plot(x,y_calculate,c='g')
plt.grid()
plt.show()
三、实验的分析与思考(若有)
odeint函数是Scipy库中的一个解常微分方程的函数,其主要功能是求解形如 y’ = f(y, t) 的常微分方程。使用Odeint函数时,需要将微分方程的函数定义出来。通常,将该函数定义成一个Python函数,并将该函数中的参数设置为因变量y和自变量x。
odeint(func,y0,t)函数有多个参数可供设置,以下是主要参数的介绍:
func:微分方程函数。
y0:初始值。
t:时间变量。 其余参数都有默认值,不必要。
推广使用二阶微分方程时,注意方法。