ts-quantum
Version:
TypeScript library for quantum mechanics calculations and utilities
44 lines (43 loc) • 1.53 kB
TypeScript
/**
* Measurement operations for quantum states
*/
import { Complex, IOperator, IMeasurementOutcome } from '../core/types';
import { StateVector } from '../states/stateVector';
/**
* Implementation of a projection operator for quantum measurements
*/
export declare class ProjectionOperator implements IOperator {
private _operator;
private _dimension;
constructor(state: StateVector);
get dimension(): number;
get type(): 'projection';
/**
* Tests whether the density matrix is identically zero
*/
isZero(tolerance?: number): boolean;
apply(state: StateVector): StateVector;
compose(other: IOperator): IOperator;
adjoint(): IOperator;
toMatrix(): Complex[][];
tensorProduct(other: IOperator): IOperator;
partialTrace(dims: number[], traceOutIndices: number[]): IOperator;
scale(scalar: Complex): IOperator;
add(other: IOperator): IOperator;
eigenDecompose(): {
values: Complex[];
vectors: IOperator[];
};
}
/**
* Calculate expectation value of an operator for a given state
*/
export declare function expectationValue(state: StateVector, operator: IOperator): Complex;
/**
* Perform a measurement on a quantum state with a given observable
*/
export declare function measureState(state: StateVector, operator: IOperator): IMeasurementOutcome;
/**
* Create a measurement operator for a given observable and eigenvalue
*/
export declare function createMeasurementOperator(observable: IOperator, eigenvalue: number): IOperator;