Skip to content

AtovsObsBuilder Needs to Override Methods #95

Description

@rmclaren

The AtovsObsBuilder class in radiance_atovs_obs_builder.py should override the create_obs_file and create_obs_group methods with the appropriate input arguments (include the two seperate bufr files as seperate inputs instead of just one input).

ex (my recomendations):

    def create_obs_file(self, input_nmfd, input_rars, output, type='netcdf', append=False)
        input_dict = {NMFD: input_nmfd,
                             RARS: input_rars}        

        comm = bufr.mpi.Comm("world")
        self.log.comm = comm

        # Create observation container
        container = self.make_obs(comm, input_dict )

        # Same as Bufr-Query Obs-Builder

        ...

    def create_obs_group(self, input_nmfd, input_rars, env):        
         input_dict = {NMFD: input_nmfd,
                              RARS: input_rars}   
        
        # Same as ObsBuilder but you can ignore all the category and caching stuff (can be much simpler).
        ...

NOTE: Basically copy the versions in the ObsBuilder base class and then modify as necessary. The create_obs_group function can be much simpler if categories are not used for these data types (no splits defined in YAML file).

The main function (and ioda) will automatically reflect this change in those arguments so you can specify them directly on the command line or the IODA configuration files.

Please, Please get rid of the wonky workaround where you are giving it a JSON file... This kinda defeats the point.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions