在Julia中解决梯度依赖ODE

问题描述

我正在尝试使用DifferentialEquation.jl解决以下ODE:

enter image description here

其中P是用于投影的矩阵。我很难想象如何解决这个问题。有没有办法使用Julia直接解决问题?还是应该尝试手动重新排列方程式(我已经尝试过)以适应通常的微分方程格式? 我已经开始写下一些可以在下面找到的方程式了,但是我并没有走太远。

df=pd.DataFrame(np.random.rand(100,6) * 1,columns=['A','B','C','D','E','F'])

感谢您的任何帮助,并在此先致谢。

解决方法

如果要使用异位形式,则必须返回导数,即

function ODE(u,p,t)
    g,N = p
    Jacg = ForwardDiff.jacobian(g,u)
   
    sum = zeros(size(N,1))

    for i in 1:size(Jacg,1)
        sum = sum + Jacg[i,:] .* (u / norm(u)) .* N[:,i]
    end

    Proj_N(N) * sum
end

我认为您只是混合了变异形式和非变异形式。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...