31 lines
644 B
Matlab
31 lines
644 B
Matlab
function [P, Sw, Cs, Cb] = intADI(p, sw, cs, cb)
|
|
n = length(p);
|
|
Jp = cell(1,4);
|
|
Jsw = cell(1,4);
|
|
Jcs = cell(1,4);
|
|
Jcb = cell(1,4);
|
|
|
|
Jp{1} = sparse(1:n, 1:n, ones(n,1), n, n);
|
|
Jp{2} = sparse(n,n);
|
|
Jp{3} = sparse(n,n);
|
|
Jp{4} = sparse(n,n);
|
|
|
|
Jsw{1} = sparse(n,n);
|
|
Jsw{2} = sparse(1:n, 1:n, ones(n,1), n, n);
|
|
Jsw{3} = sparse(n,n);
|
|
Jsw{4} = sparse(n,n);
|
|
|
|
Jcs{1} = sparse(n,n);
|
|
Jcs{2} = sparse(n,n);
|
|
Jcs{3} = sparse(1:n, 1:n, ones(n,1), n, n);
|
|
Jcs{4} = sparse(n,n);
|
|
|
|
Jcb{1} = sparse(n,n);
|
|
Jcb{2} = sparse(n,n);
|
|
Jcb{3} = sparse(n,n);
|
|
Jcb{4} = sparse(1:n, 1:n, ones(n,1), n, n);
|
|
|
|
P = ADI(p, Jp);
|
|
Sw = ADI(sw, Jsw);
|
|
Cs = ADI(cs, Jcs);
|
|
Cb = ADI(cb, Jcb); |