ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/doc/man/man1/dctimestep.1
Revision: 1.19
Committed: Wed Dec 6 01:27:00 2023 UTC (17 months ago) by greg
Branch: MAIN
Changes since 1.18: +2 -2 lines
Log Message:
docs(rmtxcomb): Added man page for new rmtxcomb tool

File Contents

# User Rev Content
1 greg 1.19 .\" RCSid $Id: dctimestep.1,v 1.18 2022/03/23 01:52:51 greg Exp $"
2 greg 1.1 .TH DCTIMESTEP 1 12/09/09 RADIANCE
3     .SH NAME
4 greg 1.4 dctimestep - compute annual simulation time-step(s) via matrix multiplication
5 greg 1.1 .SH SYNOPSIS
6     .B dctimestep
7 greg 1.4 [
8     .B "\-n nsteps"
9     ][
10 greg 1.10 .B "\-h"
11     ][
12 greg 1.4 .B "\-o ospec"
13 greg 1.5 ][
14 greg 1.17 .B "\-x xres"
15     ][
16     .B "\-y yres"
17     ][
18 greg 1.10 .B "\-i{f|d}
19 greg 1.8 ][
20 greg 1.16 .B "\-o{f|d|c}
21 greg 1.4 ]
22 greg 1.2 .B DCspec
23     [
24 greg 1.4 .B skyf
25 greg 1.2 ]
26     .br
27     .B dctimestep
28 greg 1.4 [
29     .B "\-n nsteps"
30     ][
31 greg 1.10 .B "\-h"
32     ][
33 greg 1.4 .B "\-o ospec"
34 greg 1.5 ][
35 greg 1.10 .B "\-i{f|d}
36 greg 1.8 ][
37     .B "\-o{f|d}
38 greg 1.4 ]
39 greg 1.1 .B Vspec
40 greg 1.12 .B Tbsdf
41 greg 1.1 .B Dmat.dat
42     [
43 greg 1.4 .B skyf
44 greg 1.1 ]
45     .SH DESCRIPTION
46     .I Dctimestep
47 greg 1.2 has two invocation forms.
48     In the first form,
49     .I dctimestep
50     is given a daylight coefficient specification and an optional sky
51 greg 1.4 vector or matrix, which may be read from the standard input if unspecified.
52     The daylight coefficients are multiplied against these sky values
53     and the results are written to the standard output.
54 greg 1.18 This may be a list of color values or a combined Radiance picture,
55 greg 1.2 as explained below.
56     .PP
57     In the second form,
58     .I dctimestep
59 greg 1.1 takes four input files, forming a matrix expression.
60 greg 1.18 The first argument is the View matrix that specifies how window output
61 greg 1.1 directions are related to some set of measured values, such as an array of
62 greg 1.18 illuminance points or pictures.
63 greg 1.1 This matrix is usually computed by
64 greg 1.12 .I rfluxmtx(1)
65     or
66 greg 1.3 .I rcontrib(1)
67 greg 1.1 for a particular set of windows or skylight openings.
68     The second argument is the window transmission matrix, or BSDF, given as
69 greg 1.12 a matrix or a standard XML description.
70 greg 1.1 The third argument is the Daylight matrix file that defines how sky patches
71     relate to input directions on the same opening.
72     This is usually computed using
73 greg 1.12 .I rfluxmtx
74     with separate runs for each window or skylight orientation.
75 greg 1.6 The last file is the sky contribution vector or matrix,
76     typically computed by
77     .I genskyvec(1)
78     or
79     .I gendaymtx(1),
80     and may be passed on the standard input.
81 greg 1.10 .PP
82     If the input sky data lacks a header, the
83     .I \-n
84     option may be used to indicate the number of time steps, which
85     will be 1 for a sky vector.
86 greg 1.13 The sky input file must otherwise contain the number of
87 greg 1.12 columns (time steps) specified in each sky patch row,
88     whether it is read from the standard input or from a file.
89 greg 1.10 Input starts from the first patch at the first time step, then the
90     first patch at the second time step, and so on.
91 greg 1.12 Note that all matrix elements are RGB triplets, so the actual size
92     of the sky vector or matrix is three times the number of steps times
93     the number of sky patches.
94 greg 1.5 The
95     .I \-if
96     or
97     .I \-id
98     option may be used to specify that sky data is in float or double
99 greg 1.6 format, respectively, which is more efficient for large matrices.
100 greg 1.14 These options are unnecessary when the sky input includes a header.
101 greg 1.1 .PP
102 greg 1.11 Any of the matrix or vector files may be read from a command
103     instead of a file by
104     using quotes and a beginning exclamation point ('!').
105     .PP
106 greg 1.9 The standard output of
107 greg 1.1 .I dctimestep
108 greg 1.8 is either a color vector with as many RGB triplets
109 greg 1.1 as there are rows in the View matrix, or a combined
110     .I Radiance
111     picture.
112 greg 1.2 Which output is produced depends on the first argument.
113 greg 1.1 A regular file name will be loaded and interpreted as a matrix to
114     generate a color results vector.
115     A file specification containing a '%d' format string will be
116     interpreted as a list of
117     .I Radiance
118     component pictures, which will be summed according to the computed
119     vector.
120 greg 1.4 .PP
121     The
122     .I \-o
123     option may be used to specify a file or a set of output files
124     to use rather than the standard output.
125     If the given specification contains a '%d' format string, this
126 greg 1.15 will be replaced by the time step index, starting from 0.
127 greg 1.4 In this way, multiple output pictures may be produced,
128 greg 1.6 or separate result vectors (one per time step).
129 greg 1.18 If input is a matrix rather than a set of pictures, the
130 greg 1.17 .I \-x
131     and/or
132     .I \-y
133 greg 1.18 options may be necessary to set the output picture size.
134 greg 1.17 If only one dimension is specified, the other is computed based
135     on the number of rows in the result vectors.
136 greg 1.8 .PP
137 greg 1.10 A header will normally be produced on the output, unless the
138     .I \-h
139     option is specified.
140 greg 1.8 The
141 greg 1.16 .I \-of,
142     .I \-od,
143 greg 1.8 or
144 greg 1.16 .I \-oc
145     option may be used to specify IEEE float, double, or RGBE (picture) output
146 greg 1.8 data, respectively.
147 greg 1.1 .SH EXAMPLES
148 greg 1.2 To compute workplane illuminances at 3:30pm on Feb 10th:
149     .IP "" .2i
150     gensky 2 10 15:30 | genskyvec | dctimestep workplaneDC.dmx > Ill_02-10-1530.dat
151     .PP
152 greg 1.18 To compute a picture at 10am on the equinox from a set of component pictures:
153 greg 1.2 .IP "" .2i
154 greg 1.6 gensky 3 21 10 | genskyvec | dctimestep dcomp%03d.hdr > view_03-21-10.hdr
155 greg 1.2 .PP
156 greg 1.1 To compute a set of illuminance contributions for Window 1 on
157     the Winter solstice at 2pm:
158     .IP "" .2i
159     gensky 12 21 14 | genskyvec | dctimestep IllPts.vmx Blinds20.xml Window1.dmx > Ill_12-21-14.dat
160     .PP
161     To compute Window2's contribution to an interior view at 12 noon on the Summer solstice:
162     .IP "" .2i
163 greg 1.6 gensky 6 21 12 | genskyvec | dctimestep view%03d.hdr Blinds30.xml
164     Window2.dmx > view_6-21-12.hdr
165     .PP
166     To generate an hourly matrix of sensor value contributions from Skylight3
167     using a 3-phase calculation, where output columns are time steps:
168     .IP "" .2i
169 greg 1.10 gendaymtx -of Tampa.wea | dctimestep WPpts.vmx
170 greg 1.6 shade3.xml Skylight3.dmx > wp_win3.dat
171     .PP
172     Generate a series of pictures corresponding to timesteps
173     in an annual simulation:
174     .IP "" .2i
175 greg 1.10 gendaymtx NYCity.wea | dctimestep -o tstep%04d.hdr dcomp%03d.hdr
176 greg 1.8 .PP
177 greg 1.12 To multiply an irradiance view matrix through a pair of XML window layers using
178     a given exterior daylight matrix and sky vector:
179     .IP "" .2i
180     dctimestep Illum.vmx "!rmtxop -ff Blinds1.xml Windo1.xml" Exter.dmx Jan20.sky
181     .PP
182 greg 1.10 To multiply two matrices into a IEEE-float result with header:
183 greg 1.8 .IP "" .2i
184 greg 1.10 dctimestep -of Inp1.fmx Inp2.fmx > Inp1xInp2.fmx
185 greg 1.18 .SH NOTES
186     .I Dctimestep
187     optimizes its matrix concatenation by checking for all-zero rows
188     or columns, thus avoiding unnecessary vector multiplications.
189     This can improve performance when a daylight matrix contains
190     zero-filled column vectors corresponding to hours of darkness.
191     .PP
192     It rarely makes sense to specify the
193     .I \-od
194     output option with
195     .I dctimestep,
196     since matrix operations are carried out using 32-bit "float" values.
197     This take less memory, but can also be less accurate than an
198     equivalent invocation of
199     .I rmtxop(1),
200     which performs all operations on 64-bit "double" values.
201 greg 1.1 .SH AUTHOR
202     Greg Ward
203     .SH "SEE ALSO"
204 greg 1.12 gendaymtx(1), genskyvec(1), getinfo(1),
205 greg 1.18 mkillum(1), rcollate(1), rcontrib(1), rcrop(1),
206 greg 1.19 rfluxmtx(1), rmtxcomb(1), rmtxop(1), rtrace(1), vwrays(1)