Dask Trajectory Build Helper
GitHub Link to Code.
DaskMDTrajectory Builder - Complex initialization logic extraction.
Handles the complex initialization process for DaskMDTrajectory instances, including cache management, Zarr store setup, and Dask array initialization.
- class mdxplain.trajectory.helper.dask_trajectory_helper.dask_trajectory_build_helper.DaskMDTrajectoryBuildHelper
Builder class for creating and initializing DaskMDTrajectory instances.
Handles the complex initialization process by breaking it down into manageable steps while maintaining full compatibility with the original API.
- __init__() None
Initialize DaskMDTrajectoryBuildHelper.
Parameters
None
Returns
- None
Initializes builder instance
- initialize_instance(instance: DaskMDTrajectory, trajectory_file: str, topology_file: str | None = None, zarr_cache_path: str | None = None, chunk_size: int = 1000, n_workers: int | None = None) None
Initialize a DaskMDTrajectory instance with all required components.
Parameters
- instanceDaskMDTrajectory
Instance to initialize
- trajectory_filestr
Path to trajectory file (.xtc, .dcd, etc.)
- topology_filestr, optional
Path to topology file (.pdb, .gro, etc.)
- zarr_cache_pathstr, optional
Custom path for Zarr cache file
- chunk_sizeint, default=1000
Number of frames per chunk (optimized for performance)
- n_workersint, optional
Number of parallel workers (defaults to CPU count)
Returns
- None
Initializes instance in-place
Examples
>>> builder = DaskMDTrajectoryBuildHelper() >>> instance = DaskMDTrajectory.__new__(DaskMDTrajectory) >>> builder.initialize_instance(instance, 'traj.xtc', 'topology.pdb')
- initialize_from_mdtraj(instance: DaskMDTrajectory, mdtraj: md.Trajectory, zarr_cache_path: str | None = None, chunk_size: int = 1000, n_workers: int | None = None) None
Initialize DaskMDTrajectory instance from MDTraj trajectory object.
Parameters
- instanceDaskMDTrajectory
Instance to initialize
- mdtrajmd.Trajectory
MDTraj trajectory object
- zarr_cache_pathstr, optional
Path for zarr cache. If None, creates temporary cache.
- chunk_sizeint, default=1000
Number of frames per chunk
- n_workersint, optional
Number of parallel workers
Returns
- None
Initializes instance in-place
- create_from_zarr_store(zarr_store: Group, chunk_size: int = 1000, n_workers: int | None = None) dict
Prepare configuration data from existing Zarr store.
Parameters
- zarr_storezarr.Group
Zarr group containing trajectory data
- chunk_sizeint, default=1000
Chunk size for new instance
- n_workersint, optional
Number of workers for parallel operations
Returns
- dict
Configuration dictionary for DaskMDTrajectory creation
Examples
>>> builder = DaskMDTrajectoryBuildHelper() >>> config = builder.create_from_zarr_store(zarr_store) >>> # Use config to create instance in DaskMDTrajectory