====== Carbon Monitoring Satellite - CarbonSat ======
The primary mission objective of
[[http://www.iup.uni-bremen.de/carbonsat/|CarbonSat]] is the
“quantification and
monitoring of CO2 and CH4 sources and sinks at
the regional scale for i) a better understanding of the processes that
control the Carbon Cycle dynamics and ii) an independent estimate of
local greenhouse gas emissions (fossil fuel, geological CO2
and CH4 , etc.) in the context of international
treaties”((Buchwitz, M., Bovensmann, H., Reuter, M., Geilowski, K.,
and Burrows, J. P.: Carbon Monitoring Satellite - CarbonSat, Mission
Requirements Document (MRD), Tech. Rep. IUP-CS-MRD-0001, Version 3.2,
IUP, University of Bremen, 2010.)). To measure CO2 and
CH4 knowledge about the O2 column is required.
This may be obtained by measuring in the strongly absorbing
O2-A band.
In this example we show how ''uvspec'' may be used to simulate the TOA
radiance in the O2-A band representative for CarbonSat. It
is also shown how aerosols, surface albedo and rotational Raman
scattering may be included in the simulation.
====== Spectral resolution ======
The requirement for the spectral resolution in the O2-A
band for CarbonSat is between 0.03-0.045 nm. The example thus
calculates the top of the atmosphere (TOA) radiance
at higher spectral resolution and convolves with an appropriate
spectral response function. This requires a solar spectrum with high
spectral resolution. Here we use a spectrum with 0.01 nm
resolution((Fontenla, J., White, O. R., Fox, P. A., Avrett, E. H., and
Kurucz, R. L.: Calculation of solar irradiances. I. Synthesis of the
solar spectrum, The Astrophysical Journal, 518, 480-499, 1999.)).
We use units of photons/nm/s/m2 in order to be
able to include rotational Raman scattering. The following uvspec
option specifies the solar source:
source solar ./kurucz_735.0_790.0.dat_vac_0.01_0.01
The wavelengths to be covered are set as follows:
wavelength 756 776
====== O2-A band absorption ======
High resolution absorption cross sections of the appropriate gases are
needed in the spectral region of interest. We use the
[[http://www.sat.ltu.se/arts/|ARTS-model]] to calculate
high-resolution absorption optical depth profiles due to O2 and
H2O.
The arts input file looks as follow.
#DEFINITIONS: -*-sh-*-
Arts2 {
INCLUDE "general"
INCLUDE "continua"
# Create some variables:
NumericCreate(fmin)
NumericCreate(fmax)
NumericCreate(wvl_min)
NumericCreate(wvl_max)
VectorCreate(wvl_grid)
# Set minimum and maximum wavelength
NumericSet(wvl_min, 0.7350e-6) # 735 nm
NumericSet(wvl_max, 0.7910e-6) # 791 nm
VectorNLinSpace( wvl_grid, 5601, wvl_max, wvl_min ) # 735-791
# Convert to Hz, maximum wavelength = minimum frequency:
FrequencyFromWavelength(f_grid, wvl_grid)
FrequencyFromWavelength(fmax, wvl_min)
FrequencyFromWavelength(fmin, wvl_max)
# Read HITRAN data
abs_linesReadFromHitran2004( abs_lines,
"/home/arve/Projects/data/HITRAN/HITRAN04.par",
fmin,
fmax)
# Set species to be considered in line-by-line calculation
SpeciesSet(abs_species,
[
"H2O, H2O-SelfContCKDMT100, H2O-ForeignContCKDMT100",
"O2, O2-CIAfunCKDMT100"
]
)
# This separates the lines into the different tag groups and creates
# the workspace variable `abs_lines_per_species':
abs_lines_per_speciesCreateFromLines
# Atmospheric profiles
AtmRawRead( t_field_raw, z_field_raw, vmr_field_raw, abs_species,
"/home/arve/arts/arts-xml-data-1.1.31/atmosphere/fascod/midlatitude-summer" )
# Extract pressure grid from atmosphere files (this is the vertical
# coordinate for all calculations, can be specified as you like)
p_gridFromAtmRaw(p_grid, z_field_raw)
# Now interpolate all the raw atmospheric input onto the pressure
# grid and create the atmospheric variables `t_field', `z_field', `vmr_field'
AtmFieldsCalc
# Initialize the input variables of abs_coefCalc from the Atm fields:
AbsInputFromAtmFields
abs_h2oSet
# Non-linear species
SpeciesSet( abs_nls,[ ])
# Perturbation if lookup-table should be created that can be used for a wide range of atmospheric conditions
VectorSet( abs_t_pert, [] )
VectorSet( abs_nls_pert, [] )
# Calculate absorption field:
IndexSet(f_index, -1) # calculate all frequencies
abs_fieldCalc
# Write molecular_tau_file for libRadtran
WriteMolTau ( f_grid, z_field, abs_field, atmosphere_dim, "carbonsat-735-791.nc" )
}
The molecular optical depth file covers the O2-A
band. It is input to uvspec with the following line:
mol_tau_file abs carbonsat-735-791.nc
====== Atmosphere ======
The atmosphere density file must contain the same information for both
arts and uvspec. That is, the same molecular gas densities at the same
vertical resolution. Arts have several atmospheric models in the
''arts-xml-data/atmosphere'' directory. Here we use the mid-latitude
summer atmosphere model.
atmosphere_file ./afglms_95.dat
====== Geometry and surface ======
The solar zenith angle must be specified.
sza 50.0
Furthermore we assume the instrument is nadir viewing and of course is
at TOA.
umu 1 # Looking down
zout toa # top of atmosphere
And we assume a spectrally flat surface albedo
albedo 0.10
====== Rotational Raman scattering ======
Rotational Raman scattering may be included by adding the following
line. Note that this will increase the computing time by about a
factor of 640.
raman
====== Miscellanoues ======
In addition to the above input we need to specify where uvspec may
find additional data files, what radiative transfer solver to use
data_files_path /home/arve/develop/libRadtran/data/
number_of_streams 16
rte_solver disort
As output we want solar irradiance (''edir''), upward irradiance (''eup'') and
nadir radiance (''uu'' as specified by ''umu'' above) as a function
of wavelength
output_user lambda edir eup uu
And we turn of any warning messages.
quiet # Turn of messages.
====== Aerosols ======
We start by including default aerosols((Shettle, E.: Models of
aerosols, clouds and precipitation for atmospheric propagation
studies, in: Atmospheric propagation in the uv, visible, ir and
mm-region and related system aspects, no. 454 in AGARD Conference
Proceedings, 1989.)).
aerosol_default
We then modify some of the default values as follows:
aerosol_vulcan 1 # Aerosol type above 2km
aerosol_haze 6 # Aerosol type below 2km
aerosol_visibility 10.0 # Visibility
aerosol_file tau AERO_TAU.DAT # File with aerosol optical depth profile
See the
[[http://www.libradtran.org/doc/libradtran.pdf|libRadtran User's
Guide]] for more information about how to specify aerosol properties.
====== Complete uvspec input file ======
With all this in place the complete uvspec input file is (with some
comments included)
source solar ./kurucz_735.0_790.0.dat_vac_0.01_0.01
wavelength 756 776
mol_tau_file abs carbonsat-735-791.nc
atmosphere_file ./afglms_95.dat
sza 50.0
umu 1
zout toa
albedo 0.10
data_files_path /home/arve/develop/libRadtran/data/
number_of_streams 16
rte_solver disort
output_user lambda edir eup uu
quiet
#raman # Uncomment to include rotational Raman scattering
aerosol_default
aerosol_vulcan 1 # Aerosol type above 2km
aerosol_haze 6 # Aerosol type below 2km
aerosol_visibility 10.0 # Visibility
aerosol_tau_file AERO_TAU.DAT
====== Note on input directory and file names ======
Note that the input file contains references to other files with input
data. The file path to these files must be correctly set in order to
run this example. As the paths are set they reflect my set up.
====== Results ======
uvspec is run with the following command (assuming the input is stored
in the file ''UVSPEC_CARBONSAT.INP'')
uvspec < UVSPEC_CARBONSAT.INP > UVSPEC_CARBONSAT_NC_noraman_aero.OUT
The output from uvspec is at 0.01 nm resolution. We want it at CarbonSat
resolution. This is achieved by convolution by a spectral response
function with FWHM of 0.03 nm. We assume the spectral response to
Gaussian (try 'make_slitfunction -h') and
generate it with the command:
make_slitfunction -f 0.03 -r 0.001 -t g > slit_function_0.03_0.001
The convolution is carried out with the libradtran ''conv'' tool.
conv UVSPEC_CARBONSAT_NC_noraman_aero.OUT slit_function_0.03_0.001 > UVSPEC_CARBONSAT_NC_noraman_aero.OUTc_0.3
The TOA radiance for the full wavelength region covered by the
O2-A band,is shown in the Figure below at high, 0.01
nm spectral resolution with (green line) and without (red line)
rotational Raman
scattering. The radiance at CarbonSat resolution is in blue and
includes rotational Raman scattering. The results below do not include
aerosols.
{{:user_area:carbon_monitoring_satellite_carbonsat:toa_spectra_noaero.png?800|}}
The radiance for the O2-A band with and without
aerosols is shown in the Figure below for CarbonSat resolution. Both
spectra include rotational Raman scattering. Note that the aerosol
results will change depending on aerosol type, aerosol size
distribution and concentration.
{{:user_area:carbon_monitoring_satellite_carbonsat:toa_spectra_aero.png?800|}}
Rotational Raman scattering was included in the spectra above. The
filling-in for no aerosols and with aerosols are shown below.
{{:user_area:carbon_monitoring_satellite_carbonsat:toa_fi_aero.png?800|}}
====== Input files ======
The various input and output files discussed above are available as a
gzipped tar ball
{{:user_area:carbon_monitoring_satellite_carbonsat:carbonsat_example.tgz|}}.