Optimization API
Parameter Sweep
- class prismo.optimization.sweep.ParameterSweep(parameters, simulation_func, output_dir=None, parallel=False, num_workers=None)[source]
Parameter sweep executor for batch simulations.
Runs multiple simulations with varying parameters and aggregates results. Supports parallel execution and result caching.
- Parameters:
parameters (List[SweepParameter]) – Parameters to sweep over.
simulation_func (Callable) – Function that runs simulation: func(params_dict) -> results_dict
output_dir (Path, optional) – Directory for saving results.
parallel (bool, optional) – Whether to run simulations in parallel, default=False.
num_workers (int, optional) – Number of parallel workers. Default is number of CPU cores.
- save_results(filename='sweep_results.json')[source]
Save sweep results to JSON file.
- Parameters:
filename (str) – Output filename.
- Returns:
Path to saved file.
- Return type:
Path
- get_result_array(result_key)[source]
Extract a specific result as an array.
- Parameters:
result_key (str) – Key in result dictionary.
- Returns:
Results reshaped according to parameter dimensions.
- Return type:
ndarray