Skip to content

Datasets

metasurface_py.datasets

Dataset management: parameter sweeps and result storage.

ParameterSweep dataclass

Definition of a parameter sweep.

Parameters:

Name Type Description Default
name str

Descriptive name for the sweep.

required
parameter str

Config field to sweep (e.g., "freq", "num_bits").

required
values NDArray[floating[Any]]

Array of parameter values to sweep over.

required
base_config ExperimentConfig

Base experiment configuration.

required

load_result(path)

Load an xarray Dataset from NetCDF.

Parameters:

Name Type Description Default
path str | Path

Path to NetCDF file.

required

Returns:

Type Description
Dataset

Loaded Dataset.

run_sweep(sweep)

Execute a parameter sweep.

For each value of the swept parameter, builds and runs the experiment, collecting objective values and peak gains.

Parameters:

Name Type Description Default
sweep ParameterSweep

Parameter sweep definition.

required

Returns:

Type Description
Dataset

xr.Dataset with the sweep parameter as a coordinate,

Dataset

containing objective_value and runtime variables.

save_result(dataset, path)

Save an xarray Dataset to NetCDF.

Parameters:

Name Type Description Default
dataset Dataset

Dataset to save (e.g., from run_sweep).

required
path str | Path

Output file path (.nc).

required

Returns:

Type Description
Path

Path to saved file.