1 |
greg |
1.12 |
.\" RCSid $Id: gendaymtx.1,v 1.11 2020/01/07 01:42:30 greg Exp $ |
2 |
greg |
1.1 |
.TH GENDAYMTX 1 01/19/13 RADIANCE |
3 |
|
|
.SH NAME |
4 |
|
|
gendaymtx - generate an annual Perez sky matrix from a weather tape |
5 |
|
|
.SH SYNOPSIS |
6 |
|
|
.B gendaymtx |
7 |
|
|
[ |
8 |
|
|
.B "\-v" |
9 |
|
|
][ |
10 |
greg |
1.6 |
.B "\-h" |
11 |
|
|
][ |
12 |
greg |
1.10 |
.B "\-A" |
13 |
|
|
][ |
14 |
greg |
1.11 |
.B "\-d|\-s|\-n" |
15 |
|
|
][ |
16 |
|
|
.B "\-D sunfile" |
17 |
greg |
1.1 |
][ |
18 |
greg |
1.12 |
.B "\-M sunmods" |
19 |
|
|
][ |
20 |
greg |
1.2 |
.B "\-r deg" |
21 |
|
|
][ |
22 |
greg |
1.1 |
.B "\-m N" |
23 |
|
|
][ |
24 |
|
|
.B "\-g r g b" |
25 |
|
|
][ |
26 |
|
|
.B "\-c r g b" |
27 |
|
|
][ |
28 |
|
|
.B "-o{f|d}" |
29 |
greg |
1.4 |
][ |
30 |
|
|
.B "-O{0|1}" |
31 |
greg |
1.1 |
] |
32 |
|
|
[ |
33 |
|
|
.B "tape.wea" |
34 |
|
|
] |
35 |
|
|
.SH DESCRIPTION |
36 |
|
|
.I Gendaymtx |
37 |
|
|
takes a weather tape as input and produces a matrix of sky patch |
38 |
|
|
values using the Perez all-weather model. |
39 |
|
|
The weather tape is assumed to be in the simple ASCII format understood |
40 |
|
|
by DAYSIM, which contains a short header with the site parameters followed |
41 |
|
|
by the month, day, standard time, direct normal and diffuse horizontal |
42 |
|
|
irradiance values, one time step per line. |
43 |
|
|
Each time step line is used to compute a column in the output matrix, |
44 |
|
|
where rows correspond to sky patch positions, starting with 0 for |
45 |
|
|
the ground and continuing to 145 for the zenith using the default |
46 |
|
|
.I "\-m 1" |
47 |
|
|
parameter setting. |
48 |
|
|
.PP |
49 |
|
|
Increasing the |
50 |
|
|
.I \-m |
51 |
greg |
1.11 |
parameter yields a higher resolution |
52 |
greg |
1.1 |
sky using the Reinhart patch subdivision. |
53 |
|
|
For example, setting |
54 |
|
|
.I "\-m 4" |
55 |
|
|
yields a sky with 2305 patches plus one patch for the ground. |
56 |
|
|
Each matrix entry is in fact three values, corresponding to |
57 |
|
|
red green and blue radiance channels (watts/sr/meter^2). |
58 |
|
|
Thus, an hourly weather tape for an entire year would |
59 |
|
|
yield 8760x3 (26280) values per output line (row). |
60 |
|
|
.PP |
61 |
|
|
The |
62 |
greg |
1.10 |
.I \-A |
63 |
|
|
option tells |
64 |
|
|
.I gendaymtx |
65 |
|
|
to generate a single column corresponding to an average sky |
66 |
|
|
computed over all the input time steps, rather than one |
67 |
|
|
column per time step. |
68 |
|
|
.PP |
69 |
|
|
The |
70 |
greg |
1.1 |
.I \-c |
71 |
|
|
option may be used to specify a color for the sky. |
72 |
greg |
1.7 |
The gray value should equal 1 for proper energy balance. |
73 |
greg |
1.1 |
The default sky color is |
74 |
|
|
.I "\-c 0.960 1.004 1.118". |
75 |
|
|
Similarly, the |
76 |
|
|
.I \-g |
77 |
|
|
option may be used to specify a ground color. |
78 |
|
|
The default value is |
79 |
|
|
.I "\-g 0.2 0.2 0.2" |
80 |
|
|
corresponding to a 20% gray. |
81 |
|
|
.PP |
82 |
|
|
The |
83 |
|
|
.I \-d |
84 |
greg |
1.9 |
option may be used to produce a sun-only matrix, with no sky contributions, |
85 |
|
|
and the ground patch also set to zero. |
86 |
greg |
1.1 |
Alternatively, the |
87 |
|
|
.I \-s |
88 |
greg |
1.9 |
option may be used to exclude any direct solar component from the output, |
89 |
|
|
with the rest of the sky and ground patch unaffected. |
90 |
greg |
1.8 |
If there is a sun in the description, |
91 |
|
|
.I gendaymtx |
92 |
|
|
will include its contribution in the four nearest sky patches, |
93 |
|
|
distributing energy according to centroid proximity. |
94 |
greg |
1.1 |
.PP |
95 |
greg |
1.11 |
The |
96 |
|
|
.I \-n |
97 |
|
|
option may be used if no matrix output is desired. |
98 |
|
|
This may be used to merely check the input, or in combination with the |
99 |
|
|
.I \-D |
100 |
|
|
option, below. |
101 |
|
|
.PP |
102 |
|
|
The |
103 |
|
|
.I \-D |
104 |
|
|
option may be used to specify an output file to contain a list of |
105 |
|
|
solar positions and intensities corresponding to time steps in the |
106 |
greg |
1.12 |
weather tape where the sun has any portion above the horizion. |
107 |
|
|
Sun radiance values may be zero if the direct amount is zero on the input. |
108 |
|
|
Sun modifiers and names will be indexed by the minute, numbered from |
109 |
|
|
midnight, January 1st. |
110 |
|
|
If a hyphen ('-') is given as the argument to |
111 |
|
|
.I \-D, |
112 |
|
|
then the sun descriptions will be directed to the standard output. |
113 |
|
|
This implies the |
114 |
|
|
.I \-n |
115 |
|
|
option just described. |
116 |
|
|
If the |
117 |
|
|
.I \-M |
118 |
|
|
option is given as well, it will be used to record the modifier |
119 |
|
|
names used in the |
120 |
|
|
.I \-D |
121 |
|
|
output, for convenient input to |
122 |
|
|
.I rcontrib(1) |
123 |
|
|
and |
124 |
|
|
.I rfluxmtx(1). |
125 |
greg |
1.11 |
.PP |
126 |
greg |
1.3 |
By default, |
127 |
|
|
.I gendaymtx |
128 |
|
|
assumes the positive Y-axis points north such that the first sky patch |
129 |
|
|
is in the Y-axis direction on the horizon, the second patch is just |
130 |
|
|
west of that, and so on spiraling around to the final patch near the zenith. |
131 |
greg |
1.1 |
The |
132 |
greg |
1.2 |
.I \-r |
133 |
|
|
(or |
134 |
|
|
.I \-rz) |
135 |
|
|
option rotates the sky the specified number of degrees counter-clockwise |
136 |
greg |
1.3 |
about the zenith, i.e., west of north. |
137 |
greg |
1.2 |
This is in keeping with the effect of passing the output of |
138 |
|
|
.I gensky(1) |
139 |
|
|
or |
140 |
|
|
.I gendaylit(1) |
141 |
|
|
through |
142 |
|
|
.I xform(1) |
143 |
|
|
using a similar transform. |
144 |
|
|
.PP |
145 |
|
|
The |
146 |
greg |
1.1 |
.I \-of |
147 |
|
|
or |
148 |
|
|
.I \-od |
149 |
|
|
option may be used to specify binary float or double output, respectively. |
150 |
|
|
This is much faster to write and to read, and is therefore preferred on |
151 |
|
|
systems that support it. |
152 |
|
|
(MS Windows is not one of them.)\0 |
153 |
greg |
1.4 |
The |
154 |
|
|
.I \-O1 |
155 |
|
|
option specifies that output should be total solar radiance rather |
156 |
|
|
than visible radiance. |
157 |
greg |
1.6 |
The |
158 |
|
|
.I \-h |
159 |
|
|
option prevents the output of the usual header information. |
160 |
greg |
1.1 |
Finally, the |
161 |
|
|
.I \-v |
162 |
|
|
option will enable verbose reporting, which is mostly useful for |
163 |
|
|
finding out how many time steps are actually in the weather tape. |
164 |
|
|
.SH EXAMPLES |
165 |
|
|
Produce an uncolored Tregenza sky matrix without solar direct: |
166 |
|
|
.IP "" .2i |
167 |
|
|
gendaymtx -m 1 -c 1 1 1 -s Detroit.wea > Detroit.mtx |
168 |
|
|
.PP |
169 |
|
|
Produce an hourly, annual Reinhart sky matrix |
170 |
|
|
with 2306 patches including solar contributions |
171 |
|
|
and send float output to |
172 |
|
|
.I dctimestep(1) |
173 |
|
|
to compute a sensor value matrix: |
174 |
|
|
.IP "" .2i |
175 |
|
|
gendaymtx -m 4 -of VancouverBC.wea | dctimestep -if -n 8760 DCoef.mtx > res.dat |
176 |
|
|
.SH AUTHORS |
177 |
|
|
Ian Ashdown wrote most of the code, |
178 |
|
|
based on Jean-Jacques Delaunay's original gendaylit(1) implementation. |
179 |
|
|
Greg Ward wrote the final parameter parsing and weather tape conversion. |
180 |
|
|
.SH "SEE ALSO" |
181 |
greg |
1.5 |
dctimestep(1), genBSDF(1), gendaylit(1), gensky(1), genskyvec(1), |
182 |
greg |
1.12 |
rcollate(1), rcontrib(1), rfluxmtx(1), xform(1) |