METİN İNCİ 18.11.2012
100751141
KİMYA MÜHENDİSLİĞİ
BİLGİSAYAR UYGULAMASI
ÖDEV 2
Karbondioksitin
300 K de paslanmaz çelik bir tankta depolanması önerilmektedir. Tank hacmi 2.5 m3 ve
dayanabileceği maksimum basınç 100 atm’ dir. Aşağıdaki hal denklemlerini
kullanarak tankta depolanabilecek maksimum CO2 mol sayısını bulunuz.
P=basınç,
atm
V=molar
hacim, L/g-mol
T=sıcaklık,
K
R=gaz
sabiti (R=0.08206 L.atm/g-mol.K)
Tc=kritik sıcaklık (CO2
için 304.2 K)
Pc=kritik basınç (CO2
için 72.9 atm)
Ideal gaz:
PV=RT
Van der Waals denklemi
Soave-Redlich-Kwong denklemi
ω=asentrik faktör (CO2
için 0.225)
Peng-Robinson
denklemi
Beattie-Bridgeman denklemi
A0, a, B0, b ve c sabitleri
farklı gazlara bağlıdır. CO2 için A0=5.0065; a=0.07132; B0=0.10476;
b=0.07235; ve c=66.0*104.
Çözümü
bir programlama dili (Matlab veya
QBasic) ve paket programı (Excel veya Polymath) kullanarak yapınız. Çözüm ekranlarını ödeve
ekleyiniz.
ÇÖZÜM:
WANDERWALLS DENKLEMİ
Oluşturulan denklemler ana denklemde yerine konulursa şu şekilde
denklem oluşur;
Denklemler oluşturulduktan sonra matlab
programında çözdürülür ve sonuçlar şu şekilde bulunur.
clc;
V0=input('Sayi
giriniz: ')
n=0;
while V0>0.01
f=100*V0^3-28.898*V0^2+3.6*V0-0.154;
f1=300*V0^2-57.796*V0+3.6;
fonksiyon=f;
turev=f1;
yeni=V0-(fonksiyon/turev)
eski=V0;
a=abs((yeni-eski)/yeni)*100;
if a>0.01;
V0=yeni;
else
yeni
break
end
n=(2500/yeni)
disp(['Maksimum Karbondioksit mol sayisi '
num2str(n)])
end
disp(['Maksimum
Karbondioksit hacmi ' num2str(yeni)])
Aynı problem excel programında çözülürse şu şekilde
yapılacaktır;
1- İlk
adımda excelde sütunlarda f(V) ve f’(V) denklemleri oluşturulur.
2- Daha
sonra bir başlangıç değerine ihtiyaç olduğundan dolayı bir VC değeri koymamız
gerekmektedir. VC değeri keyfi bir değerdir.
3- VC
formüllerden ad tanımla kısmından VC’nin yeri belirtilir ve adı
tanımlanmış olur. Bunu iterayonda ilk değer atayıp ve en son denklem
çözüldüğünde değeri buraya atamış olacaktır.
4- f(V)
değeri bir sütunda tanımlanır.
5- f’(V)değeride
bir sütunda tanımlanır.
6- Bunlar
yapıldıktan sonra V farkı tanımlanır yanı -f(V)/f’(V) yapılır.
7- Verilerden
çözücü kısmına girilir.
8- Çıkan
ekranda 1.kutucuğa seç kısmından Vfarkı seçilir.
9- Altında
bulunan 3 seçenekten biz değer yazarak 0.01 aldık.
10- Değişken
hücresine ise VC olarak tanımladığımız kısmı işaretleyip en son çöz tuşuna
basarak VC yazan yerde sonucumuz mevcut olur.
11- Daha
sonra mol cinsinden istediği için başka bir formül kurularak
n=2500/çıkan
değer diyip maksimum tank hacmindeki mol miktarını da bulmuş oluruz.
Bu
şekilde formülden çıkan sonuç bulunmuş olur. Matlab ile Excel arasında biraz
farklı sonuçlar çıktı bunun sebebi yuvarlatma veya programların çalışması ile
ilgili detaylar atlanmış olabilir.
SOAVE-REDLİCH-KWONG
DENKLEMİ
Denklemler
oluşturulduktan sonra matlab programında şu şekilde yazılmaktadır;
clc;
V0=input('Sayi
giriniz: ')
while V0>0.01
f=100*V0^3-24.618*V0^2+2.88*V0-0.11;
f1=300*V0^2-49.236*V0+2.88;
fonksiyon=f;
turev=f1;
yeni=V0-(fonksiyon/turev)
eski=V0;
a=abs((yeni-eski)/yeni)*100;
if a>0.01;
V0=yeni;
else
yeni
break
end
n=(2500/yeni)
disp(['Maksimum Karbondioksit mol sayisi '
num2str(n)])
end
disp(['Maksimum
Karbondioksit hacmi ' num2str(yeni)])
Aynı problem excel programında çözülürse şu şekilde
yapılacaktır;
1- İlk
adımda excelde sütunlarda f(V) ve f’(V) denklemleri oluşturulur.
2- Daha
sonra bir başlangıç değerine ihtiyaç olduğundan dolayı bir AC değeri koymamız
gerekmektedir. AC değeri keyfi bir değerdir.
3- VC
formüllerden ad tanımla kısmından AC’nin yeri belirtilir ve adı tanımlanmış
olur. Bunu iterayonda ilk değer atayıp ve en son denklem çözüldüğünde değeri
buraya atamış olacaktır.
4- f(V)
değeri bir sütunda tanımlanır.
5- f’(V)değeride
bir sütunda tanımlanır.
6- Bunlar
yapıldıktan sonra V farkı tanımlanır yanı -f(V)/f’(V) yapılır.
7- Verilerden
çözücü kısmına girilir.
8- Çıkan
ekranda 1.kutucuğa seç kısmından Vfarkı seçilir.
9- Altında
bulunan 3 seçenekten biz değer yazarak 0.01 aldık.
10- Değişken
hücresine ise AC olarak tanımladığımız kısmı işaretleyip en son çöz tuşuna
basarak AC yazan yerde sonucumuz mevcut olur.
11- Daha
sonra mol cinsinden istediği için başka bir formül kurularak
n=2500/çıkan
değer diyip maksimum tank hacmindeki mol miktarını da bulmuş oluruz.
Bu
şekilde formülden çıkan sonuç bulunmuş olur. Matlab ile Excel arasında biraz
farklı sonuçlar çıktı bunun sebebi yuvarlatma veya programların çalışması ile
ilgili detaylar atlanmış olabilir.
PENG-ROBİNSON DENKLEMİ
Denklemleri
oluşturulur ve matlabda aşağıdaki gibi yazılır.
clc;
V0=input('Sayi
giriniz: ')
while V0>0.01;
f=100*V0^3-21.92*V0^2+1.49*V0-0.0357;
f1=300*V0^2-43.84*V0+1.49;
fonksiyon=f;
turev=f1;
yeni=V0-(fonksiyon/turev)
eski=V0;
a=abs((yeni-eski)/yeni)*100;
if a>0.1
V0=yeni;
else
yeni
break
end
n=(2500/yeni)
disp(['Maksimum Karbondioksit mol sayisi '
num2str(n)])
end
disp(['Maksimum
Karbondioksit hacmi ' num2str(yeni)])
Aynı problem excel programında çözülürse şu şekilde
yapılacaktır;
1- İlk
adımda excelde sütunlarda f(V) ve f’(V) denklemleri oluşturulur.
2- Daha
sonra bir başlangıç değerine ihtiyaç olduğundan dolayı bir PC değeri koymamız
gerekmektedir. PC değeri keyfi bir değerdir.
3- VC
formüllerden ad tanımla kısmından PC’nin yeri belirtilir ve adı
tanımlanmış olur. Bunu iterayonda ilk değer atayıp ve en son denklem
çözüldüğünde değeri buraya atamış olacaktır.
4- f(V)
değeri bir sütunda tanımlanır.
5- f’(V)değeride
bir sütunda tanımlanır.
6- Bunlar
yapıldıktan sonra V farkı tanımlanır yanı -f(V)/f’(V) yapılır.
7- Verilerden
çözücü kısmına girilir.
8- Çıkan
ekranda 1.kutucuğa seç kısmından Vfarkı seçilir.
9- Altında
bulunan 3 seçenekten biz değer yazarak 0.01 aldık.
10- Değişken
hücresine ise PC olarak tanımladığımız kısmı işaretleyip en son çöz tuşuna
basarak PC yazan yerde sonucumuz mevcut olur.
11- Daha
sonra mol cinsinden istediği için başka bir formül kurularak
n=2500/çıkan
değer diyip maksimum tank hacmindeki mol miktarını da bulmuş oluruz.
Bu
şekilde formülden çıkan sonuç bulunmuş olur. Matlab ile Excel arasında biraz
farklı sonuçlar çıktı bunun sebebi yuvarlatma veya programların çalışması ile
ilgili detaylar atlanmış olabilir.
BEATTİE-BRİDGEMAN
DENKLEMİ
Denklemler şu şekildedir;
clc;
V0=input('Sayi
giriniz: ')
while V0>0.1
f=100*V0^4-24.618*V0^3+3.029*V0^2-0.48*V0-0.00456;
f1=400*V0^3-73.9*V0^2+6.058*V0-0.48;
fonksiyon=f;
turev=f1;
yeni=V0-(fonksiyon/turev)
eski=V0;
a=abs((yeni-eski)/yeni)*100;
if a>0.01;
V0=yeni;
else
yeni
break
end
n=2500/yeni
disp(['Maksimum Karbondioksit mol sayisi '
num2str(n)])
end
disp(['Maksimum
Karbondioksit hacmi ' num2str(yeni)])
Aynı problem excel programında çözülürse şu şekilde
yapılacaktır;
1- İlk
adımda excelde sütunlarda f(V) ve f’(V) denklemleri oluşturulur.
2- Daha
sonra bir başlangıç değerine ihtiyaç olduğundan dolayı bir DC değeri koymamız
gerekmektedir. DC değeri keyfi bir değerdir.
3- VC
formüllerden ad tanımla kısmından DC’nin yeri belirtilir ve adı
tanımlanmış olur. Bunu iterayonda ilk değer atayıp ve en son denklem çözüldüğünde
değeri buraya atamış olacaktır.
4- f(V)
değeri bir sütunda tanımlanır.
5- f’(V)değeride
bir sütunda tanımlanır.
6- Bunlar
yapıldıktan sonra V farkı tanımlanır yanı -f(V)/f’(V) yapılır.
7- Verilerden
çözücü kısmına girilir.
8- Çıkan
ekranda 1.kutucuğa seç kısmından Vfarkı seçilir.
9- Altında
bulunan 3 seçenekten biz değer yazarak 0.01 aldık.
10- Değişken
hücresine ise DC olarak tanımladığımız kısmı işaretleyip en son çöz tuşuna
basarak DC yazan yerde sonucumuz mevcut olur.
11- Daha
sonra mol cinsinden istediği için başka bir formül kurularak
n=2500/çıkan
değer diyip maksimum tank hacmindeki mol miktarını da bulmuş oluruz.
Bu
şekilde formülden çıkan sonuç bulunmuş olur. Matlab ile Excel arasında biraz
farklı sonuçlar çıktı bunun sebebi yuvarlatma veya programların çalışması ile
ilgili detaylar atlanmış olabilir.
İDEAL GAZ DENKLEMİ
PV=RT àDenklemde
eşitlik sıfıra eşitlenirse şu şekilde bir denklem oluşur;
clc;
V0=input('Sayi
giriniz. ')
n=0;
while V0>0.01
f=0.08206*300-100*V0;
f1=-100;
fonksiyon=f;
turev=f1;
yeni=V0-(fonksiyon/turev)
eski=V0;
a=abs((yeni-eski)/yeni)*100;
if a>0.01;
V0=yeni;
else
yeni
break
end
n=(2500/yeni)
disp(['Maksimum Karbondioksit mol sayisi '
num2str(n)])
end
disp(['Maksimum Karbondioksit
hacmi ' num2str(yeni)])
Aynı problem excel programında çözülürse şu şekilde
yapılacaktır;
1- İlk
adımda excelde sütunlarda f(V) ve f’(V) denklemleri oluşturulur.
2- Daha
sonra bir başlangıç değerine ihtiyaç olduğundan dolayı bir IC değeri koymamız
gerekmektedir. IC değeri keyfi bir değerdir.
3- VC
formüllerden ad tanımla kısmından IC’nin yeri belirtilir ve adı
tanımlanmış olur. Bunu iterayonda ilk değer atayıp ve en son denklem
çözüldüğünde değeri buraya atamış olacaktır.
4- f(V)
değeri bir sütunda tanımlanır.
5- f’(V)değeride
bir sütunda tanımlanır.
6- Bunlar
yapıldıktan sonra V farkı tanımlanır yanı -f(V)/f’(V) yapılır.
7- Verilerden
çözücü kısmına girilir.
8- Çıkan
ekranda 1.kutucuğa seç kısmından Vfarkı seçilir.
9- Altında
bulunan 3 seçenekten biz değer yazarak 0.01 aldık.
10- Değişken
hücresine ise IC olarak tanımladığımız kısmı işaretleyip en son çöz tuşuna
basarak IC yazan yerde sonucumuz mevcut olur.
11- Daha
sonra mol cinsinden istediği için başka bir formül kurularak
n=2500/çıkan
değer diyip maksimum tank hacmindeki mol miktarını da bulmuş oluruz.
Bu
şekilde formülden çıkan sonuç bulunmuş olur. Matlab ile Excel arasında biraz
farklı sonuçlar çıktı bunun sebebi yuvarlatma veya programların çalışması ile
ilgili detaylar atlanmış olabilir.