adaptyv
How to use the Adaptyv Bio Foundry API and Python SDK for protein experiment design, submission, and results retrieval. Use this skill whenever the user…
Simulate and audit closed and open quantum-system models with QuTiP 5, including deterministic, trajectory, steady-state, spectral, and phase-space workflows. Use for local quantum-dynamics work where physical assumptions, dimensions, and numerical convergence must be explicit.
$ npx -y skills add k-dense-ai/claude-scientific-skills --skill qutip --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/qutipContext preview
The summary Claude sees to decide when to auto-load this skill.
Simulate and audit closed and open quantum-system models with QuTiP 5, including deterministic, trajectory, steady-state, spectral, and phase-space workflows. Use for local quantum-dynamics work where physical assumptions, dimensions, and numerical convergence must be explicit.
name: qutip description: Simulate and audit closed and open quantum-system models with QuTiP 5, including deterministic, trajectory, steady-state, spectral, and phase-space workflows. Use for local quantum-dynamics work where physical assumptions, dimensions, and numerical convergence must be explicit. license: MIT compatibility: Requires Python 3.11+, uv, and qutip==5.3.0 for executable simulations. Bundled planners and all script help run with the Python standard library; plotting requires the pinned graphics extra. No network service or credentials are used. metadata: version: "1.2" skill-author: K-Dense Inc. last-reviewed: "2026-07-23"
Use QuTiP for finite-dimensional quantum mechanics, quantum optics, Lindblad dynamics, trajectories, weak-coupling Bloch-Redfield models, and specialized Floquet, HEOM, and permutational-invariance methods. It is not a hardware execution SDK. Circuit and control functionality moved to separate QuTiP family packages.
This skill targets **QuTiP 5.3.0**, released 2026-05-22. QuTiP 5.3 requires Python 3.11 or newer. Its required distributions are NumPy (`>=1.23.2`), SciPy (`>=1.9.2`, excluding `1.16.0` and `1.17.0`), and `packaging`.
Create a dedicated environment and pin every direct distribution:
uv venv --python 3.11 uv pip install "qutip==5.3.0"
For plots:
uv pip install "qutip[graphics]==5.3.0"
Optional QuTiP family packages are independently versioned:
uv pip install "qutip-qip==0.4.2" uv pip install "qutip-qtrl==0.2.0" uv pip install "qutip-jax==0.1.1"
noisy-device simulation package. Import from `qutip_qip`, not `qutip.qip`.
control**. It is not a trajectory viewer. Import from `qutip_qtrl`, not `qutip.control`; PyPI still classifies it pre-alpha.
automatic-differentiation experiments. It is explicitly pre-alpha.
release and its own README says it is not officially released. Do not put an unreleased Git install into a reproducible workflow.
Use a project lockfile or a hash-generating `uv pip compile` workflow when transitive dependency identity must also be frozen.
Before solving, record:
1. **Units and convention.** QuTiP equations normally set \(\hbar=1\). Hamiltonian entries are angular frequencies and rates have reciprocal-time units. Convert cyclic frequency with \(2\pi f\); never mix Hz and rad/s. 2. **Subsystem order.** `tensor(A, B, C)` fixes subsystem indices `0, 1, 2`. Preserve that order in every state, operator, collapse channel, and partial trace. `obj.ptrace([0, 2])` keeps those subsystems; it does not trace them. 3. **State validity.** Check ket norm or density-matrix Hermiticity, unit trace, and eigenvalues above a stated negative tolerance. Tiny negative values may be numerical; material negativity invalidates a claimed state. 4. **Generator meaning.** A Lindblad channel with rate `gamma` is represented by `sqrt(gamma) * A`, not `gamma * A`. Define what each rate measures. For example, `sqrt(gamma_phi / 2) * sigmaz()` gives coherence decay `exp(-gamma_phi * t)`. 5. **Approximations.** State rotating-wave, Born-Markov, secular, weak-coupling, bath-equilibrium, truncation, symmetry, and initial-factorization assumptions wherever used. 6. **Numerics.** Justify Hilbert truncation, output grid, integration method, tolerances, trajectory count, and random seeds. Report `result.stats`. 7. **Convergence.** Sweep every artificial cutoff: Fock dimension, time/frequency window and spacing, ODE tolerances, trajectories, Floquet harmonics, HEOM depth and bath exponents, or PIQS representation as applicable.
Prefer explicit imports and inspect both shape and structured dimensions:
from qutip import basis, qeye, sigmaz, tensor psi = tensor(basis(2, 0), basis(3, 1)) z_on_first = tensor(sigmaz(), qeye(3)) assert psi.shape == (6, 1) assert psi.dims == [[2, 3], [1]] assert z_on_first.dims == [[2, 3], [2, 3]] rho_first = psi.proj().ptrace(0) # keep subsystem 0
Matrix shape alone is insufficient: two objects can both be 6-by-6 but encode different tensor factorizations. Read `references/core_concepts.md` before building composite, superoperator, or channel models.
| Model | Current API | Required justification | |---|---|---| | Closed, pure, unitary | `sesolve` | Hermitian Hamiltonian; no dissipation | | Lindblad/open or mixed | `mesolve` | Markovian completely positive model and channel rates | | Quantum jumps | `mcsolve` | Unravelling, trajectory convergence, seeds | | Microscopic weak bath | `brmesolve` | Born-Markov/weak coupling, spectra, secular choice | | Diffusive measurement | `ssesolve`, `smesolve` | monitored versus unmonitored channels | | Periodic drive | `FloquetBasis`, `fsesolve`, `fmmesolve` | verified period and Floquet convergence | | Structured non-Markovian bath | `qutip.solver.heom` | bath expansion and hierarchy convergence | | Symmetric spin ensemble | `qutip.piqs` | permutation symmetry and basis choice |
Do not select a more specialized solver merely because it exists.
QuTiP 5.3 uses ordinary option dictionaries. Solver controls, `e_ops`, and `args` are keyword-only; the old mutable options object is gone.
import numpy as np
from qutip import basis, mesolve, sigmam, sigmaz
omega = 2.0
gamma = 0.15
tlist = np.linspace(0.0, 20.0, 401)
excited = basis(2, 0)
result = mesolve(
0.5 * omega * sigmaz(),
excited,
tlist,
c_ops=[np.sqrt(gamma) * sigmam()],
e_ops={"sigma_z":🔔 Claude Scientific Skills is now Scientific Agent Skills. Same skills, broader compatibility — now works with any AI agent that supports the open Agent Skills standard, not just Claude.
How to use the Adaptyv Bio Foundry API and Python SDK for protein experiment design, submission, and results retrieval. Use this skill whenever the user…
This skill should be used for time series machine learning tasks including classification, regression, clustering, forecasting, anomaly detection,…
AlphaGenome API key, free for non-commercial use from deepmind.google.com/science/alphagenome. ALPHA_GENOME_API_KEY is accepted as an alternative spelling.
Plan, execute, and document validation, verification, and transfer of analytical procedures under the governing framework - ICH Q2(R2) and Q14, USP…
Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data…
Autonomously improve a real artifact (code, training recipe, agent harness, data pipeline, prompt) against an objective and an evaluator, using Hypothesis Tree…