ReFRACtor/ABSCO

Update of RC_utils causes error in ABSCO_compute.py TAPE7 usage

Opened this issue · 4 comments

The update of common/ to fix issues with RC_utils.py had caused other issues. ABSCO_compute.py needs to be updated since the structure of the dictionary returned by read_TAPE7 has changed. I now get this error:

Traceback (most recent call last):
  File "/home/mcduffie/refractor/absco/run_LBLRTM_ABSCO.py", line 108, in <module>
    kObj.calcABSCO(mol)
  File "/tb/sandbox2/mcduffie/refractor/absco/ABSCO_compute.py", line 709, in calcABSCO
    self.doXS[mol][iBand] else t7Dict['vmr'][self.iMol][0]
KeyError: 'vmr'

I think this change needs to be made in ABSCO_compute.py:

Change

          molDen = t7Dict['vmrXS'][0][0] if \
            self.doXS[mol][iBand] else t7Dict['vmr'][self.iMol][0]

to

          molDen = t7Dict['densities'][self.iMol][0]

Can you please confirm?

@mcduffie that works for line-by-line molecules, but not cross section species. with 82d0b6a, i extract both densities. the change needed to happen, because readXS is only for HITRAN ASCII files.

i still have to test. i used your notebook to generate a config file, but then i realized there are no XS species in it. i'll try to think of a good test case, but you are welcome to try out the commit in the meantime.

@mcduffie i just tested on H2O and HNO3 in the 350-400 cm-1 spectral range and discovered i needed to make some more small changes to RC_utils.readTAPE7 that have been committed and linked at c3370e4. now, i do generate an ABSCO LUT for each molecule/species, i.e., an LBL molecule and XS

@mcduffie have you tried the most recent commits? i know with the holidays and conferences you may have not tested on your end, but i just wanted you to know it's still on my radar

It appears to be working as expected, at least for a NIR case. I haven't tried a case that uses xsections.