################################################################################ # # # This is a demo/template file. The USER is supposed to MODIFY it according # # to his/her needs (better, make a copy of it and adapt the copy). # # # ################################################################################ # # # This is a template file for doing scattering calculations of passive # # measurements using the Fixed Order of Scattering solver. It is for a 1D # # atmosphere. # # The file is supposed to be used as an include file in a full radiative # # transfer case. Atmospheric scenario, surface and sensor settings, etc. have # # to be done in the calling file before this file is included (hence, # # executed). # # This file requires the following input parameters: # # atmosphere_dim as the WSV # # f_grid as the WSV # # iy_unit as the WSV # # stokes_dim as the WSV # # p_grid as the WSV # # z_field as the WSV # # t_field as the WSV # # vmr_field as the WSV # # pnd_field as the WSV # # scat_data as the WSV # # cloudbox_on as the WSV # # cloudbox_limits as the WSV # # abs_species as the WSV # # z_surface as the WSV # # t_surface as the WSV # # rte_pos as the WSV # # allzang (Vector) Sensor viewing angles # # bad_partition_functions_ok (Index) Partition function handling flag # # # # It provides following OUTPUT (written to file): # # iy as the WSV # # radiance; units selectable # # iy_aux as the WSV # # auxiliary output parameters (particularly of along-the-path # # type), selectable variety # # # # Selections and settings to be done are between the flags START USER SETTINGS # # and END USER SETTINGS. The rest of the file shall not be modified, # # particularly settings marked with 'do NOT modify'. # # # # This template does not makes use of further include files. # # # ################################################################################ Arts2 { # do NOT modify IndexCreate( scatorder ) ################################################################################ # START USER SETTINGS - Modify settings according to you wishes # ################################################################################ # --- # Scattering order # --- # Currently implemented are scatorder = # 0 - no scattering; just absorption/emission by particles is considered # 1 - atmospheric single scattering is considered # --- IndexSet( scatorder, 1 ) # --- # Define (auxiliary) data output # --- # Uncomment all parameters you want as auxiliary output (i.e., in addition to # total radiance/brigthness temperature). For meaning of each paramters see # online-doc of the WSM selected for iy_main_agenda (here: iyFOS). # NOTE: Last element NOT to be followed by comma. # NOTE: Only use "Absorption, species X" up to the number of entries in # abs_species (clearsky calculations in Venus have at maximum 19 abs_species # entries, i.e. highest valid index is 18). # NOTE: Only use "PND, type Y" up to the number of entries in scat_data. # Particle calculations have at maximum 10 particle entries, i.e., highest # valid index is 9). # --- ArrayOfStringSet( iy_aux_vars, [ "Pressure", "Temperature", # "VMR, species X", # X=0..18 "Absorption, summed", # "Absorption, species 0", # "Absorption, species 1", # "Absorption, species 2", # "Absorption, species 3", # "Absorption, species 4", # "Absorption, species 5", # "Absorption, species 6", # "Absorption, species 7", # "Absorption, species 8", # "Absorption, species 9", # "Absorption, species 10", # "Absorption, species 11", # "Absorption, species 12", # "Absorption, species 13", # "Absorption, species 14", # "Absorption, species 15", # "Absorption, species 16", # "Absorption, species 17", # "Absorption, species 18", # "PND, type 0", # "PND, type 1", # "PND, type 2", # "PND, type 3", # "PND, type 4", # "PND, type 5", # "PND, type 6", # "PND, type 7", # "PND, type 8", # "PND, type 9", # "Radiative background", "iy", "Optical depth" ] ) ################################################################################ # END USER SETTINGS # ################################################################################ # only MODIFY if you know, what you are doing (else the default setting should # be fine). ##### # setting agendas needed for RT calc (there are alternative settings, though) ##### Copy( iy_space_agenda, iy_space_agenda__CosmicBackground ) Copy( iy_surface_agenda, iy_surface_agenda__UseSurfaceRtprop ) # FOS specific settings ##### ReadXML(fos_scatint_angles, "scattering/fosangles_360.xml") VectorSet(fos_iyin_za_angles,[0,30,50,80,90,91,92,93,94,95,105,110,130,150,180]) # do NOT modify ##### # use FOS scattering module ##### AgendaSet(iy_main_agenda) { Ignore(nlte_field) Ignore(iy_id) iyFOS(fos_n=scatorder) } # no Jacobians ##### jacobianOff # the checks necessary for full RT calc ##### atmfields_checkedCalc( bad_partition_functions_ok=bad_partition_functions_ok ) atmgeom_checkedCalc scat_dataCalc cloudbox_checkedCalc propmat_clearsky_agenda_checkedCalc # and the RT calc ##### NumericCreate( za ) AgendaCreate( forloop_agenda_angles ) AgendaSet( forloop_agenda_angles ) { Extract( za, allzang, forloop_index ) rte_losSet( za=za, aa=za ) Print( rte_los, 0 ) iyCalc WriteXMLIndexed( in=iy, file_index=forloop_index ) WriteXMLIndexed( in=iy_aux, file_index=forloop_index ) } IndexCreate( nangles ) nelemGet( nangles, allzang ) IndexStepDown( nangles, nangles ) Copy( forloop_agenda, forloop_agenda_angles ) ForLoop( forloop_agenda, 0, nangles, 1 ) }