API Reference
Core Functions
generate_dataset
pdeforge.generate_dataset(
model: str,
n_samples: int,
resolution: dict,
domain: dict = None,
params: dict = None,
ic_generator: str = "fourier",
ic_params: dict = None,
seed: int = None,
validate: bool = True,
n_jobs: int = 1,
verbose: bool = True,
) -> PDEDataset
Generate a dataset from a PDE model.
Parameters:
model: Name of the registered PDE modeln_samples: Number of samples to generateresolution: Grid resolution per dimension, e.g.,{"x": 256}domain: Domain bounds per dimension, e.g.,{"x": (0, 1)}params: Model-specific physical parametersic_generator: Initial condition generator typeic_params: Parameters for IC generatorseed: Random seed for reproducibilityvalidate: Whether to validate generated solutionsn_jobs: Number of parallel workersverbose: Show progress bar
Returns: PDEDataset object
list_models
Return names of all registered PDE models.
describe_model
Return detailed description of a model including configurable parameters.
get_model
Return the model class for direct instantiation.
load_dataset
Load a saved dataset from directory, NPZ, or HDF5 file.
PDEDataset Class
Attributes
inputs: Input fields as ndarrayoutputs: Output fields as ndarraygrid: Dictionary of spatial coordinate arraysmetadata: Dictionary with model name, parameters, etc.
Methods
split
dataset.split(
train: float = 0.7,
val: float = 0.15,
cal: float = 0.0,
test: float = 0.15,
seed: int = None,
) -> Dict[str, PDEDataset]
Split dataset into train/val/cal/test subsets.
save
Save dataset. Format determined by file extension:
- Directory (no extension): Creates directory with NPY files
.npz: Compressed NumPy archive.h5: HDF5 file (requires h5py)
visualize
Interactive visualization widget (Jupyter only).
Exploration Functions
explore_parameter
pdeforge.explore_parameter(
model: str,
param_name: str,
param_values: List,
resolution: dict,
n_samples_per_value: int = 3,
seed: int = None,
) -> PDEDataset
Generate samples varying a single parameter.
explore_parameter_grid
pdeforge.explore_parameter_grid(
model: str,
param_grid: Dict[str, List],
resolution: dict,
n_samples_per_combo: int = 1,
) -> PDEDataset
Generate samples for all parameter combinations.
explore_model
Explore all user-facing parameters of a model.
IC Generators
FourierICGenerator
Random Fourier series with decaying coefficients.
gen = FourierICGenerator(
n_modes: int = 10,
decay: float = 1.5,
amplitude: float = 1.0,
use_cos: bool = True,
)
GaussianRandomFieldGenerator
Gaussian random field with specified spectral decay.
SigmoidTransformGenerator
Wraps another generator and applies sigmoid transform to bound values.