dsavransky / EXOSIMS

Simulator for exoplanet direct imaging space missions
BSD 3-Clause "New" or "Revised" License
25 stars 35 forks source link

adding automated input/output spec checking #306

Closed dsavransky closed 1 year ago

dsavransky commented 1 year ago

Describe your changes

Adding automated input/output spec checking to MissionSim. This required updating how TargetList stored the remains of dropped StarCatalogs (previously just the original entry in modules in the input specification, now the actual class of the StarCatalog object), and updating SurveySimulation.genOutSpec to also include MissionSim's outspec.

Once all modules are instantiated in MissionSim, all arguments to all modules (and all of their base classes) are collected into a single list (functionality provided by new keyword_fun util). This list is then compared against both the input specification and outspec and warnings are generated if there are unused inputs or uncaptured keywords in the output. Checking can be toggled off with new input checkInputs.

Type of change

Reference any relevant issues

N/A

Checklist before requesting a review