ts-quantum
Version:
TypeScript library for quantum mechanics calculations and utilities
39 lines (38 loc) • 1.57 kB
TypeScript
/**
* General quantum operations for graph elements
*/
import { QuantumObject, IOperator, IStateVector } from '../../core/types';
import { QuantumGraph } from '../QuantumGraph';
import { MeasurementResult } from '../types';
/**
* Apply quantum operation to arbitrary subset of graph elements
*/
export declare function applyQuantumOperation(graph: QuantumGraph, elementIds: string[], operator: IOperator): void;
/**
* Extract quantum state from subset of graph elements
*/
export declare function extractSubsystemState(graph: QuantumGraph, elementIds: string[]): QuantumObject[];
/**
* Insert quantum state into subset of graph elements
*/
export declare function insertSubsystemState(graph: QuantumGraph, elementIds: string[], newState: QuantumObject): void;
/**
* Perform partial measurement on subset of graph elements
*/
export declare function partialMeasurement(graph: QuantumGraph, elementIds: string[], projector?: IOperator): MeasurementResult;
/**
* Check if elements form a valid subsystem
*/
export declare function validateSubsystem(graph: QuantumGraph, elementIds: string[]): boolean;
/**
* Get dimension of subsystem
*/
export declare function getSubsystemDimension(graph: QuantumGraph, elementIds: string[]): number;
/**
* Create tensor product of multiple quantum states
*/
export declare function tensorProductStates(states: IStateVector[]): IStateVector;
/**
* Split composite state into individual components
*/
export declare function splitCompositeState(compositeState: IStateVector, subsystemDimensions: number[]): IStateVector[];