ccs-sim
Version:
Modelling CCS systems
29 lines (28 loc) • 1.51 kB
TypeScript
import IElement, { IPhysicalElement } from './element';
import Inlet from './inlet';
import PipeSeg, { IPipeDefinition } from './pipeSeg';
import Splitter from './splitter';
import Well from './well';
import Perforation from './perforation';
import Fluid from './fluid';
export default class SnapshotBuilder {
elements: IElement[];
keyPoints: IElement[];
splitters: Splitter[];
selectedSplitter?: Splitter;
previousElem?: IElement;
fluid?: Fluid;
constructor();
private set;
addInlet(name: string, physical: IPhysicalElement): SnapshotBuilder;
addSplitter(name: string, physical: IPhysicalElement): SnapshotBuilder;
addPipeSeg(pipeDef: IPipeDefinition, source?: Inlet | PipeSeg | Splitter | Well | Perforation): SnapshotBuilder;
addWell(name: string, physical: IPhysicalElement, realReservoirName: 'Hamilton' | 'HamiltonNorth' | 'Lennox'): SnapshotBuilder;
addValve(name: string, physical: IPhysicalElement, inputPressure: number): this;
addReservoir(name: string, physical: IPhysicalElement, pressure: number): SnapshotBuilder;
addPipeSeries(n: number, pipeDef: IPipeDefinition, elevations?: number[], lengths?: number[]): SnapshotBuilder;
chainAddPipeSeg(pipeDef: IPipeDefinition, from?: Splitter | PipeSeg): SnapshotBuilder;
setFluid(pressure: number, temperature: number, flowrate: number): Promise<void>;
selectSplitter(id: number | string): this;
branch(pipeDef: IPipeDefinition): SnapshotBuilder;
}