ts-quantum
Version:
TypeScript library for quantum mechanics calculations and utilities
30 lines • 1.05 kB
JavaScript
/**
* Composite quantum manager for handling entangled systems
*/
/**
* Manages quantum objects that span multiple graph elements (entangled systems)
*/
export class CompositeQuantumManager {
composites = new Map();
elementToComposite = new Map();
setComposite(elementIds, obj) {
const compositeId = this.generateCompositeId(elementIds);
this.composites.set(compositeId, obj);
// Map each element to this composite
elementIds.forEach(id => {
this.elementToComposite.set(id, compositeId);
});
}
getComposite(elementIds) {
const compositeId = this.generateCompositeId(elementIds);
return this.composites.get(compositeId);
}
getCompositeForElement(elementId) {
const compositeId = this.elementToComposite.get(elementId);
return compositeId ? this.composites.get(compositeId) : undefined;
}
generateCompositeId(elementIds) {
return [...elementIds].sort().join('_');
}
}
//# sourceMappingURL=CompositeQuantumManager.js.map