📄 parametrix4srm.m
字号:
function [A,B,C,F,H,L] = parametrix4SRM(N,h)
clear all ; clc
N=6; h=0.1;
Ndim=N+3;
A = zeros(Ndim,Ndim);B = zeros(Ndim,Ndim);C = zeros(Ndim,Ndim);
F = zeros(Ndim,Ndim);H = zeros(Ndim,Ndim);L = zeros(Ndim,Ndim);
switch N
case 1,
A(1,:) = [1/3,-1/2,0,1/6];
A(2,2:3) = [1,-1/2];
A(3,3:4) = [1,-1/2];
A(4,4)=1/3; % right-upper is assigned
A = sysMat(A);
B(1,:) = [1/30,-7/120,1/60,1/120];
B(2,:) = [1/40,-11/30,-11/120,11/60];
B(3,:) = [11/60,-11/120,-11/30,11/40];
B(4,:) = [1/120,1/60,-7/120,1/30]; % right-upper is assigned
C(1,:) = [1/20,7/120,-1/10,-1/120];
C(2,2:4) = [7/60,-29/120,-1/10];
C(3,3:4) = [-17/60,7/120];
C(4,4) = 1/20;
C = sysMat(C);
F(1,:) = [1/252,43/1680,1/84,1/5040];
F(2,2:4) = [33/140,311/1680,1/84];
F(3,3:4) = [33/140,43/1680];
F(4,4) = 1/252;
F = sysMat(F);
H(1,:) = [-1/72,-1/80,1/40,1/720];
H(2,:) = [-71/720,-5/24,61/240,19/360];
H(3,:) = [-19/360,-61/240,5/24,71/720];
H(4,:) = [-1/720,-1/40,1/80,1/72]; % right-upper is assigned
L = -[-3 -5 7 1;5 3 -9 1;-1 9 -3 -5;-1 -7 5 3]/24;
case 2,
A(1,:) = [1/3,-1/2,0,1/6,0];
A(2,2:5) = [4/3,-1,0,1/6];
A(3,3:5) = [2,-1,0];
A(4,4:5)=[4/3,-1/2];
A(5,5)=1/3; % right-upper is assigned
A = sysMat(A);
B(1,:) = [1/30,-7/120,1/60,1/120,0];
B(2,:) = [11/40,-1/3,-3/20,1/5,1/120];
B(3,:) = [11/60,11/60,-11/15,11/60,11/60];
B(4,:) = [1/120,1/5,-3/20,-1/3,11/40];
B(5,:) = [0,1/120,1/60,-7/120,1/30]; % right-upper is assigned
C(1,:) = [1/20,7/120,-1/10,-1/120,0];
C(2,2:5) = [1/3,-11/60,-1/5,-1/120];
C(3,3:5) = [17/30,-11/60,-1/10];
C(4,4:5) = [1/3,7/120];
C(5,5) = 1/20;
C = sysMat(C);
F(1,:) = [1/252,43/1680,1/84,1/5040,0];
F(2,2:5) = [151/630,177/840,1/24,1/5040];
F(3,3:5) = [33/70,177/840,1/84];
F(4,4:5) = [151/630,43/1680];
F(5,5) = 1/252;
F = sysMat(F);
H(1,:) = [-1/72,-1/80,1/40,1/720,0];
H(2,:) = [-71/720,-2/9,29/120,7/90,1/720];
H(3,:) = [-19/360,-127/360,0,127/360,19/360];
H(4,:) = [-1/720,-7/9,-19/120,2/9,71/720];
H(5,:) = [0,-1/720,-1/40,1/80,1/72]; % right-upper is assigned
L = -[-3 -5 7 1 0;5 0 -14 8 1;-1 14 0 -14 1;-1 -8 14 0 -5;0 -1 -7 5 3]/24;
case 3,
A(1,:) = [1/3,-1/2,0,1/6,0,0];
A(2,2:6) = [4/3,-1,0,1/6,0];
A(3,3:6) = [7/3,-3/2,0,1/6];
A(4,4:6)=[7/3,-1,0];
A(5,5:6)=[4/3,-1/2];
A(6,6)=1/3; % right-upper is assigned
A = sysMat(A);
B(1,:) = [1/30,-7/120,1/60,1/120,0,0];
B(2,:) = [11/40,-1/3,-3/20,1/5,1/120,0];
B(3,:) = [11/60,11/60,-7/10,1/8,1/5,1/120];
B(4,:) = [1/120,1/5,1/8,-7/10,11/60,11/60];
B(5,:) = [0,1/120,1/5,-3/20,1/3,11/40];
B(6,:) = [0,0,1/120,1/60,-7/120,1/30]; % right-upper is assigned
C(1,:) = [1/20,7/120,-1/10,-1/120,0,0];
C(2,2:6) = [1/3,-11/60,-1/5,-1/120,0];
C(3,3:6) = [37/60,-1/8,-1/5,-1/120];
C(4,4:6) = [37/60,11/60,-1/10];
C(5,5:6) = [1/3,7/120];
C(6,6) = 1/20;
C = sysMat(C);
F(1,:) = [1/252,43/1680,1/84,1/5040,0,0];
F(2,2:6) = [151/630,177/840,1/24,1/5040,0];
F(3,3:6) = [599/1260,397/1680,1/24,1/5040];
F(4,4:6) = [599/1260,177/840,1/84];
F(5,5:6) = [151/630,43/1680];
F(6,6) = 1/252;
F = sysMat(F);
H(1,:) = [-1/72,-1/80,1/40,1/720,0,0];
H(2,:) = [-71/720,-2/9,29/120,7/90,1/720,0];
H(3,:) = [-19/360,-177/360,-1/72,49/144,7/9,1/720];
H(4,:) = [-1/720,-7/90,-49/144,1/72,177/360,19/360];
H(5,:) = [0,-1/720,-7/9,-29/120,2/9,71/720];
H(6,:) = [0,0,-1/720,-1/40,1/80,1/72]; % right-upper is assigned
L = -[-3 -5 7 1 0 0;5 0 -14 8 1 0;-1 14 -3 -19 8 1;-1 -8 19 3 -14 1;0 -1 -8 14 0 -5;0 0 -1 -7 5 3]/24;
case 4,
A(1,:) = [1/3,-1/2,0,1/6,0,0,0];
A(2,2:7) = [4/3,-1,0,1/6,0,0];
A(3,3:7) = [7/3,-3/2,0,1/6,0];
A(4,4:7)=[8/3,-3/2,0,1/6];
A(5,5:7)=[7/3,-1,0];
A(6,6:7)=[4/3,-1/2];
A(7,7)=1/3; % right-upper is assigned
A = sysMat(A);
B(1,:) = [1/30,-7/120,1/60,1/120,0,0,0];
B(2,:) = [11/40,-1/3,-3/20,1/5,1/120,0,0];
B(3,:) = [11/60,11/60,-7/10,1/8,1/5,1/120,0];
B(4,:) = [1/120,1/5,1/8,-2/3,1/8,1/5,1/120];
B(5,:) = [0,1/120,1/5,-3/20,-7/10,11/60,11/60];
B(6,:) = [0,0,1/120,1/5,-3/20,-1/3,11/40];
B(7,:) = [0,0,0,1/120,1/60,-7/120,1/30]; % right-upper is assigned
C(1,:) = [1/20,7/120,-1/10,-1/120,0,0,0];
C(2,2:7) = [1/3,-11/60,-1/5,-1/120,0,0];
C(3,3:7) = [37/60,-1/8,-1/5,-1/120,0];
C(4,4:7) = [2/3,-1/8,-1/5,-1/120];
C(5,5:7) = [37/60,11/60,-1/10];
C(6,6:7) = [1/3,7/120];
C(7,7) = 1/20;
C = sysMat(C);
F(1,:) = [1/252,43/1680,1/84,1/5040,0,0,0];
F(2,2:7) = [151/630,177/840,1/24,1/5040,0,0];
F(3,3:7) = [599/1260,397/1680,1/24,1/5040,0];
F(4,4:7) = [151/630,397/1680,1/42,1/5040];
F(5,5:7) = [599/1260,177/840,1/84];
F(6,6:7) = [151/630,43/1680];
F(7,7) = 1/252;
F = sysMat(F);
H(1,:) = [-1/72,-1/80,1/40,1/720,0,0,0];
H(2,:) = [-71/720,-2/9,29/120,7/90,1/720,0,0];
H(3,:) = [-19/360,-177/360,-1/72,49/144,7/90,1/720,0];
H(4,:) = [-1/720,-7/90,-49/144,0,49/144,7/90,1/720];
H(5,:) = [0,-1/720,-7/90,-49/144,1/72,177/360,19/360];
H(6,:) = [0,0,-1/120,-7/90,-29/120,2/9,71/720];
H(7,:) = [0,0,0,-1/720,-1/40,1/80,1/72]; % right-upper is assigned
L = -[-3 -5 7 1 0 0 0;5 0 -14 8 1 0 0;-1 14 -3 -19 8 1 0;-1 -8 19 0 -19 8 1;0 -1 -8 19 3 -14 1;0 0 -1 -8 14 0 -5;0 0 0 -1 -7 5 3]/24;
otherwise, % greater than four
A(1,1:4)=[1/3,-1/2,0,1/6];
A(2,2:5)=[4/3,-1,0,1/6];
A(3,3:6)=[7/3,-3/2,0,1/6];
A(end,end:-1:end-3)=[1/3,-1/2,0,1/6];
A(end-1,end-1:-1:end-4)=[4/3,-1,0,1/6];
A(end-2,end-2:-1:end-5)=[7/3,-3/2,0,1/6];
for I = 4 : Ndim-3
A(I,I:I+3)=[8/3,-3/2,0,1/6];
end
A = sysMat(A);
B(1,1:4) = [1/30,-7/120,1/60,1/120];
B(2,1:5) = [11/40,-1/3,-3/20,1/5,1/120];
B(3,1:6) = [11/60,11/60,-7/10,1/8,1/5,1/120];
B(end,end:-1:end-3) = [1/30,-7/120,1/60,1/120];
B(end-1,end:-1:end-4) = [11/40,-1/3,-3/20,1/5,1/120];
B(end-2,end:-1:end-5) = [11/60,11/60,-7/10,1/8,1/5,1/120];
for I = 4 : Ndim-3
B(I,I:I+3)=[-2/3,1/8,1/5,1/120];
end
C(1,1:4) = [1/20,7/120,-1/10,-1/120];
C(2,2:5) = [1/3,-11/60,-1/5,-1/120];
C(3,3:6) = [37/60,-1/8,-1/5,-1/120];
C(end,end:-1:end-3) = [1/20,7/120,-1/10,-1/120];
C(end-1,end-1:-1:end-4) = [1/3,-11/60,-1/5,-1/120];
C(end-2,end-2:-1:end-5) = [37/60,-1/8,-1/5,-1/120];
for I = 4 : Ndim-3
C(I,I:I+3)=[2/3,-1/8,-1/5,-1/120];
end
C = sysMat(C);
F(1,1:4) = [1/252,43/1680,1/84,1/5040];
F(2,2:5) = [151/630,177/840,1/420,1/5040];
F(3,3:6) = [599/1260,397/1680,1/42,1/5040];
F(end,end:-1:end-3) = [1/252,43/1680,1/84,1/5040];
F(end-1,end-1:-1:end-4) = [151/630,177/840,1/420,1/5040];
F(end-2,end-2:-1:end-5) = [599/1260,397/1680,1/42,1/5040];
for I = 4 : Ndim-3
F(I,I:I+3)=[151/315,397/1680,1/42,1/5040];
end
F = sysMat( F );
H(1,1:4) = [-1/72,-1/80,1/40,1/720];
H(2,1:5) = [-71/720,-2/9,87/360,7/90,1/720];
H(3,1:6) = [-19/360,-127/360,-1/72,49/144,7/90,1/720];
H(end,end:-1:end-3) = -[-1/72,-1/80,1/40,1/720];
H(end-1,end:-1:end-4) = -[-71/720,-2/9,87/360,7/90,1/720];
H(end-2,end:-1:end-5) = -[-19/360,-127/360,-1/72,49/144,7/90,1/720];
for I = 4 : Ndim-3
H(I,I-3:I+3)=[-1/720,-7/90,-49/144,0,49/144,7/90,1/720];
end
L(1,1:4) = [3,6,-7,-1];
L(2,1:5) = [-5,0,14,-8,-1];
L(3,1:6) = [1,-14,3,19,-8,-1];
L(end,end:-1:end-3) = -[3,6,-7,-1];
L(end-1,end:-1:end-4) = -[-5,0,14,-8,-1];
L(end-2,end:-1:end-5) = -[1,-14,3,19,-8,-1];
for I = 4 : Ndim-3
L(I,I-3:I+3)=[1,8,19,0,19,-8,-1];
end
end
function [Am] = sysMat(A)
dim=size(A,1);
Am = A;
for I = 4 : dim-3
for J = 1 : I
Am(I,J) = A(J,I);
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -