X-Git-Url: http://git.smho.de/gw/?p=owSlave2.git;a=blobdiff_plain;f=stest%2Ffdiff.py;h=e4c205647e79d8ad7fc0c76101b11f15c471b7e3;hp=ea227d021a4f128b0f650557938196f7f59d905c;hb=a6a04f58e4afd20f206fdf4a8a7b3ce4062f1b67;hpb=cd92472e6fd63693741f8e168123a4182802651b diff --git a/stest/fdiff.py b/stest/fdiff.py index ea227d0..e4c2056 100644 --- a/stest/fdiff.py +++ b/stest/fdiff.py @@ -1,74 +1,74 @@ -import math -#Bezeichnungen: -#r = relative Luftfeuchte -#T = Temperatur in C -#TK = Temperatur in Kelvin (TK = T + 273.15) -#TD = Taupunkttemperatur in C -#DD = Dampfdruck in hPa -#SDD = Saettigungsdampfdruck in hPa - -#Parameter: -#a = 7.5, b = 237.3 fuer T >= 0 -#a = 7.6, b = 240.7 fuer T < 0 ueber Wasser (Taupunkt) -#a = 9.5, b = 265.5 fuer T < 0 ueber Eis (Frostpunkt) - -Rs = 8314.3 #J/(kmol*K) (universelle Gaskonstante) -mw = 18.016 #kg/kmol (Molekulargewicht des Wasserdampfes) -#AF = absolute Feuchte in g Wasserdampf pro m3 Luft - -#Formeln: - -# SDD(T) = 6.1078 * 10^((a*T)/(b+T)) -# DD(r,T) = r/100 * SDD(T) -# r(T,TD) = 100 * SDD(TD) / SDD(T) -# TD(r,T) = b*v/(a-v) mit v(r,T) = log10(DD(r,T)/6.1078) -# AF(r,TK) = 10^5 * mw/R* * DD(r,T)/TK; AF(TD,TK) = 10^5 * mw/R* * SDD(TD)/TK - - -a=7.5 -b=237.3 - -#a=r/100.0*SDD(T)/(T+273.15)*mw/Rs*10000 -#r=a*100/(SDD(T)/(T+273.15)*mw/Rs*10000) - -def SDD(T): - return 6.1078 * 10**((a*T)/(b+T)) - -#def DD(r,T): -# return r/100 * SDD(T) - -#def _r(T,TD): -# return 100 * SDD(TD) / SDD(T) - -#def _v(r,T): -# return math.log10(DD(r,T)/6.1078) - -#def TD(r,T): -# return b*v/(a-_v(r,T)) - - -#def AF(r,T): -# return 10000 * mw/Rs * DD(r,T)/(T+273.15) #; AF(TD,TK) = 10^5 * mw/R* * SDD(TD)/TK - -def AF1(r,T): - return r/100.0*SDD(T)/(T+273.15)*mw/Rs*10000 - -def RF1(a,T): - return a*100/(SDD(T)/(T+273.15)*mw/Rs*10000) -#print(0.5*SDD(20)/(20+273.15)*mw/Rs*10000) -d=[] -for i in range(11): - s="" - r=[] - for j in range(6): - r.append((i*10)-RF1(AF1(i*10,j*10),j*10+0.5)) - s=s+"%0.2f\t" % (r[len(r)-1]) - print(s) - d.append(r) - -for i in range(11): - s="" - for j in range(5): - s=s+"%0.4f\t" % (d[i][j]-d[i][j+1]) - print(s) - +import math +#Bezeichnungen: +#r = relative Luftfeuchte +#T = Temperatur in C +#TK = Temperatur in Kelvin (TK = T + 273.15) +#TD = Taupunkttemperatur in C +#DD = Dampfdruck in hPa +#SDD = Saettigungsdampfdruck in hPa + +#Parameter: +#a = 7.5, b = 237.3 fuer T >= 0 +#a = 7.6, b = 240.7 fuer T < 0 ueber Wasser (Taupunkt) +#a = 9.5, b = 265.5 fuer T < 0 ueber Eis (Frostpunkt) + +Rs = 8314.3 #J/(kmol*K) (universelle Gaskonstante) +mw = 18.016 #kg/kmol (Molekulargewicht des Wasserdampfes) +#AF = absolute Feuchte in g Wasserdampf pro m3 Luft + +#Formeln: + +# SDD(T) = 6.1078 * 10^((a*T)/(b+T)) +# DD(r,T) = r/100 * SDD(T) +# r(T,TD) = 100 * SDD(TD) / SDD(T) +# TD(r,T) = b*v/(a-v) mit v(r,T) = log10(DD(r,T)/6.1078) +# AF(r,TK) = 10^5 * mw/R* * DD(r,T)/TK; AF(TD,TK) = 10^5 * mw/R* * SDD(TD)/TK + + +a=7.5 +b=237.3 + +#a=r/100.0*SDD(T)/(T+273.15)*mw/Rs*10000 +#r=a*100/(SDD(T)/(T+273.15)*mw/Rs*10000) + +def SDD(T): + return 6.1078 * 10**((a*T)/(b+T)) + +#def DD(r,T): +# return r/100 * SDD(T) + +#def _r(T,TD): +# return 100 * SDD(TD) / SDD(T) + +#def _v(r,T): +# return math.log10(DD(r,T)/6.1078) + +#def TD(r,T): +# return b*v/(a-_v(r,T)) + + +#def AF(r,T): +# return 10000 * mw/Rs * DD(r,T)/(T+273.15) #; AF(TD,TK) = 10^5 * mw/R* * SDD(TD)/TK + +def AF1(r,T): + return r/100.0*SDD(T)/(T+273.15)*mw/Rs*10000 + +def RF1(a,T): + return a*100/(SDD(T)/(T+273.15)*mw/Rs*10000) +#print(0.5*SDD(20)/(20+273.15)*mw/Rs*10000) +d=[] +for i in range(11): + s="" + r=[] + for j in range(6): + r.append((i*10)-RF1(AF1(i*10,j*10),j*10+0.5)) + s=s+"%0.2f\t" % (r[len(r)-1]) + print(s) + d.append(r) + +for i in range(11): + s="" + for j in range(5): + s=s+"%0.4f\t" % (d[i][j]-d[i][j+1]) + print(s) +