Julia 常微分方程求解

🔖 julia
Author

Guangyao Zhao

Published

Mar 20, 2023

常微分方程可以计算多组多维变量:

using DifferentialEquations
using DataFrames

# 定义常微分方程
function f(du, u, p, t)
    du[1] = u[1]
    du[2] = 3 * u[2]
end

# 第一组
u0 = [[1.4 2.1]; [3.2 4.0]] # 常微分方程也可以求解多维矩阵
tspan = (0.0, 1.0) # 初始值和时间区间
prob = ODEProblem(f, u0, tspan)
sol = solve(prob)
@show sol.u[end]

# 第二组,将第一组的 u0[1,2]修改为 100.0,比较两组答案
u0 = [[1.4 100.0]; [3.2 4.0]] # 常微分方程也可以求解多维矩阵
tspan = (0.0, 1.0) # 初始值和时间区间
prob = ODEProblem(f, u0, tspan)
sol = solve(prob)
@show sol.u[end]