Skip to content
Shapemetry

@huukhanhnguyen/model / core/analyze

core/analyze

monteCarlo()

monteCarlo(model, config, onProgress?): Promise<MonteCarloResult>

Same monteCarloSteps algorithm, driven with event-loop yields (see CHUNK_SIZE's doc).

Parameters

model

AnalyzeModel

config

MonteCarloConfig

onProgress?

AnalyzeProgress

Returns

Promise<MonteCarloResult>


monteCarloSync()

monteCarloSync(model, config, onProgress?): MonteCarloResult

Same algorithm, driven synchronously — see sweepSync's doc.

Parameters

model

AnalyzeModel

config

MonteCarloConfig

onProgress?

AnalyzeProgress

Returns

MonteCarloResult


optimize()

optimize(model, config, onProgress?): Promise<OptimizeResult>

Same optimizeSteps algorithm, driven with event-loop yields (see CHUNK_SIZE's doc).

Parameters

model

AnalyzeModel

config

OptimizeConfig

onProgress?

AnalyzeProgress

Returns

Promise<OptimizeResult>


optimizeSync()

optimizeSync(model, config, onProgress?): OptimizeResult

Same algorithm, driven synchronously — see sweepSync's doc.

Parameters

model

AnalyzeModel

config

OptimizeConfig

onProgress?

AnalyzeProgress

Returns

OptimizeResult


sweep()

sweep(model, config, onProgress?): Promise<AnalyzeTable>

Grid-sweep config.parameters (1 or 2 in practice, but any count works) over their own linspace, evaluating every config.measures expression at each grid point — yields to the event loop every CHUNK_SIZE evaluations.

Parameters

model

AnalyzeModel

config

SweepConfig

onProgress?

AnalyzeProgress

Returns

Promise<AnalyzeTable>


sweepSync()

sweepSync(model, config, onProgress?): AnalyzeTable

Same algorithm as sweep, driven synchronously (no event-loop yields) — for a caller that must return without awaiting anything (tableAnalyze's detached-copy resolution, see Model.ts's _runAnalysis).

Parameters

model

AnalyzeModel

config

SweepConfig

onProgress?

AnalyzeProgress

Returns

AnalyzeTable

Last updated: 📖 2 min readEdit on GitHub