# Using gnssro\_bufr2ioda with 2 input files

**URL:** <https://forums.jcsda.org/t/using-gnssro-bufr2ioda-with-2-input-files/288>\
**Category:** JEDI\
**Created:** [March 16, 2022, 11:22pm UTC](https://forums.jcsda.org/t/using-gnssro-bufr2ioda-with-2-input-files/288 "2022-03-16T23:22:32Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![mjm](https://avatars.discourse-cdn.com/v4/letter/m/c6cbf5/32.png) [@mjm](https://forums.jcsda.org/u/mjm)\
**Post date:** [March 16, 2022, 11:22pm UTC](https://forums.jcsda.org/t/using-gnssro-bufr2ioda-with-2-input-files/288/1 "2022-03-16T23:22:32Z")

</div>

Hi JEDI Team,

It appears that the gnssro\_bufr2ioda utility only accepts one input file. This is not made clear in the limited documentation but my experimenting suggest it. Please correct me if I am mistaken.

This is problematic for a 03 UTC DA run I am trying to attempt with FV3-JEDI as I need data from two GNSSRO BUFR files to get the data on both sides of the 03 UTC center time. In my case:  
gdas.t00z.gpsro.tm00.bufr\_d.nr  
gdas.t06z.gpsro.tm00.bufr\_d.nr

This could also be a problem for other situations, e.g., someone doing an experiment centered at 00 UTC but with a wide DA window of say +/- 4 hours. To be clear this is not the specific issue that is hindering my work.

Is there a workaround for this or maybe I am approaching things incorrectly?

Thanks,  
Michael

---

<div class="post-metadata">

**Author:** ![hailingz](https://avatars.discourse-cdn.com/v4/letter/h/e9a140/32.png) [@hailingz](https://forums.jcsda.org/u/hailingz)\
**Post date:** [March 23, 2022, 3:09pm UTC](https://forums.jcsda.org/t/using-gnssro-bufr2ioda-with-2-input-files/288/2 "2022-03-23T15:09:54Z")

</div>

Hi Michel, I guess you can “cat” the two or more bufr files to one before using the converter. right?  
Thanks, Hailing

---

<div class="post-metadata">

**Author:** ![mjm](https://avatars.discourse-cdn.com/v4/letter/m/c6cbf5/32.png) [@mjm](https://forums.jcsda.org/u/mjm)\
**Post date:** [March 24, 2022, 12:00am UTC](https://forums.jcsda.org/t/using-gnssro-bufr2ioda-with-2-input-files/288/3 "2022-03-24T00:00:24Z")

</div>

Thanks for the suggestion Hailing.

I was actually contacted privately by some of your colleagues and they suggest one option using the yaml file where I just duplicate the “obs space” section so that both files I needed were called. That worked for me and I am including what I did here for future users who might have this issue and use it as their solution:

```auto
  # Observation operators
  # ---------------------
  observations:
  - obs space:
      name: GnssroBndNBAM
      obsdatain:
        obsfile: input/obs/ioda_nomads_gnssro_PT6H_20220203_0000Z_v2.nc4
        obsgrouping:
          group variables: ["record_number"]
          sort variable: "impact_height"
          sort order: "ascending"
      obsdataout:
        obsfile: run-3denvar/hofx/gnssro_hyb-3dvar-gfs_20220203_0000Z.nc4
      simulated variables: ["bending_angle"]
    obs operator:
      name: GnssroBndNBAM
      obs options:
        sr_steps: 2   
        vertlayer: mass
        use_compress: 1
        super_ref_qc: NBAM
    obs filters:
     - filter: Domain Check 
       filter variables:
       - name: ["bending_angle"]
       where:
       - variable:
           name: impact_height@MetaData
         minvalue: 0
         maxvalue: 50000
     - filter: Bounds Check
       filter variables:
       - name: ["bending_angle"]
       where:
       - variable:
           name: occulting_sat_id@MetaData
         is_in: 3-5
       test variables:
       - name: impact_height@MetaData
       minvalue: 8000
     - filter: ROobserror
       filter variables:
       - name: bending_angle
       errmodel: NBAM
     - filter: Background Check RONBAM
       filter variables:
       - name: bending_angle

  - obs space:
      name: GnssroBndNBAM
      obsdatain:
        obsfile: input/obs/ioda_nomads_gnssro_PT6H_20220203_0600Z_v2.nc4
        obsgrouping:
          group variables: ["record_number"]
          sort variable: "impact_height"
          sort order: "ascending"
      obsdataout:
        obsfile: run-3denvar/hofx/gnssro_hyb-3dvar-gfs_20220203_0600Z.nc4
      simulated variables: ["bending_angle"]
    obs operator:
      name: GnssroBndNBAM
      obs options:
        sr_steps: 2   
        vertlayer: mass
        use_compress: 1
        super_ref_qc: NBAM
    obs filters:
     - filter: Domain Check 
       filter variables:
       - name: ["bending_angle"]
       where:
       - variable:
           name: impact_height@MetaData
         minvalue: 0
         maxvalue: 50000
     - filter: Bounds Check
       filter variables:
       - name: ["bending_angle"]
       where:
       - variable:
           name: occulting_sat_id@MetaData
         is_in: 3-5
       test variables:
       - name: impact_height@MetaData
       minvalue: 8000
     - filter: ROobserror
       filter variables:
       - name: bending_angle
       errmodel: NBAM
     - filter: Background Check RONBAM
       filter variables:
       - name: bending_angle

```
