Skip to content

Introduce a Dedicated ConformationDAG Stage #362

@harryswift01

Description

@harryswift01

Goal

Move conformational state construction out of the static LevelDAG node list and into a dedicated ConformationDAG stage, while preserving the current serial behaviour.

Background

The parent issue identifies conformational/dihedral analysis as trajectory-dependent work that currently runs as part of static setup. Before changing the algorithm, the workflow should first represent this as its own stage:

LevelDAG
  ├── StaticDAG
  ├── ConformationDAG
  └── FrameDAG / FrameScheduler

Scope

  • Add a new ConformationDAG class.

  • Update LevelDAG so the execution order becomes:

    1. static structural setup
    2. conformational state construction
    3. frame covariance/neighbour execution
  • Remove conformational state construction from the static DAG node list.

  • Initially keep ConformationDAG as a wrapper around the existing ConformationStateBuilder.

  • Preserve the existing output contract:

    • shared_data["conformational_states"]
    • shared_data["flexible_dihedrals"]
  • Do not introduce chunking or Dask in this sub-issue.

Metadata

Metadata

Assignees

Labels

Type

No fields configured for Task.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions