Quick Start

SciKit is a Python package for scientific data analysis and visualization, built on top of NumPy, SciPy, and Matplotlib. It provides four focused modules covering analysis pipelines, plotting utilities, high-level tools, and helper functions.


Installation

Install SciKit from source:

git clone https://github.com/lslumass/SciKit.git
cd SciKit
pip install .

Dependencies — installed automatically:


Package Overview

SciKit is organised into four modules, each with a clear responsibility:

Module

Purpose

SciKit.Analysis

MD trajectory analysis exposed as CLI sub-commands (MSD, Rg, DSSP, distances, contacts, aggregation)

SciKit.plots

Ready-made Matplotlib figures for scientific data

SciKit.tools

High-level workflow tools that combine analysis and plotting

SciKit.utils

Shared helpers for I/O, data validation, and unit conversion


Analysis Module

The SciKit.Analysis module is a unified MD analysis toolkit. All eight analyses are registered as sub-commands of a single scical CLI entry-point powered by Typer. List all available commands and global options with:

scical --help

Each sub-command has its own --help flag that describes every option:

scical msd --help
scical rg --help
scical dssp --help
# … and so on

Available sub-commands

Command

Description

msd

Per-segment Cα mean squared displacement (FFT, parallel)

rg

Per-segment radius of gyration time series

dssp

Per-residue DSSP helicity and β-sheet content

distance

Cα–Cα distances for user-defined residue pairs over a trajectory

distance-acf

Normalised fluctuation ACF of inter-Cα distances

vector-acf

End-to-end Cα vector autocorrelation function

contacts

Intra- and inter-chain heavy-atom contact maps (parallel)

aggr

Aggregation analysis: clustering, PBC recentering, radial density

For the full API reference, see Analysis Module.


Plots Module

The SciKit.plots module wraps Matplotlib to produce publication-ready figures with minimal boilerplate:

import numpy as np
from SciKit import plots

data = np.random.randn(200)

# Generate a plot (replace with actual function names)
fig, ax = plots.plot(data, title="My Dataset")
fig.savefig("output.png", dpi=150)

All plotting functions return a (fig, ax) tuple so you can further customise them with standard Matplotlib commands.

For the full API, see Plots Module.


Tools Module

The SciKit.tools module provides high-level convenience functions that combine analysis and plotting into single calls:

from SciKit import tools

# One-liner end-to-end pipeline (replace with actual function names)
tools.run_pipeline("my_data.csv", output_dir="results/")

For the full API, see Tools Module.


Utils Module

The SciKit.utils module contains shared helpers used across the package. You can also call them directly:

from SciKit import utils

# File I/O helper (replace with actual function names)
data = utils.load("my_data.csv")

# Validation helper
utils.validate(data)

For the full API, see Utils Module.


Next Steps