Engineering Database Interface

romancal.lib.engdb.engdb_tools Module

Access the Roman Engineering Mnemonic Database.

The engineering mnemonics are provided by multiple services, all of which require a level of authentication.

For non-operational use, the providing service is through the MAST AUI website (TBD).

Authorization can be requested through https://auth.mast.stsci.edu/ site.

Interface

The primary entry point is the function romancal.lib.engdb_tools.engdb_service. This function returns a romancal.lib.engdb_lib.EngdbABC connection object. Using this object, values for a mnemonic covering a specified time range can be retrieved using the get_values() method.

By default, only values inclusively between the time end points are returned. Depending on the frequency a mnemonic is updated, there can be no values. If values are always desired, the nearest, bracketing values outside the time range can be requested.

List of available services can be retrieved using engdb_tools.AVAILABLE_SERVICES

The primary service is the “mast” service. See engdb_mast for details.

Warning

Many mnemonics are updated very quickly, up to 16Hz. When in doubt, specify a very short time frame, and request bracketing values. Otherwise, the request can return a very large amount of data, risking timeout, unnecessary memory consumption, or access restrictions.

Examples

The typical workflow is as follows:

from romancal.lib.engdb.engdb_tools import engdb_service

service = engdb_service()  # By default, will use the public MAST service.

values = service.get_values("sa_zattest2", "2021-05-22T00:00:00", "2021-05-22T00:00:01")

Functions

engdb_service([service])

Provide access to the Roman Engineering Database.

romancal.lib.engdb.engdb_mast Module

Access the Roman Engineering Mnemonic Database through MAST.

Classes

EngdbMast([eng_base_url, token])

Access the Roman Engineering Database through MAST.

romancal.lib.engdb.engdb_lib Module

Engineering DB common library.

Classes

EngDB_Value(obstime, value)

Create new instance of EngDB_Value(obstime, value)

EngdbABC(**service_kwargs)

Access the Roman Engineering Database.