====== Impact of various parameters on UV irradiance ====== //Task:// In the spectral range from 300 nm to 500 nm investigate the influence of the following parameters on the irradiance spectrum: solar zenith angle, surface albedo, ozone column. libradtran_path='/local/libRadtran-1.5-beta/bin' for var in 0 15 30 45 60 ; do sed 's/SSS/'$var'/' < uv-zenith.inp > uv-$var.inp | $libradtran_path/uvspec -i uv-$var.inp > tmp/uv$var.out done from pylab import * from matplotlib import pyplot solar_spectrum=loadtxt('/local/libRadtran-1.5-beta/data/solar_flux/kurudz_1.0nm.dat') # irradiance from 300 to 500 nm sw_spectrum=loadtxt('tmp/uv0.out') pyplot.plot(sw_spectrum[:,0], sw_spectrum[:,1], label='irradiance 0') # change 1 to desired variable pyplot.title('irradiance spectrum') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=2) sw_spectrum=loadtxt('tmp/uv15.out') pyplot.plot(sw_spectrum[:,0], sw_spectrum[:,1], label='irradiance 15') # change 1 to desired variable pyplot.title('irradiance spectrum') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=2) sw_spectrum=loadtxt('tmp/uv30.out') pyplot.plot(sw_spectrum[:,0], sw_spectrum[:,1], label='irradiance 30') # change 1 to desired variable pyplot.title('irradiance spectrum') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=2) sw_spectrum=loadtxt('tmp/uv45.out') pyplot.plot(sw_spectrum[:,0], sw_spectrum[:,1], label='irradiance 45') # change 1 to desired variable pyplot.title('irradiance spectrum') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=2) {{:teaching:radiative_transfer:uv-spectrum1.png|}} sw_spectrum=loadtxt('tmp/uv60.out') pyplot.plot(sw_spectrum[:,0], sw_spectrum[:,1], label='irradiance 60') # change 1 to desired variable pyplot.title('irradiance spectrum') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=2) pyplot.show() pyplot.savefig('solar_irrad_uv.png') {{:teaching:radiative_transfer:uv-spectrum1.png|}} data_files_path /local/libRadtran-1.5-beta/data # Location of atmospheric profile file. atmosphere_file us-standard mol_abs_param lowtran # Location of the extraterrestrial spectrum source solar kurudz_1.0nm.dat albedo 0.3 sza 30.0 ozone_column SSS rte_solver disort2 #Radiance transfer solver wavelength 300.0 500.0 # Wavelength range [nm] zout sur libradtran_path='/local/libRadtran-1.5-beta/bin' for var in 0. 100. 200. 300. ; do sed 's/SSS/'$var'/' < exe.inp > uv-$var.inp | $libradtran_path/uvspec -i uv-$var.inp > tmp_ozone/uv$var.out done from pylab import * from matplotlib import pyplot solar_spectrum=loadtxt('/local/libRadtran-1.5-beta/data/solar_flux/kurudz_1.0nm.dat') # irradiance from 300 to 500 nm sw_spectrum=loadtxt('/home/users/lainer/Strahlung/tmp_ozone/uv0..out') pyplot.plot(sw_spectrum[:,0], sw_spectrum[:,1], label='irradiance ozone_column=0') # change 1 to desired variable pyplot.title('irradiance spectrum') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=4) sw_spectrum1=loadtxt('/home/users/lainer/Strahlung/tmp_ozone/uv100..out') pyplot.plot(sw_spectrum1[:,0], sw_spectrum1[:,1], label='irradiance ozone_column=100') # change 1 to desired variable pyplot.title('irradiance spectrum, sza=30, alb=0.3') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=4) sw_spectrum3=loadtxt('/home/users/lainer/Strahlung/tmp_ozone/uv200..out') pyplot.plot(sw_spectrum3[:,0], sw_spectrum3[:,1], label='irradiance ozone_column=200') # change 1 to desired variable pyplot.title('irradiance spectrum') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=4) sw_spectrum5=loadtxt('/home/users/lainer/Strahlung/tmp_ozone/uv300..out') pyplot.plot(sw_spectrum5[:,0], sw_spectrum5[:,1], label='irradiance ozone_column=300') # change 1 to desired variable pyplot.title('irradiance spectrum, sza=30, alb=0.3') pyplot.xlabel('wavelength [nm]') pyplot.ylabel('irradiance [mW/ (m^2 nm)]') pyplot.legend(loc=4) pyplot.savefig('solar_irrad_uv.png') show() {{:teaching:radiative_transfer:solar_irrad_ozone.png|}}