Ai
1 Star 0 Fork 0

zq_online/python-math

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
euler2.py 899 Bytes
一键复制 编辑 原始数据 按行查看 历史
zq_online 提交于 2024-01-27 13:11 +08:00 . Initial commit
# 如果你想要模拟欧拉方法解决微分方程的初值问题,例如求解以下形式的初值问题:
# [ y' = f(t, y) ] [ y(t_0) = y_0 ]
# 可以编写一个使用欧拉法迭代求解的简单实现:
import math
def euler_method(f, t0, y0, h, n_steps):
# 初始化结果列表
t_values = [t0]
y_values = [y0]
for _ in range(n_steps):
# 计算下一个点的值
y_next = y_values[-1] + h * f(t_values[-1], y_values[-1])
t_next = t_values[-1] + h
# 更新结果列表
t_values.append(t_next)
y_values.append(y_next)
return t_values, y_values
# 示例:使用欧拉法解 y' = -y,y(0) = 1,在区间 [0, 2π] 上进行100步迭代
def f(t, y):
return -y
t0 = 0
y0 = 1
h = 2 * math.pi / 100
n_steps = 100
t_solution, y_solution = euler_method(f, t0, y0, h, n_steps)
print(t_solution)
print(y_solution)
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/createmaker/python-math.git
git@gitee.com:createmaker/python-math.git
createmaker
python-math
python-math
master

搜索帮助