Narzędzia użytkownika

Narzędzia witryny


studia:magisterskie:1sem:modelowanie_procesow_fizycznych

To jest stara wersja strony!


Spis treści

Lab 5-9

Zajęcia 2

y=[0.67 0.67 0.67 0.67 0.67 0.02 0.02 0.02 0.02];
 
temp = 727;
R = 8.3144;
Q = 140000;
temp_k = temp + 273;
d0= 0.000041;
D = d0 * exp( -Q /( R * temp_k)) * 1 * 10^10;
 
dt = 1;
dx = 1;
 
tmp = (D*dt)/dx^2;
 
n = 100;
[s_h s_w] = size(y);
 
y2 = zeros(1, s_w);
 
for j = 1:n
    for i = 1:s_w
 
        im = i-1;
        ip = i+1;
        if im < 1
            im = 1;
        end
        if ip > s_w
            ip = s_w;
        end
        y2(i) = (1 - 2*tmp)*y(i) + tmp*(y(im) + y(ip));
 
    end
 
    y = y2;
end
 
plot(y2, 'DisplayName', 'y2', 'yDataSource', 'y2');

Zajęcia 3

temp = 727;
R = 8.3144;
Q = 140000;
temp_k = temp + 273;
d0= 0.000041;
D = d0 * exp( -Q /( R * temp_k)) * 1 * 10^10;
 
dt = 0.01;
dx = 0.1;
pN = 0.1;
 
if (D*dt)/dx^2 <= 0.5
 
    % Obszar rozwiązania: 100 um    
    %y=[0.67 0.67 0.67 0.67 0.67 0.02 0.02 0.02 0.02];
    y(1:5) = 0.67;
    y(6:100) = 0.02;
 
    ksi = 6;
    for k = 0:dt:10
 
        y = [y(1), y, y(length(y))];
        y1 = y;
 
        for i = 2:1:ksi+1
           y1(i) = D *( dt / dx^2 ) * ( y(i+1) + y(i-1)) + y(i) * (1 - 2*D*(dt/dx^2));
        end
 
        y = y1;
        y = y(2:1:length(y)-1);
 
        plot(y)
        hold on
 
        % rownanie prostej przechodzacej przez dwa punkty
        % (x2 - x1)(y - y1) = (y2 - y1)(x - x1)
        yLine = -0.00407 * temp_k + 3.715;
 
        % zwiekszenie ksi 
        if y(ksi) >= yLine && ksi < length(y)-1
            ksi = ksi + 1;
        end
 
        % zwiekszenie temperatury o zadany prog i kolejna iteracja
        temp_k = temp_k + pN * dt;
        D = d0 * exp( -Q /( R * temp_k)) * 1 * 10^10;
 
    end
   % disp(y);
 
end
studia/magisterskie/1sem/modelowanie_procesow_fizycznych.1461136840.txt.gz · ostatnio zmienione: 2016/04/20 09:20 przez 149.156.112.6