Model infrastructure#
The modeling interface defines parameter metadata, model evaluation results, the base class for dose-response models, and registry lookup.
BaseDoseResponseModel#
- class bindcurve.BaseDoseResponseModel[source]#
Bases:
ABCBase class for dose-response models fitted through lmfit.
- evaluate(concentration, **params)[source]#
Evaluate the observable response on the raw concentration axis.
- abstractmethod guess(compound)[source]#
Generate initial parameter guesses for one compound or experiment.
- response_from_components(components, **params)[source]#
Map a physical binding fraction to the measured response.
- evaluate_components(concentration, **params)[source]#
Evaluate the observable response and any model-specific components.
- Parameters:
- Return type:
- property concentration_parameter_specs: tuple[ParameterSpec, ...]#
Return concentration-like parameter specifications.
- property required_fixed_parameters: frozenset[str]#
Return parameters that must be provided as fixed assay constants.
- parameter_spec(name)[source]#
Return one parameter specification by public name.
- Parameters:
name (str)
- Return type:
- make_lmfit_parameters(guesses, *, fixed=None, bounds=None)[source]#
Create lmfit Parameters from model specs, guesses, and user overrides.
- residual(parameters, concentration, y, sigma=None)[source]#
Return observed-minus-predicted residuals, standardized when σ is known.
- Parameters:
parameters (Parameters)
concentration (ndarray)
y (ndarray)
sigma (ndarray | None)
- Return type:
- decode_parameters(parameters)[source]#
Decode optimizer coordinates to public physical parameter values.
- Parameters:
parameters (Parameters)
- Return type:
ModelEvaluation#
ParameterSpec#
- class bindcurve.ParameterSpec[source]#
Bases:
objectComplete specification for one public model parameter.
scalecontrols only the optimizer coordinate. Model evaluation and all public results always use the parameter’s physical, linear-scale value.- __init__(name, initial=None, min=-inf, max=inf, vary=True, kind='native', scale='linear', reportable=True, log_name=None, description=None)#