尼枚罗指数matlab,洛伦兹系统李雅普诺夫指数的MATLAB源代码

*d0; z3 = z0new+e3z/d3*d0;

%

% ****************************************************

% * 求李雅谱诺夫指数

% ****************************************************

%

if j>= timesum1

lsum1 = lsum1+log(d1/d0);

lsum2 = lsum2+log(d2/d0);

lsum3 = lsum3+log(d3/d0);

count1 = count1+1;

% lamda1 = lsum1/count1/h0;

% lamda2 = lsum2/count1/h0;

% lamda3 = lsum3/count1/h0;

end

end

lamda1 = lsum1/count1/h0;

lamda2 = lsum2/count1/h0;

lamda3 = lsum3/count1/h0;

% Lyapunov = [lamda1, lamda2, lamda3];

fprintf('LE1=%f,LE2=%f,LE3=%f\n',lamda1,lamda2,lamda3);

end

% *

% ****************************************************

% * 函数: 龙格库塔迭代方程

% * 描述: 龙格库塔迭代方程

% * 参数: x,y,z

% * 返回: dx,dy,dz

% ****************************************************

% *

function [dx,dy,dz] = dxdt(x,y,z)

%

% ****************************************************

% * 设定龙格库塔计算步长

% ****************************************************

%

h = 1e-2;

%

% ****************************************************

% * 四阶龙格库塔

% ****************************************************

%

K1 = f1(x,y,z);

K2 = f1(x + h*K1/2,y + h*K1/2,z + h*K1/2);

K3 = f1(x + h*K2/2,y + h*K2/2,z + h*K2/2);

K4 = f1(x + h*K3,y + h*K3, z + h*K3);

L1 = f2(x,y,z);

L2 = f2(x + h*L1/2,y + h*L1/2,z + h*L1/2);

L3 = f2(x + h*L2/2,y + h*L2/2,z + h*L2/2);

L4 = f2(x + h*L3,y + h*L3, z + h*L3);

M1 = f3(x,y,z);

M2 = f3(x + h*M1/2,y + h*M1/2,z + h*M1/2);

M3 = f3(x + h*M2/2,y + h*M2/2,z + h*M2/2);

M4 = f3(x + h*M3,y + h*M3, z + h*M3);

dx = (K1 + 2*K2 + 2*K3 + K4)*h/6;

dy = (L1 + 2*L2 + 2*L3 + L4)*h/6;

dz = (M1 + 2*M2 + 2*M3 + M4)*h/6;

end

function g=f1(x,y,z)

A = 10;

g = A*(y - x);

end

function g=f2(x,y,z)

B = 28;

g = B*x - y - x*z;

end

function g=f3(x,y,z)

C = 8/3;

g = x*y - C*z;

end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值