[Radiance-general] Modeling reflective glazing and glazing with
ceramic frit
Gregory J. Ward
gregoryjward at gmail.com
Thu Dec 28 22:14:31 CET 2006
Hi Arvinder,
I haven't read through this post thoroughly or Rob's reply, but just
wanted to mention the optics2rad script that's included in Radiance
3.8. That takes your Optics5 output and produces:
# Output generated by /usr/local/ray/optics2rad from /tmp/t.mat
# Product Name= Heat Mirror™ HPR 18 Suspended Film
# NFRC ID= 1507
# Manufacturer Name= Southwall Technologies, Inc.
# Glazing Type= Coated
# Coated Side= Front
# Transmittance= 0.189
# Front Reflectance= 0.649
# Back Reflectance= 0.116
# Thickness(mm)= 0.076
# Appearance= Reflective
#
void BRTDfunc HMHPR18
10
rR_bronze rG_bronze rB_bronze
0.131*tR_bronze 0.197*tG_bronze 0.341*tB_bronze
0 0 0
window.cal
0
15 0 0 0 0 0 0 0 0 0
0.745 0.636 0.4
0.163 0.1 0.092
-----------
Obviously, you need the new window.cal file as well, which is
corrected from the original glazing.cal. I have attached it here
just in case you don't have vers. 3.8:
{ RCSid $Id: window.cal,v 2.1 2006/05/19 03:50:13 greg Exp $ }
{
The following calculation uses the BRTDfunc type to
reproduce the
calculation used by LBL's Optics 5 program for the
transmittance
and reflectance of coated glazings. This calculation is based
on fits for the angular dependence for clear and bronze-coated
glazing, and is not terribly accurate. The variables ??_clear
below should be replaced by ??_bronze in the case of the bronze
glazing model. Used with optics2rad script.
5/18/2006 Greg Ward
Arguments used for this material should look like:
mod BRTDfunc my_glazing
10 rR_clear rG_clear rB_clear
RTAU*tR_clear GTAU*tG_clear BTAU*tB_clear
0 0 0
window.cal
0
15 0 0 0
0 0 0
0 0 0
FRRHO FGRHO FBRHO
BRRHO BGRHO BBRHO
where:
FRRHO FGRHO FBRHO is front normal spectral
reflectance
BRRHO BGRHO BBRHO is back normal spectral
reflectance
RTAU GTAU BTAU is normal spectral
transmittance
}
{ get normal reflectance }
rbase = if(Rdot,10,13); { different front and back }
Rred = arg(rbase)*CrP;
Rgrn = arg(rbase+1)*CgP;
Rblu = arg(rbase+2)*CbP;
{ transmittance coefficients }
Tclear = clip(-.0015 + RdotP*(3.355 + RdotP*(-3.840 +
RdotP*(1.460 + RdotP*.0288))));
Tbronze = clip(-.002 + RdotP*(2.813 + RdotP*(-2.341 +
RdotP*(-.05725 + RdotP*.599))));
{ reflectance coefficients }
Rclear = clip(.999 + RdotP*(-.563 + RdotP*(2.043 +
RdotP*(-2.532 + RdotP*1.054))) - Tclear);
Rbronze = clip(.997 + RdotP*(-1.868 + RdotP*(6.513 +
RdotP*(-7.862 + RdotP*3.225))) - Tbronze);
{ returned spectral transmittance }
tR_clear = CrP*Tclear;
tG_clear = CgP*Tclear;
tB_clear = CbP*Tclear;
tR_bronze = CrP*Tbronze;
tG_bronze = CgP*Tbronze;
tB_bronze = CbP*Tbronze;
{ returned spectral reflectance }
rR_clear = Rred*(1 - Rclear) + Rclear;
rG_clear = Rgrn*(1 - Rclear) + Rclear;
rB_clear = Rblu*(1 - Rclear) + Rclear;
rR_bronze = Rred*(1 - Rbronze) + Rbronze;
rG_bronze = Rgrn*(1 - Rbronze) + Rbronze;
rB_bronze = Rblu*(1 - Rbronze) + Rbronze;
-------------------------
Hope this helps.
-Greg
More information about the Radiance-general
mailing list