Skip to content

Add a convenience function for ixmp.Scenario.solve() functionality #120

@glatterf42

Description

@glatterf42

Solving a Run with GAMS requires three steps, essentially:

  1. Write the data of Run to a format that GAMS can use
  2. Invoke the GAMS solve mechanism
  3. Read the solution data back into Run

We currently keep this functionality separate, i.e. we have one function for each of these steps. This allows for easier testing and understanding what these individual steps do.
However, during today's MESSAGE meeting, we received the request to provide a convenience function combining all of these steps into one function - just like ixmp.Scenario.solve() does.
Otherwise, people are afraid the workflow of quickly solving a Run becomes too complicated.

Another way out would likely be translating more GAMS code in message_ix to linopy (or similar), thus eliminating the requirement to read and write GAMS files, but this is unlikely to happen soon enough.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions