fnewt.f
来自「Fortran的数学物理方程数值算法源程序。这是"Numerical Metho」· F 代码 · 共 31 行
F
31 行
subroutine fnewt( x, a, Nm, f, D)
integer*4 Nm
real*8 x(Nm), a(Nm), f(Nm), D(Nm,Nm)
! Function used by the N-variable Newton's method
! Inputs
! x State vector [x y z]
! a Parameters [r sigma b]
! Nm Max number of variables
! Outputs
! f Lorenz model r.h.s. [dx/dt dy/dt dz/dt]
! D Jacobian matrix, D(i,j) = df(j)/dx(i)
! Evaluate f(i)
f(1) = a(2)*(x(2)-x(1))
f(2) = a(1)*x(1)-x(2)-x(1)*x(3)
f(3) = x(1)*x(2)-a(3)*x(3)
! Evaluate D(i,j)
D(1,1) = -a(2) ! df(1)/dx(1)
D(1,2) = a(1)-x(3) ! df(2)/dx(1)
D(1,3) = x(2) ! df(3)/dx(1)
D(2,1) = a(2) ! df(1)/dx(2)
D(2,2) = -1 ! df(2)/dx(2)
D(2,3) = x(1) ! df(3)/dx(2)
D(3,1) = 0 ! df(1)/dx(3)
D(3,2) = -x(1) ! df(2)/dx(3)
D(3,3) = -a(3) ! df(3)/dx(3)
return
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?