_uvspec() 
{
    local cur prev opts
    COMPREPLY=()
    cur="${COMP_WORDS[COMP_CWORD]}"
    prev="${COMP_WORDS[COMP_CWORD-1]}"
    opts="absorption aerosol_angstrom aerosol_default aerosol_files aerosol_gg_file aerosol_haze aerosol_moments_file aerosol_no_scattering aerosol_refrac_file aerosol_refrac_index aerosol_scale_ssa aerosol_scale_tau aerosol_set_gg aerosol_set_ssa aerosol_set_tau aerosol_set_tau550 aerosol_season aerosol_sizedist_file aerosol_species_file aerosol_species_library aerosol_ssa_file aerosol_tau_file aerosol_visibility aerosol_vulcan albedo albedo_file albedo_library albedo_map altitude altitude_map angstrom atmosphere_file atm_z_grid brightness ch4_mixing_ratio cloud_fraction_file cloud_fraction_map cloud_overlap co2_mixing_ratio correlated_k cox_and_munk_pcl cox_and_munk_pcl_map cox_and_munk_sal cox_and_munk_sal_map cox_and_munk_solar_wind cox_and_munk_u10 cox_and_munk_u10_map cox_and_munk_uphi data_files_path day_of_year deltam dens_column dens_file ECHAM_atmosphere_file ECHAM_clouds_file ECHAM_sza emissivity_map ECMWF_atmosphere_file ECMWF_levels_only ECMWF_ic_file ECMWF_ic_reff ECMWF_wc_file ECMWF_wind_file f11_mixing_ratio f12_mixing_ratio f22_mixing_ratio filter_function_file fisot flexstor fu_h2o_continuum h2o_mixing_ratio h2o_precip header heating_rate ichap ic_cloudcover ic_file ic_files ic_fu_tau ic_fu_reff ic_habit ic_ipa_files ic_layer ic_no_scattering ic_properties ic_properties_interpolate ic_saturate ic_scale_gg ic_scale_ssa ic_set_gg ic_set_ssa ic_set_tau ic_set_tau550 include latitude longitude mc_absorption mc_actinic mc_albedo_file mc_ambrals_file mc_azimuth_old mc_backward mc_backward_output mc_backward_writeallpixels mc_backward_writeback mc_basename mc_bcond mc_cloud_grid mc_elevation_file mc_delta_scaling mc_emission mc_escape mc_escape_ddis mc_heating mc_hiddenline mc_icloud_file mc_ipa mc_lidar mc_lidar_abserr mc_lidar_file mc_maxscatters mc_momcld_file mc_pcld_file mc_photons mc_photons_file mc_radial_pathlength mc_radial_pathlength_dt mc_rpv_file mc_rpv_type mc_sample_grid mc_randomseed mc_readrandomseed mc_readrandomstatus mc_relerr mc_sensordirection mc_sensorposition mc_spherical mc_std mc_surface_reflectalways mc_surfaceparallel mc_temperature_file mc_truncate mc_visualize mc_wcloud_file molecular_tau_file n2o_mixing_ratio no_absorption no_molecular_absorption no_rayleigh no_scattering no2_column_du no2_column_moleccm-2 nscat nrefrac nstr o2_mixing_ratio o3_crs optimize_fortran output output_format output_user ozone_column p_out phi phi0 polradtran_aziorder polradtran_max_delta_tau polradtran_nstokes polradtran_quad_type polradtran_src_code pressure pressure_out prndis quiet radiosonde radiosonde_levels_only rayleigh_crs rayleigh_depol rayleigh_tau_file reflectivity refractive_index_file reverse rh_file rpv_file rpv_k rpv_rho0  rpv_theta rpv_sigma rpv_t1 rpv_t2 rpv_scale rpv_library rte_solver satellite_geometry satellite_pixel slit_function_file solar_file source spline spline_file surface_temperature surface_temperature_map surface_type surface_type_map sza sza_file thermal_bands_file thermal_bandwidth time time_interpolate time_interval transmittance transmittance_wl_file umu verbose wavelength wavelength_index wc_cloudcover wc_file wc_no_scattering wc_files wc_ipa wc_ipa_files wc_layer wc_properties wc_properties_interpolate wc_saturate wc_scale_gg wc_scale_ssa wc_set_gg wc_set_ssa wc_set_tau wc_set_tau550 wvn  zout  zout_sea zout_sur z_interpolate zout_interpolate"

    if [[ ${cur} == * ]] ; then
        COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
        return 0
    fi
}
complete -F _uvspec uvspec
