pyhs3.distributions.UniformDist

class pyhs3.distributions.UniformDist(**data)[source]

Uniform (rectangular) probability distribution.

Implements the continuous uniform probability density function with constant density over its support region, as defined in ROOT’s RooUniform.

\[f(x) = \frac{1}{\mathcal{M}}\]

where the normalization constant $mathcal{M}$ is determined by the domain bounds.

Parameters:

x (str) – Input variable name.

Note

The actual bounds are defined by the domain, not by distribution parameters. This matches both the HS3 specification and ROOT’s RooUniform implementation.

HS3 Reference

Uniform distribution

Parameters:

data (Any)

__init__(**data)

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

data (Any)

Methods

__init__(**data)

Create a new model by parsing and validating input data from keyword arguments.

construct([_fields_set])

copy(*[, include, exclude, update, deep])

Returns a copy of the model.

dict(*[, include, exclude, by_alias, ...])

expression(_context)

Builds a symbolic expression for the uniform PDF.

from_orm(obj)

get_parameter_list(context, param_key)

Reconstruct a parameter list from flattened indexed keys.

json(*[, include, exclude, by_alias, ...])

model_construct([_fields_set])

Creates a new instance of the Model class with validated data.

model_copy(*[, update, deep])

!!! abstract "Usage Documentation"

model_dump(*[, mode, include, exclude, ...])

!!! abstract "Usage Documentation"

model_dump_json(*[, indent, include, ...])

!!! abstract "Usage Documentation"

model_json_schema([by_alias, ref_template, ...])

Generates a JSON schema for a model class.

model_parametrized_name(params)

Compute the class name for parametrizations of generic classes.

model_post_init(context, /)

This function is meant to behave like a BaseModel method to initialise private attributes.

model_rebuild(*[, force, raise_errors, ...])

Try to rebuild the pydantic-core schema for the model.

model_validate(obj, *[, strict, ...])

Validate a pydantic model instance.

model_validate_json(json_data, *[, strict, ...])

!!! abstract "Usage Documentation"

model_validate_strings(obj, *[, strict, ...])

Validate the given object with string data against the Pydantic model.

parse_file(path, *[, content_type, ...])

parse_obj(obj)

parse_raw(b, *[, content_type, encoding, ...])

process_parameter(param_key)

Process a single parameter that can be either a string reference or numeric value.

process_parameter_list(param_key)

Process a list parameter containing mixed string references and numeric values.

schema([by_alias, ref_template])

schema_json(*[, by_alias, ref_template])

update_forward_refs(**localns)

validate(value)

Attributes

constants

Dictionary of PyTensor constants generated from numeric field values.

model_computed_fields

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_extra

Get extra fields set during validation.

model_fields

model_fields_set

Returns the set of fields that have been explicitly set on this model instance.

parameters

Set of parameter names this component depends on.

type

x

name