Skip to content

Auxiliary Measurements

Auxiliary measurements and global observables

This section is non-normative.

Auxiliary measurements commonly constrain nuisance parameters through additional likelihood terms. Their observed values, sometimes known as global observables, can be fixed and are generally not part of the primary data. The mechanisms described in Likelihoods can already accommodate such terms in several ways. Both forms presented here are mathematically equivalent and differ only in presentation and verbosity.

Each constraint distribution can enter the likelihood directly, paired with a point data set:

Example: Auxiliary measurements as constraint distributions paired with point datasets
{
  ...
  "distributions":[
    {
      "name":"gauss_constraint_alpha_1",
      "type":"gaussian_dist",
      "x":"nom_alpha_1",
      "sigma":1.0,
      "mean":"alpha_1"
    },
    {
      "name":"gauss_constraint_alpha_2",
      "type":"gaussian_dist",
      "x":"nom_alpha_2",
      "sigma":1.0,
      "mean":"alpha_2"
    },
    {
      "name":"gauss_constraint_alpha_3",
      "type":"gaussian_dist",
      "x":"nom_alpha_3",
      "sigma":1.0,
      "mean":"alpha_3"
    },
    ...
  ],
  "data":[
    {
      "name":"obs_nom_alpha_1",
      "type":"point",
      "value":0.0,
      "axes":[{"name":"nom_alpha_1","min":-5,"max":5}]
    },
    {
      "name":"obs_nom_alpha_2",
      "type":"point",
      "value":0.0,
      "axes":[{"name":"nom_alpha_2","min":-5,"max":5}]
    },
    {
      "name":"obs_nom_alpha_3",
      "type":"point",
      "value":0.0,
      "axes":[{"name":"nom_alpha_3","min":-5,"max":5}]
    },
    ...
  ],
  "likelihoods":[
    {
      "name":"likelihood1",
      "distributions":["channel1_pdf","gauss_constraint_alpha_1","gauss_constraint_alpha_2","gauss_constraint_alpha_3"],
      "data":["channel1_data","obs_nom_alpha_1","obs_nom_alpha_2","obs_nom_alpha_3"]
    }
  ]
}

For models with many constraints, listing one term per auxiliary measurement becomes lengthy. When the constraint terms are independent and of the same kind (e.g. unit Gaussians or Poisson terms) they can instead be collected into a single pair: an unbinned data set with one continuous axis per auxiliary observable and a single entry holding the auxiliary-measurement values, paired with an Array distribution that evaluates one constraint term per axis:

Example: Auxiliary measurements as an array constraint
{
  ...
  "distributions":[
    {
      "name":"gauss_constraints",
      "type":"array_dist",
      "component_type":"gaussian_dist",
      "default_parameters":{"sigma":1.0},
      "components":[
        {"x":"nom_alpha_1","mean":"alpha_1"},
        {"x":"nom_alpha_2","mean":"alpha_2"},
        {"x":"nom_alpha_3","mean":"alpha_3"}
      ]
    },
    ...
  ],
  "data":[
    {
      "name":"global_observables",
      "type":"unbinned",
      "entries":[[0.0, 0.0, 0.0]],
      "axes":[
        {"name":"nom_alpha_1", "min":-5, "max":5},
        {"name":"nom_alpha_2", "min":-5, "max":5},
        {"name":"nom_alpha_3", "min":-5, "max":5}
      ]
    },
    ...
  ],
  "likelihoods":[
    {
      "name":"likelihood1",
      "distributions":["channel1_pdf","gauss_constraints"],
      "data":["channel1_data", "global_observables"]
    }
  ]
}

The single entry of the unbinned data set contributes exactly one factor per component to the likelihood, so each constraint term enters exactly once. Encoding constraint terms as an array distribution paired with an unbinned data set is recommended over listing individual pairs as described above.