Autor |
Nachricht |
fragenthermodynamik
Anmeldungsdatum: 11.02.2017 Beiträge: 11
|
fragenthermodynamik Verfasst am: 28. Feb 2017 01:56 Titel: Wagner-Gleichung |
|
|
Wenn ich dieWagnergleichung
ln Pr = A ( 1 - Tr )/Tr + B ( 1 - Tr )1.5/Tr + C ( 1 - Tr )3/Tr + D ( 1 - Tr )6/Tr
And Tr = T/Tc A, B, C, D are Wagner Constants
nach Tr bzw nach T umforme bekomme ich den wert für die siedetemperatur bei einem bestimmten punkt oder?
Versuche dies jetztschonseit einiger zeit komme aber auf keine lösung (mit solver von mathlab bzw voyage 200 taschenrechner). Gibt es einen einfacheren weg dieses problem zu lösen?
|
|
|
Duke711
Anmeldungsdatum: 26.01.2017 Beiträge: 434
|
Duke711 Verfasst am: 28. Feb 2017 17:50 Titel: |
|
|
Diese empirische Gl. kann man nicht so einfach nach T auflösen.
So könnte man es z.B. mit Peng Robinson in Matlab machen:
Code
----------------------------------
% function result = PengRobinson(T,P,Tc,Pc,w,MW,Liquido)
% Parameters: T,P,w,Tc,Pc,w,MW,Liquido
% T: Temperature [=] K
% P: Presure [=] Pa
% Tc: critical temperature [=] K
% Pc: critical presure [=] Pa
% w: accentic factor
% MW: molar weigth [=] kg/mol
% Liquido: if Liquido == 1, then calculates liquid fugacity;
% if Liquido == 0 then calculates vapor fugacity
% Example:
% [Z fhi density] = PengRobinson(273,2*1.013*1e5,304.21,7.382*1e6,0.225,0.044,1)
function [Z,fhi,density] = PengRobinson(T,P,Tc,Pc,w,MW,Liquido)
R = 8.314; % gas constant [=] J/(mol K)
% Reduced variables
Tr = T/Tc ;
Pr = P/Pc ;
% Parameters of the EOS for a pure component
m = 0.37464 + 1.54226*w - 0.26992*w^2;
alfa = (1 + m*(1 - sqrt(Tr)))^2;
a = 0.45724*(R*Tc)^2/Pc*alfa;
b = 0.0778*R*Tc/Pc;
A = a*P/(R*T)^2;
B = b*P/(R*T);
% Compressibility factor
Z = roots([1 -(1-B) (A-3*B^2-2*B) -(A*B-B^2-B^3)]);
ZR = [];
for i = 1:3
if isreal(Z(i))
ZR = [ZR Z(i)];
end
end
if Liquido == 1
Z = min(ZR);
else
Z = max(ZR);
end
% Fugacity coefficient
fhi = exp(Z - 1 - log(Z-B) - A/(2*B*sqrt(2))*log((Z+(1+sqrt(2))*B)/(Z+(1-sqrt(2))*B)));
if isreal(fhi)
density=P*MW/(Z*R*T);
result = [Z fhi density];
else
'No real solution for "fhi" is available in this phase'
result=['N/A' 'N/A' 'N/A'];
end
--------------
Wenn man es über die Wagner-Gleichung machen möchte dann ganz einfach über die Temperatur als zu definierende Variable bzw. als Tabellenwerk.
code
-----------------
function SVP = svp(T)
% T = temperature on Kelvin scale
% SVP = saturation vapor pressure according to Goff & Gratch Equation (1946)
% SVP in Pascal
Ts = 373.15; % standard temperature at steam point on Kelvin scale (Goff, 1965)
Ps = 101324.6; % standard atmospheric pressure at steam point (Pascal)
log10SVP = -7.90298*(Ts./T - 1) + 5.02808*log10(Ts./T) -1.3816e-7*(10.^(11.344*(1 - T./Ts)) - 1) + 8.1328e-3*(10.^(3.49149*(1 - Ts./T)) - 1) + log10(Ps);
SVP = 10.^(log10SVP);
------------------------------------
Einen einfachen Weg gibt es:
Coolpack oder Refprop
Beschreibung: |
|
Download |
Dateiname: |
svp.rar |
Dateigröße: |
373 Bytes |
Heruntergeladen: |
197 mal |
|
|
|
|
|