Skip to content

Enable ImSim to run from Sky rather than/in addition to Instance Catalogs #222

Description

@danielsf

Given the resources (compute, storage, and personnel hours) devoted to InstanceCatalog generation during DC2, I would like to explore the possibility of allowing ImSim to run directly on the object catalogs (the equivalent of what cosmoDC2 was for DC2), without having to provide separate, externally generated InstanceCatalogs. My concerns with relying on InstanceCatalogs are as follows:

  • The way InstanceCatalogs work, for each object in each pointing you provide position, brightness, and shape information. This means that you end up producing one row per source per epoch, even for perfectly static sources. This seems inefficient. I would like to entertain a scheme in which ImSim queries the object catalogs for the usual information (position, brightness, shape) for static sources and and also accepts variability parameters for variable/moving sources and in which ImSim is smart enough to convert those variability parameters into the proper phase for a light curve. Presumably, we could use a similar scheme for our supernova model, i.e. rather than providing separate SED text files for every supernova at every stage in its evolution, we can just feed the SALT2 parameters directly to ImSim and have ImSim convert that into the brightness and color information it needs to produce an image.

  • At several points during DC2 production, we ran up against limits in disk space and inode allocation when generating InstanceCatalogs. It is possible that the coming transition to binary InstanceCatalogs will make the question of storage a non-issue. The inode problem will remain, though.

  • InstanceCatalog generation is just one more step at which we are vulnerable to over-specialization (the fact that only one or two people know how to run each step in our pipeline). The fewer steps there are to image simulation with ImSim, the less likely we will be to become dependent on having the right set of people free when we need to burn CPU hours RIGHT NOW (as we did at the end of 2018).

After off-line conversations with @jchiang87 and @cwwalter, I believe we are converging on a system in which ImSim still uses something like an InstanceCatalog, but in which ImSim also provides the tools to convert "object catalogs" (Jim's term for the cosmoDC2+stars+variability catalogs that were inputs to InstanceCatalogs in DC2) into InstanceCatalogs. Users who want to run ImSim on NERSC can just chain the InstanceCatalog generation and image generation steps together into one batch job. Users who want to run remotely can generate their InstanceCatalogs at NERSC (or wherever the object catalogs live) and export them to their remote systems where they will run ImSim. This scheme will make ImSim effectively independent of CatSim. This means we will need to address how to provide the variability models and astrometric models for the Earth's motion that are currently provided by CatSim.

I am opening this issue so that the broader community can comment on this strategy.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions