diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/solid_angle.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/solid_angle.c b/src/solid_angle.c index f7bb7e3..a8daa15 100644 --- a/src/solid_angle.c +++ b/src/solid_angle.c @@ -143,15 +143,15 @@ double get_solid_angle_lookup(double L2, double r2) double get_solid_angle_fast(double *pos, double *pmt, double *n, double r) { double dir[3]; - double L, r0, R; + double L, r0, R2; dir[0] = pos[0] - pmt[0]; dir[1] = pos[1] - pmt[1]; dir[2] = pos[2] - pmt[2]; - L = fabs(dir[0]*n[0] + dir[1]*n[1] + dir[2]*n[2]); - R = sqrt(dir[0]*dir[0] + dir[1]*dir[1] + dir[2]*dir[2]); - r0 = sqrt(R*R - L*L); + L = fabs(DOT(dir,n)); + R2 = DOT(dir,dir); + r0 = sqrt(R2 - L*L); return get_solid_angle_lookup(L/r,r0/r); } |