| 1 |
{
|
| 2 |
Compute distribution on ceiling or wall of cove lighting
|
| 3 |
system employing linear fixtures.
|
| 4 |
|
| 5 |
10Feb91 Greg Ward
|
| 6 |
|
| 7 |
This is the closed-form solution to the integral of
|
| 8 |
illumination from a one-dimensional extended source.
|
| 9 |
Solution assumes that both fixture endpoints are in front
|
| 10 |
of surface element -- negative values may result if this
|
| 11 |
assumption is wrong!
|
| 12 |
|
| 13 |
Multiply cove_mult by radiant flux per unit source length
|
| 14 |
times cove surface reflectance. To account for interreflection
|
| 15 |
with room surfaces, multiply this value by 1/(1-RcRr), where
|
| 16 |
Rc is the average ceiling reflectance and Rr is the average
|
| 17 |
reflectance of the floor and walls (biased towards the floor).
|
| 18 |
|
| 19 |
A1-A6 - Begin and end point coord's of first fixture
|
| 20 |
A7-A12, A13-A18, ... - Coord's for second, third, ... fixtures
|
| 21 |
}
|
| 22 |
|
| 23 |
cove_mult = cove_sum(arg(0)/6, 1);
|
| 24 |
|
| 25 |
cove_sum(n, i0) = if(n-.5,
|
| 26 |
cove_coef(
|
| 27 |
(arg(i0)-Px)*Nx
|
| 28 |
+(arg(i0+1)-Py)*Ny
|
| 29 |
+(arg(i0+2)-Pz)*Nz,
|
| 30 |
(arg(i0+3)-arg(i0))*Nx
|
| 31 |
+(arg(i0+4)-arg(i0+1))*Ny
|
| 32 |
+(arg(i0+5)-arg(i0+2))*Nz,
|
| 33 |
sq(arg(i0)-Px)
|
| 34 |
+sq(arg(i0+1)-Py)
|
| 35 |
+sq(arg(i0+2)-Pz),
|
| 36 |
(Px-arg(i0))*(arg(i0+3)-arg(i0))
|
| 37 |
+(Py-arg(i0+1))*(arg(i0+4)-arg(i0+1))
|
| 38 |
+(Pz-arg(i0+2))*(arg(i0+5)-arg(i0+2)),
|
| 39 |
sq(arg(i0+3)-arg(i0))
|
| 40 |
+sq(arg(i0+4)-arg(i0+1))
|
| 41 |
+sq(arg(i0+5)-arg(i0+2)))
|
| 42 |
+ cove_sum(n-1, i0+6),
|
| 43 |
0);
|
| 44 |
|
| 45 |
cove_coef(a, b, g, h, k) = 1/Sqrt(g*k-h*h)/(2*PI*PI*PI)
|
| 46 |
*( (a*k+b*h)/Sqrt(g*k-h*h)
|
| 47 |
*(atan((k-h)/Sqrt(g*k-h*h))+atan(h/Sqrt(g*k-h*h)))
|
| 48 |
+ (a*k+b*h-a*h-b*g)/(k-2*h+g)
|
| 49 |
+ (a*h+b*g)/g );
|