Home > Archive > Alternative Architecture > June 2005 > Re: thermal performance model









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Re: thermal performance model
nicksanspam@ece.villanova.edu

2005-06-16, 2:35 pm

<lelson@bigfoot.com> wrote:
quote:

>I'm building a house and am looking for a computer model (Linux or
>Windows, free or inexpensive) that can *accurately* predict my HVAC
>heating loads given my exact residential floor plan, building envelope
>construction, glazing, occupancy and location (near Reno).


You might write your own. Third-graders can learn BASIC :-)
Here's a start, which reads the Reno Typical Meterological
Year (TMY2) hourly weather data file (available from NREL's
web site) and makes another simplified file called "winter."

10 PI=4*ATN(1):SCREEN 9:KEY OFF:CLS
20 LINE (0,0)-(639,349),,B:DF=.434
30 FOR TR= 60 TO 80 STEP 10'temp ref lines
40 LINE (0,349-5*(TR-10))-(639,349-5*(TR-10)):NEXT
50 F$="23185.tm2"'NREL TMY2 file name (Reno)
60 OPEN F$ FOR INPUT AS #1
70 OPEN "winter" FOR OUTPUT AS #2
80 LINE INPUT#1,S$'read header
90 CITY$=MID$(S$,8,25)
100 LAT=VAL(MID$(S$,40,2))+VAL(MID$(S$,43,2))/60
110 LON=VAL(MID$(S$,48,3))+VAL(MID$(S$,52,2))/60
120 PRINT#2,CITY$,LAT,LON
130 GOSUB 190
140 PASS=1
150 CLOSE #1
160 OPEN F$ FOR INPUT AS #1
170 LINE INPUT#1,S$'ignore header
180 GOSUB 190
190 FOR H=1 TO 8760'hour of year
200 LINE INPUT#1,S$
210 MONTH=VAL(MID$(S$,4,2))'month of year (1-12)
220 IF PASS=0 AND MONTH<10 GOTO 610
230 IF PASS=1 AND MONTH=2 THEN END
240 WH=H+8760*PASS
250 DAY=VAL(MID$(S$,6,2))'day of month
260 HOUR=VAL(MID$(S$,8,2))-.5'hour of day
270 N=H/24'day of year (1 to 365)
280 TDB=VAL(MID$(S$,68,4))*.18+32'dry bulb temp (F)
290 PSET(DF*(WH-8030),349-5*(TDB-10))
300 IGLOH=VAL(MID$(S$,18,4))*.317'global horizontal radiation (Btu/ft^2)
310 PRINT#2,MONTH;DAY;HOUR;TDB;IGLOH;
320 IDIF=VAL(MID$(S$,30,4))*.317'diffuse horizontal radiation (Btu/ft^2)
330 IDIR=VAL(MID$(S$,24,4))*.317'direct normal radiation (Btu/ft^2)
340 L=PI*LAT/180'Phila latitude (radians)
350 T=HOUR'solar time (EST)
360 X=-SIN(PI*23.45/180)*COS(2*PI*(N+10)/365.25)
370 D=ATN(X/SQR(-X*X+1))'sin^-1(x) = declination (radians)
380 W=2*PI*(T-12)/24'hour angle (radians)
390 X=COS(L)*COS(D)*COS(W)+SIN(L)*SIN(D)
400 THETAS=-ATN(X/SQR(-X*X+1))+PI/2'cos^-1(x) = sun zenith angle (radians)
410 X=COS(D)*SIN(W)/SIN(THETAS)
420 IF X^2 >=1 THEN PHIS=-1.570796327#:GOTO 440
430 PHIS=ATN(X/SQR(-X*X+1))'sin^-1(x) = sun azimuth angle (radians)
440 FOR PHIPD=0 TO 180 STEP 90'azimuth angle of plane (degrees)
450 PHIP=PI*PHIPD/180
460 X=SIN(THETAS)*COS(PHIS-PHIP)
470 THETAI=-ATN(X/SQR(-X*X+1))+PI/2'incidence angle to surface (radians)
480 IF THETAI>=PI/2 THEN THETAI=PI/2
490 RHOG=.2'ground reflectance
500 IGLOP=IDIR*COS(THETAI)+IDIF/2+IGLOH*RHOG/2'radiation on surface (Btu/ft^2)
510 PRINT#2,IGLOP;
520 'IF PHIPD = 0 THEN PSET(H-8030,349-IGLOP)
530 NEXT PHIPD
540 PHIP=PI*270/180
550 X=SIN(THETAS)*COS(PHIS-PHIP)
560 THETAI=-ATN(X/SQR(-X*X+1))+PI/2'incidence angle to surface (radians)
570 IF THETAI>=PI/2 THEN THETAI=PI/2
580 IGLOP=IDIR*COS(THETAI)+IDIF/2+IGLOH*RHOG/2'radiation on surface (Btu/ft^2)
590 PRINT#2,IGLOP
600 IF HOUR=.5 THEN LINE (DF*(WH-8030),349)-(DF*(WH-8030),345)
610 NEXT H
620 RETURN

Here's the start of the winter file, with the month, day, hour, dry bulb
temperature (F), and Btu/ft^2 of sun falling on the ground and south, west,
north, and east walls for the months of October through January. The worst-
case months are December and January. I start simulating in October to make
sure house temperatures have stabilized by December.

