Skip to content

EntityCore represents the multi-dimensional index of a Simulation (or Coordinate i.e. CircuitExtraction) within a Campaign #462

@james-isbister

Description

@james-isbister

Description

Currently there is no way of knowing the position (or multi-dimensional index) of a Simulation within the multi-dimensional grid of a SimulationCampaign. This is required, for example, when staging a SimulationCampaign into a form which can be consumed by BlueETL. Each simulation needs to be assigned an index and essentially a multi-dimensional index when the bbp-workflow representation of the campaign is created (the input to BlueETL).

Currently this would have to be "inferred" by finding the index of a the Simulations scan_parameters within the SimulationCampaign's scan_parameters.

The problems with this are:

  • There is not necessarily a bijection between the two - for example if a user specifies the same value along 1 dimension of the scan.
  • Sometimes the "value" for a single Simulation in one dimension is a complex datatype like a list, tuple or dictionary, so the equivalence tests to find the index of the Simulation within the SimulationCampaign's scan_parameters becomes messy
  • It is painful for different users to have to do this manually in different places

An example proposal exists here, but best implementation to be discussed: #441

It would need to be applied

Assets

None

Technical implementation & specs

To be discussed

Describe alternatives considered

None that I can think of

Screenshots

None

Additional context

None

Acceptance criteria

  • EntityCore represents the multi-dimensional index of a Simulation (or Coordinate i.e. CircuitExtraction) within a Campaign (if agreed after discussions)

Right panel fields

Assignee

Will be added by default (the Product Owner)

Labels

E.g. You can add 'planning' (for QA discussion), 'up next?' (for resource request), or other as applicable

Type

Feature

Projects

Select 'OBI 2025-' project (plus others as relevant)
Priority: P0 (higher), P1, or P2 (lower)
Time estimate: In days

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions