=====Cirrus cloud detection===== In satellite images it is often difficult to see thin clouds, e.g. cirrus clouds. To detect cirrus clouds a common procedure is to look at the radiance difference between two channels (around 10 µm and 12 µm). Calculate the radiance at 10 µm and at 12 µm for ice clouds in the optical thickness range from 0.1 to 10 and plot the results (radiances and difference). Explain how the cloud detection could work. Start with the input file uvspec.inp from [[teaching:radiative_transfer:thermal|exercise 13]]. {{:teaching:radiative_transfer:thermalirr_toa.png|}} {{:teaching:radiative_transfer:diff_thermalirr_toa.png|}} **--> How cloud detection could work:** For small taus the difference between the irradiances of the two different wavelengths is a strictly monotonic decreasing function of tau. Assuming that in the atmosphere nothing else happens at the same time what influences this difference, one can just read of if there is a thin cloud of small tau by the value of the difference. Assuming only that in the atmosphere nothing else happens at the same time what could influence this difference as strongly as change in thin clouds does, cloud detection could work by checking the time evolution of this difference. If there is happening a lot it means that thin clouds are appearing or disappearing. (?) **Loop over wavelengths and taus:** #!/bin/csh set template=/athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection/uvspec_template.inp set outdir=/athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection foreach wavelength ( 10000 12000 ) #for-Schleife echo ... wavelength = $wavelength gawk '{gsub("VARIABLEwavelength","'$wavelength'"); print}' $template > /athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection/uvspec_wavelength$wavelength.inp # mit der Vorlage 'template' werden die Inputfiles uvspec_wavelength$wavelength.inp erzeugt, wobei das Wort VARIABLEwavelength durch die Variable wavelength ersetzt wird end foreach wavelength ( 10000 12000 ) set template=/athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection/uvspec_wavelength$wavelength.inp set outdir=/athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection foreach tau ( 0.1 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10) echo ... tau = $tau gawk '{gsub("VARIABLEtau","'$tau'"); print}' $template > /athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection/uvspec_wavelength$wavelength""_tau$tau.inp uvspec < /athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection/uvspec_wavelength$wavelength""_tau$tau.inp >/athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection/uvspec_wavelength$wavelength""_tau$tau.out end end exit 0 **uvspec input file (used by the loop):** # specify libRadtran data path data_files_path /athome/hube_is/libRadtran-1.5-beta/data # Location of atmospheric profile file. atmosphere_file us-standard mol_abs_param lowtran albedo 0 # Surface albedo rte_solver disort2 # Radiative transfer equation solver wavelength VARIABLEwavelength # Wavelength range [nm] ic_file 1D /athome/hube_is/libRadtran_exercises/Lecture_exercises/20_Cirrus_cloud_Detection/ic_cirrus.dat ic_modify tau set VARIABLEtau #ic_properties baum #QUESTION: is it better to use Baum than the default setting Fu? #(for some reason Baum didn't work with my uvspec) #ic_properties_interpolate source thermal # Emission from Earth surface is source of radiation zout toa # output for top of atmosphere #umu 1 #phi 0