clear; clc;
x0 = sin(0:0.1:10*pi)';
n = numel(x0);
dt = 1e-8;
A = rand(n);
temp = A';
A = temp*A;
b = A*x0;
H = -A;
Ta = H*dt + (H*dt)^2/2 + (H*dt)^3/6; % Ta(0)
F = dt * ( eye(n,n) + H*dt/2 + (H*dt)^2/6 + (H*dt)^3/24 ); % F(dt)
x = F * b; % x0
for i = 1 : n
Ta = 2*Ta + Ta*Ta;
T = eye(n,n) + Ta;
x = ( eye(n,n) + T ) * x;
end
x = 2 * x;
figure(1)
plot(1:n,x0,1:n,x,'o','MarkerFaceColor','red','MarKerSize',4,'MarkerIndices',1:2:n);
ylim([-1.1,1.1]);
精確解與解析解的二範數約爲3.3221e-06。說明此方法可靠