API

This page contains the main API reference.

Core Primitives

pmrf.Model(*[, z0, name, metadata])

Base class for RF models.

pmrf.Frequency([start, stop, npoints, unit])

A frequency axis used to evaluate models over.

pmrf.Variable(value, *[, scale, fixed, name])

Create a variable parameter.

pmrf.Param

The canonical type hint for a parameter in a model.

pmrf.Fixed(value, *[, scale, name])

Create a fixed parameter.

pmrf.Bounded(lower, upper, *[, value, ...])

Create a parameter constrained within a specific interval.

pmrf.Constrained(constraint, value, *[, ...])

Create a parameter constrained to a specific domain.

pmrf.Random(distribution, *[, constraint, ...])

Create a parameter initialized with a random distribution.

pmrf.param(value, *, distribution, ...)

A field specifier for defining the rules of parameters in custom models.

pmrf.field(*[, converter, static])

Equinox supports extra functionality on top of the default dataclasses.

Main Modules

pmrf.models

RF models, components, surrogates, and adapters.

pmrf.optimize

Non-linear optimization of RF models.

pmrf.infer

Bayesian inference of RF models.

pmrf.fitting

Higher-level fitting utilities.

Other Modules

pmrf.constraints

Constraints for parameters.

pmrf.covariance_kernels

Covariance kernels for Gaussian processes.

pmrf.discrepancy_models

Discrepancy modeling between an RF model and actual data.

pmrf.distributions

Probability distribution classes and factories.

pmrf.evaluators

Callables that evaluate a model over frequency.

pmrf.likelihoods

Likelihood models for statistical fitting.

pmrf.losses

Loss models for optimizer fitting or generalized Bayesian inference.

pmrf.math

Core maths functions.

pmrf.noise_models

Measurement noise models for likelihood functions.

pmrf.parameters

Parameter factories, converters, and field specifiers.

pmrf.rf

Core RF functions, algorithms and conversions.

pmrf.serialization

Model loading and saving.

pmrf.viz

Plotting and vizualization.

Utilities

pmrf.NetworkCollection([networks, name, params])

A container for a collection of scikit-rf Networks.

pmrf.Partial(func, /, *args, **kwargs)

Like functools.partial, but treats the wrapped function, and partially-applied args and kwargs, as a PyTree.

pmrf.InitVar(type)

pmrf.load(source)

(experimental) Load a ParamRF Model (or any Parax PyTree) from a file.

pmrf.save(target, tree)

(experimental) Save a ParamRF Model (or any Parax PyTree) to a file.

pmrf.freeze(model)

Freezes a model (or any JAX PyTree) and returns the frozen model.

pmrf.replace(obj, /, **changes)

Return a new object replacing specified fields with new values.

pmrf.unwrap(tree[, only_if])

Recursively resolves AbstractUnwrappable nodes within a PyTree.

pmrf.unwrap_self(method)

Decorator for Equinox module methods.

pmrf.as_param([value, distribution, ...])

Coerces a value into a parameter.