def reflectance(rad,cosb,t_setx,height,r_setx,s_setx,sang):
n=len(t_set)
ttmp=[x/dtau for x in t_setx]
htmp=[height/dheight for x in t_setx]
stmp=[sang-x for x in s_setx]
path=ndimage.map_coordinates(path_rad,[ttmp,htmp,stmp]).reshape(n,1)
back=ndimage.map_coordinates(back_rad,[ttmp,htmp,stmp]).reshape(n,1)
pixel=ndimage.map_coordinates(pixel_rad,[ttmp,htmp,stmp]).reshape(n,1)
dir=ndimage.map_coordinates(dir_irad,[ttmp,htmp,stmp]).reshape(n,1)
sky=ndimage.map_coordinates(sky_irad,[ttmp,htmp,stmp]).reshape(n,1)
env=ndimage.map_coordinates(env_irad,[ttmp,htmp,stmp]).reshape(n,1)
sph=ndimage.map_coordinates(sph_alb,[ttmp,htmp,stmp]).reshape(n,1)
rayl=ndimage.map_coordinates(tau_rayl,[ttmp,htmp,stmp]).reshape(n,1)
aero=ndimage.map_coordinates(tau_aero,[ttmp,htmp,stmp]).reshape(n,1)
minor=ndimage.map_coordinates(tau_minor,[ttmp,htmp,stmp]).reshape(n,1)
dir=dir*cosb/cosb0
#print dir
back=back*(1-r_set0*sph)*r_setx/(1-r_setx*sph)/r_set0
#print back
env=env*(1-r_set0*sph)*r_setx/(1-r_setx*sph)/r_set0
odep=rayl+aero+minor
S=np.cos(np.pi*sang/180)
return np.pi*(rad-path-back)/(dir+sky+env)*np.exp(odep/S)
评论列表
文章目录