l = 0.1;
m = 10;
a = 1.39e-5;
dat = [0.18,18];
p = 100;
alf = 1163;
tf = 300;
lam = 50;
tma = 1800;
dx = l/m;
m1 = m+1;
fo = a+dat(1)/dx*dx;
if fo > 0.5
    disp(['fo : ', num2str(fo)]);
else
    tim = 0;
    tn = zeros(1,m+2);
    disp(['tim : ', num2str(0)]);
    for i = 1:m+1
        disp(['T', num2str(i-1), ' : ', num2str(tn(i))]);
    end
    cn = 0;
    while tim <= tma
        cn = cn + 1;
        tim = tim + dat(1);
        tn(m+2) = tn(m);
        for i = 1:m+1
            tn(i) = (1-2*fo)*tn(i) + fo*(tn(i+1) + tn(i-1));
        end
        tn(1) = (tn(2) + alf*dx*tf/lam)/(1+alf*dx/lam);
        if cn > p
            disp(['tim : ', num2str(0)]);
            for i = 1:m+1
                disp(['T', num2str(i-1), ' : ', num2str(tn(i))]);
            end
            cn = 0;
        end
    end
end

Note: In MATLAB, indexing starts from 1, so I added 1 to the indices in the print statements

将下面的代码转换成MATLAB代码#!usr2022220487python3 import time if __name__ == __main__ l = 01 m = 10 a = 139e-5 dat = 01818 p = 100 alf = 1163 tf = 300 lam = 50 tma = 1800 dx = lm m1 = m+1 fo = a+dat0dxdx if fo

原文地址: http://www.cveoy.top/t/topic/hWFU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录