RENO NV 39.5 119.7833
10 1 .5 44.06 0 0 0 0 0
10 1 1.5 43.52 0 0 0 0 0
10 1 2.5 42.08 0 0 0 0 0
10 1 3.5 39.74 0 0 0 0 0
10 1 4.5 39.74 0 0 0 0 0
10 1 5.5 40.28 .634 .2433778 .2218999 .2218999 .8492084
10 1 6.5 41 20.288 20.40661 6.466783 6.466783 110.9118
10 1 7.5 48.92 79.884 78.2263 16.23037 16.23037 211.7582
10 1 8.5 57.02 142.333 137.1752 25.48676 25.48676 228.2724
10 1 9.5 64.94 194.638 186.9535 33.09476 33.09476 201.9825
10 1 10.5 69.98001 232.361 223.7174 38.29355 38.29355 149.5433
10 1 11.5 75.02001 247.577 240.1501 40.44915 40.44915 78.724
10 1 12.5 80.06001 245.041 240.2293 78.39368 40.03705 40.03705
10 1 13.5 80.06001 221.583 221.1326 147.2574 36.74025 36.74025
10 1 14.5 80.06001 178.154 183.0438 197.6003 30.65386 30.65386
10 1 15.5 80.06001 121.094 130.7123 218.4883 22.25336 22.25336
10 1 16.5 74.12 56.743 67.68118 185.0582 12.64827 12.64827
10 1 17.5 68 11.412 10.40487 49.15384 4.311193 4.311193
10 1 18.5 62.06 0 0 0 0 0
10 1 19.5 60.08 0 0 0 0 0
10 1 20.5 57.92 0 0 0 0 0
10 1 21.5 55.94 0 0 0 0 0
10 1 22.5 51.26 0 0 0 0 0
10 1 23.5 46.76 0 0 0 0 0
10 2 .5 42.08 0 0 0 0 0
....

Here's a program that simulates an 8' R32 cube with an R2 south wall
with 80% solar transmission and a huge thermal mass using the winter
file as an input. There are much more efficient solar heating schemes
(eg those using simple air heaters or low-thermal-mass sunspaces), but
this direct gain scheme is simple to simulate with a 21 line program.

10 CLS:SCREEN 9:LINE (0,0)-(639,349),,B:DF=.43
20 FOR TR=20 TO 70 STEP 10'plot temp ref lines
30 LINE (0,349-5*(TR-10))-(639,349-5*(TR-10)):NEXT
40 RV=32'wall R-value
50 C=20000!'house capacitance (Btu/F)

Increasing the R-value or capacitance raises the worst-case temperature...

60 TI=70:TIMIN=1000'Initial house air temps (F)
70 OPEN "winter" FOR INPUT AS #1:LINE INPUT#1,H$
80 INPUT#1,MONTH,DAY,HOUR,TA,SH,SS,SW,SN,SE
100 SOLGAIN=.8*64*SS-(TI-TA)*32'net south window solar gain (Btu)

The solar gain is 80% of the south sun minus the heat loss to the outdoors.

110 IH=SOLGAIN-(TI-TA)*5*64/RV
120 TI=TI+IH/C'find new house temperature (F)

Divide the net heatflow by the capacitance to find its temperature change.

130 IF TI>70 THEN TI=70'limit house temp

An exhaust fan might enforce this 70 F upper comfort limit.

200 IF TI<TIMIN THEN TIMIN=TI:MMIN=MONTH:DMIN=DAY:HMIN=HOUR

The line above finds the worst-case minimum temperature over the year,
in this case 65.01 F, which occurs at 6:30 AM on 12/16...

210 IF MONTH=10 OR MONTH=11 GOTO 270'skip Oct and Nov display
220 SST=SST+SS'accumulate south wall sun
230 PSET(DF*H,349-5*(TA-10))'plot ambient temp
240 PSET(DF*H,349-5*(TI-10))'plot house temp
250 IF HOUR=.5 THEN LINE (DF*H,349)-(DF*H,345)
260 H=H+1'increment hour
270 IF MONTH=1 AND DAY=31 AND HOUR=23.5 THEN GOTO 280 ELSE GOTO 80
280 PRINT MMIN;DMIN;HMIN;TIMIN;C;SST/62

With just a few more lines you can add some internal heat gain from
electrical use, air leaks, thermal mass airfilm resistance, a furnace
(if needed :-), a whole-house fan for cooling at night in July (with
an average daily high and low of 91.9 and 51.3 F), and so on.
quote:

>One that I've tried (eQuest) is wonderful in its detail and
>ease-of-use. Unfortunately, there must be a flaw in the underlying
>model calculation because increasing the south facing (double pane,
>high SHGC) glass from 12% to 70% *increases* the HVAC heating
>requirements.


Windows lose heat at night and on cloudy days, as DJ mentioned.

You might try making this south window a simple air heater that loses
no heat at night, or move it to a low-thermal-mass sunspace that's
isolated from the living space and let warm air circulate between
the sunspace during the day and stop the circulation at night and
let the sunspace get cold, so the window loses little heat at night,
IF your simulation program permits. Lots of them don't, even DOE's
latest and greatest ENERGY 10.

Changing the window to an air heater in the cube above reduces the
required thermal mass from 20K to 3.5K Btu/F, for a 65 F min temp.
Putting in the ceiling with a larger temp swing reduces it further,
especially with a nighttime heat setback.
quote:

>Other software (e.g. the Canadian Hot2000, RESFEN 3.1 )
>does not seem to allow one to input the exact floorplan, unique
>building materials (e.g. ICF's) and other data necessary for an
>accurate estimate of heating requirements. Some also have artificial
>limitations (e.g. unable to specify 80% of the south facing wall as
>windows)


Those are the kinds of limitations and bugs and unclear assumptions
that led me to write my own hourly simulation programs. Also, being
able to change the fundamentals can give much deeper insight as to
what's going on, compared to canned programs.

Nick

LinkBot





Other archives available: Cellular phones topics archive | Web Design forum archive | Software help archive | Hardware reviews archive | Programming topics archive

Copyright 2004 - 2008 homeownerschat.com