I would like to examine which parts of a high-reflective tower facade contribute to glare in rooms across the tower. Some patches of the facade reflect sunlight at different times of the day and cause glare in different rooms across the tower. Can I assign these patches (surfaces) a light source using the rcontrib
or possibly using mkillum
or what would be the best practice to do this?
Update based on Greg's answer below:
Ok, first of all, I use Honeybee to export my Geometry and create rad files, here Deleted a series of steps that are not right.
Another thought:
I already created an array of views from the opposite building, attached is the list of the files I get out of Honeybee:
A sky file (climateBasedSky@_12_17@1500.sky). A geometry file (glaretest.rad). Material file
(material_glaretest.rad). Points (glaretest_0.pts)
I split my tower facade into two pieces (panels) one view!
In the HDR rendering, the purple area is the source of glare (please correct me if I'm wrong), so it's easier to test the workflow (later, I will need to split it into 180 panels)
I assigned each panel a mirror material with different names as follows:
void mirror small_patch
0
0
3 1 1 1
void mirror large_patch
0
0
3 1 1 1
The generated points were created co-planar with the window surface, is this the right area to place my points for the rcontrib command (I'm more interested in visual comfort than in illuminance on a work plane)
I ran the following command:
oconv -r 2048 -f material_glaretest.rad climateBasedSky@_12_17@1500.sky glaretest.rad > glaretest_IMG.oct
Then:
rpict -i -t 10 -vth -vp -17.000000000003862 10.000000000003865 1.2000000000762194 -vd 1.0 0.0 0.0 -vu 0.0 0.0 1.0 -vh 180.000 -vv 180.000 -vs 0.000 -vl 0.000 -x 64 -y 64 -af glaretest_IMG.amb -ps 8 -pt 0.15 -pj 0.6 -dj 0 -ds 0.5 -dt 0.5 -dc 0.25 -dr 32 -dp 64 -st 0.2 -ab 7 -ad 512 -as 128 -ar 16 -aa 0.250 -lr 4 -lw 0.002 -av 0 0 0 glaretest_IMG.oct > glaretest_IMG.unf
Then this command to calculate the contribution of the large_patch and small_patch:
rcontrib < glaretest_0.pts -m small_patch -m large_patch -I+ -ab 12 -ad 50000 -lw 2e-5 glaretest_IMG.oct > test.vmx
I get a .vmx file with a 6 column matrix and "n" rows (n=the number of the test points).
Is this workflow correct? if so how would I translate the numbers in the matrix, although I converted the numbers from ASCII format to numbers I didn't understand what these numbers meant, the numbers are integers between 5 to 101.
I suspect that using pts is the right approach because you mentioned in your answer that I should get a matrix of reflection contribution from each source in every irradiance position in the image/scene, so I'm guessing that I have to feed the rcontrib command an HDR image, not sure how though!
Then to create a pair of images should I use this command?
vwrays −ff −x 1024 −y 1024 −vf glaretest_IMG.unf| rcontrib −ffc ‘vwrays −d −x 1024 −y 1024 −vf glaretest_IMG.unf‘ @render.opt −o c_%s.hdr −m small_patch −m large_patch glaretest_IMG.oct
If this is the right command, what would be the input in place of "@render.opt"?
When I split the facade into 180 panels, can I put their material names into a text file then reference the file when calling rcontrib? (I read somewhere that this is possible)
One last question, can I assign all the facade panels their real material instead of mirror. Their material should covered in gray are offending my view. Shouldn't this be this:
void BRTDfunc reflective_Glz
10 rR_bronze rG_bronze rB_bronze 0.21*tR_bronze 0.237*tG_bronze 0.209*tB_bronze 0 0 0 window.cal
0
15 0 0 0 0 0 0 0 0 0 0.707 0.685 0.721 0.737 0.702 0.694
I uploaded the project files to https://drive.google.com/drive/folders/1Dsf3zgdljrFi6jXntv9mXu0VCN4VeH2U?usp=sharingenough to answer my question?
if I can overlay this image with my geometry (I'll use Matlab for that) I will be able to determine exactly where the offending panels are!