%%FY1005/TFY4165, Oving 1, Oppgave 4, del 2
%%
%%R = gasskonstanten = 8.314 J/mol*K
R=8.314;
%%T = absolutt temperatur (K)
Tmin=113;
Tmax=158;
DeltaT=5;
%%T = vektor med verdier mellom Tmin og Tmax, intervall DeltaT
T=Tmin:DeltaT:Tmax;
%%V = molart volum (L/mol)
Vmin=0.05;
Vmax=0.5;
NV=500;
%%V = vektor med verdier mellom Vmin og Vmax, i alt NV verdier
V=linspace(Vmin,Vmax,NV);
%%Verdier for a og b for luft: 1.368  0.0367
%%Enheter: [a] = bar*(L/mol)^2 og [b] = L/mol
a=1.368;
b=0.0367;
%%length(T) = antall elementer i vektoren T
%%Bruker for-loekke fra i=1 til i=length(T) til aa regne ut van der Waals
%%isotermer p(V) for temperaturer T(1), T(2), ... , T(length(T))
figure;
for i = 1:length(T);
    %%p = trykket. Faktoren 1/100 skyldes at V og b har enhet L og at
    %%p oenskes i enheten bar (1 bar = 10^5 Pa)
    p = (R*T(i)./(V-b))/100 - a./(V.*V);
    fig = plot(V,p);
    %%p(V) for laveste valgte temperatur T(1): blaa kurve
    %%p(V) for hoeyeste valgte temperatur T(length(T)): roed kurve
    %%Mellomliggende kurver: gradvis mellom blaa og roed
    %%Tynne kurver, LineWidth = 1.0, for van der Waals tilstandsligning
    red=(i-1)/(length(T)-1);
    blue=1-red;
    green = 0.0;
    set(fig,'Color',[red green blue],'LineWidth',1.0);
    title('Isotermer: van der Waals og ideell gass tilstandsligning','fontsize',18);
    xlabel('Molart volum (L/mol)','fontsize',18);
    ylabel('Trykk (bar)','fontsize',18);
    axis([0 Vmax 0 70]);
    if i == 1;
        %%"hold on" soerger for at paafoelgende kurver tegnes i samme figur
        hold on;
        %%Vi plotter p(V) for ideell gass for laveste
        %%verdi av temperaturen, dvs for T(1)
        pideell = R*T(i)./(100*V);
        fig = plot(V,pideell);
        %%Tykk blaa kurve for p(V) ved T(1), ideell gass
        set(fig,'LineWidth',1.5,'Color',[0 0 1]);
    end;
    if i == length(T);
        %%Vi plotter p(V) for ideell gass for hoeyeste
        %%verdi av temperaturen, dvs for T(length(T))
        pideell = R*T(i)./(100*V);
        fig = plot(V,pideell);
        %%Tykk roed kurve for p(V) ved T(length(T)), ideell gass
        set(fig,'LineWidth',1.5,'Color',[1 0 0]);
    end;    
end;
hold off;
