Tuesday, November 26, 2019

Lift for a balloon by adding water vapour

Example: Surrounding air is at 25 deg C and RH=60% and P=100 kPa.
A cubic metre of the surrounding air has 1.6 kg of water evaporated into it and ends up at 95 deg C (so the system is a cubic metre of air at 25 deg C and 1.6 kg of water both heated to 95 deg C). The buoyancy of 1 cubic metre of this hot expanded air is now 0.462 kg. The RH is now 82.03% (after water added and heated). With no water added but surrounding air heated to 95 deg C the RH would be 2.25% and the buoyancy would be 0.221 kg.

Here is some computer code that will work out the details for you - I wrote it is Delphi. 
Inputs are Tair1 (temperature of surrounding air in deg C), 
RH1 (relative humidity of surrounding air (percent), 
P (atmospheric pressure in kPa, 
Tair2 (temperature to which air and water will be heated to become moist air), 
ng (number of grams of water that will be heated with 1 cubic metre of surrounding air to Tair2).
Delphi code is below:
label 1;
var
HR1,HR2,Tk1,Tk2,Tair1,RH1,RH2,P,Tair2,ng,Psatv1,Psatv2,Pv1,Pv2,Mv1,Ma1,Mv2,Ma2,
denss,densp,F,a,Dair1,Dair2,Psati,Enth1,Enth2,Enth2m1,Tav,Enthv,Enthvkg,mf1,mf2:extended;
errors1:boolean;
calcstr1,calcstr2,calcstr3,calcstr4,calcstr5,calcstr6,calcstr7,calcstr8,
calcstr9,calcstr10,calcstr11,calcstr12,calcstr13,calcstr14,calcstr15,calcstr16,
calcstr17,calcstr18,calcstr19,calcstr20:string[30];
begin
errors1:=false;
form20.hide;
form20.show;
try
Tair1:=strtofloat(form20.edit1.Text);
RH1:=strtofloat(form20.edit2.Text);
P:=strtofloat(form20.edit3.Text);
Tair2:=strtofloat(form20.edit4.Text);
ng:=strtofloat(form20.edit5.Text);
except
errors1:=true;
end;
if (errors1=true) or
(Tair1<0.1) or (Tair1>80) or (Rh1<1) or (RH1>100) or (P<50) or (P>150) or (Tair2<0.1) or (Tair2>98)
or (ng<0) or (ng>10000)
then begin
form20.canvas.textout(0,100,'CHECK ENTRIES.');
goto 1
end;
Tk1:=Tair1+273.15;
Tk2:=Tair2+273.15;
Psatv1:=0.61121*exp((18.678-Tair1/234.5)*Tair1/(257.14+Tair1));
Pv1:=Psatv1*RH1/100;
Mv1:=Pv1/(0.4615*Tk1);
Ma1:=(P-Pv1)/(0.287*Tk1);
HR1:=Mv1/Ma1;
HR2:=(Mv1+(ng/1000))/Ma1;
Psatv2:=0.61121*exp((18.678-Tair2/234.5)*Tair2/(257.14+Tair2));
RH2:=(HR2*P)/((0.622+HR2)*Psatv2);
Pv2:=Psatv2*RH2;
Mv2:=Pv2/(0.4615*Tk2);
Ma2:=(P-Pv2)/(0.287*Tk2);
Enth1:=ma1*1.005*Tair1+(ma1)*HR1*(2501.3+1.88*Tair1)+(ng/1000)*4.18*Tair1;
Enth2:=ma1*1.005*Tair2+(ma1)*HR2*(2501.3+1.88*Tair2);
Enth2m1:=Enth2-Enth1;
Dair1:=(Mv1+Ma1);
Dair2:=(Mv2+Ma2);
denss:=Dair1;
Densp:=Dair2;
F:=9.80665*(Denss-densp);
a:=9.80665*((denss/densp)-1);
Tav:=(Tair1+Tair2)/2;
mf1:=Pv1/P;
mf2:=Pv2/P;
Enthv:=2501.3-2.4432443*(Tav-0.01);
Enthvkg:=ng*Enthv/3600;
str(Mv1:12:6,calcstr1);
str(Ma1:12:6,calcstr2);
str(Dair1:12:6,calcstr3);
str(HR1:12:6,calcstr4);
str(Mv2:12:6,calcstr5);
str(Ma2:12:6,calcstr6);
str(Dair2:12:6,calcstr7);
str(HR2:12:6,calcstr8);
str(RH2*100:12:2,calcstr9);
str(F:12:3,calcstr10);
str((F/9.80665):12:3,calcstr11);
str(a:12:3,calcstr12);
str(Enth1:12:3,calcstr13);
str(Enth2:12:3,calcstr14);
str(Enth2m1:12:3,calcstr15);
str(Enth2m1*(1000/3600):12:3,calcstr16);
str(Enthv:12:3,calcstr17);
str(Enthvkg:12:3,calcstr18);

str(mf1:12:3,calcstr19);
str(mf2:12:3,calcstr20);

form20.canvas.textout(0,100,'For surrounding air, mass of vapour Mv1 is: '+calcstr1+' kg/m^3.');
form20.canvas.textout(0,130,'For surrounding air, mass of air Ma1 is: '+calcstr2+' kg/m^3.');
form20.canvas.textout(0,160,'For surrounding air, density of air Dair1 is: '+calcstr3+' kg/m^3.');
form20.canvas.textout(0,190,'For surrounding air, humidity ratio HR1 is: '+calcstr4+' kg/kg.');
form20.canvas.textout(0,230,'For parcel, Mv2 is: '+calcstr5+' kg/m^3.');
form20.canvas.textout(0,260,'For parcel, Ma2 is: '+calcstr6+' kg/m^3.');
form20.canvas.textout(0,290,'For parcel, Dair2 is: '+calcstr7+' kg/m^3.');
form20.canvas.textout(0,320,'For parcel, HR2 is: '+calcstr8+' kg/kg.');
form20.canvas.textout(0,350,'For parcel at Tair2 deg C, relative humidity RH2 after adding water is: '+calcstr9+'%.');
form20.canvas.textout(0,390,'Buoyancy force on a 1 cubic metre parcel of air is: '+calcstr10+' N ('+calcstr11+' kg force).');
form20.canvas.textout(0,420,'Initial acceleration of the parcel of air is: '+calcstr12+' m/(s.s).');
form20.canvas.textout(0,460,'For 1 m^3 Enth1 is: '+calcstr13+' kJ.      Enth2 is: '+calcstr14+' kJ.');
form20.canvas.textout(0,490,'Enthalpy difference for the two situations is Enth2 - Enth1, which is: '+calcstr15+' kJ.');
form20.canvas.textout(0,520,'Enthalpy difference starting with 1000 m^3 is 1000(Enth2 - Enth1) is: '+calcstr16+' kWh.');
form20.canvas.textout(0,550,'Enthalpy of vaporisation at Tav=(Tair1+Tair2)/2 is: '+calcstr17+' kJ/kg.');
form20.canvas.textout(0,580,'Enthalpy of vaporisation at Tav=(Tair1+Tair2)/2 for ng kg is: '+calcstr18+' kWh.');
form20.canvas.textout(0,610,'For surrounding air, mole fraction of water vapour mf1 is: '+calcstr19+' For parcel, mf2 is: '+calcstr20+'.');

1: end;

No comments:

Post a Comment