home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 8 / CDASC08.ISO / NEWS / RADIANCE / LIB / SOURCE.CAL < prev    next >
Text File  |  1993-10-07  |  1KB  |  44 lines

  1. { SCCSid "@(#)source.cal 2.3 8/18/92 LBL" }
  2.  
  3. {
  4.     Source distribution coordinates (degrees).
  5.  
  6.     Theta is measured from the negative z-axis,
  7.     phi is measured from the positive x-axis
  8.     according to the right-hand rule.
  9.  
  10.     srcB_vert and srcB_horiz are angles
  11.     used in type B photometry.
  12.  
  13.     boxcorr function corrects for distribution modeled
  14.     with a rectangular box.  lboxcorr provides a more
  15.     accurate calculation for nearby surfaces, but requires
  16.     that the source box be centered at the origin.
  17.  
  18.     A1        - optional multipier
  19.     A2,A3,A4    - X,Y,Z dimensions of axis-aligned box
  20. }
  21.                     { local definitions }
  22. boxprojection = abs(Dx)*A3*A4 + abs(Dy)*A2*A4 + abs(Dz)*A2*A3;
  23. lboxprojection = (    noneg(abs(Px-Dx*Ts)-A2/2)*A3*A4 +
  24.             noneg(abs(Py-Dy*Ts)-A3/2)*A2*A4 +
  25.             noneg(abs(Pz-Dz*Ts)-A4/2)*A2*A3 ) / Ts;
  26.  
  27. flatcorr(v) = corr(v) / Rdot;        { correction for flat sources }
  28. corr(v) = if(AC-.5, A1*v, v);        { multiplier correction }
  29. boxcorr(v) = A1 * v / boxprojection;    { correction for emitting box }
  30. lboxcorr(v) = A1 * v / lboxprojection;    { local box correction }
  31.  
  32. src_theta = Acos(Dz) / DEGREE;            { 0-180 }
  33. src_phi = mod( atan2(Dy, Dx) / DEGREE, 360 );    { 0-360 }
  34.                 { bilateral symmetry }
  35. src_phi2 = tri( src_phi, 180 );        { 0-180 }
  36.                 { quadrilateral symmetry }
  37. src_phi4 = tri( src_phi, 90 );        { 0-90 }
  38.  
  39.                 { Type B photometry coordinates }
  40. srcB_vert = atan( -Dx/Dz ) / DEGREE;
  41. srcB_horiz = Asin(Dy) / DEGREE;
  42.                 { w/ bilateral symmetry }
  43. srcB_horiz2 = abs( srcB_horiz );
  44.