Skip to main content

HS3 plugin for spey interface

Project description

spey-hs3: HS3 Statistical Models in spey

How to use Spey-HS3 plug-in

simple_hs3 = {
    "metadata": {"hs3_version": "0.2"},
    "distributions": [
        {
            "name": "channel",
            "type": "histfactory_dist",
            "axes": [{"name": "obs", "edges": [0.0, 1.0, 2.0]}],
            "samples": [
                {
                    "name": "bkg",
                    "data": {"contents": [40.0, 60.0], "errors": [0.0, 0.0]},
                    "modifiers": [
                        {
                            "name": "mu_bkg",
                            "type": "normfactor",
                            "parameter": "mu_bkg",
                        },
                        {
                            "name": "bkg_sys",
                            "type": "normsys",
                            "parameter": "alpha_bkg",
                            "data": {"lo": 0.90, "hi": 1.10},
                        },
                    ],
                }
            ],
        }
    ],
    "parameter_points": [
        {
            "name": "nominal",
            "parameters": [
                {"name": "mu", "value": 1.0},
                {"name": "mu_bkg", "value": 1.0, "const": True},
                {"name": "alpha_bkg", "value": 0.0},
            ],
        }
    ],
    "domains": [
        {
            "name": "model_domain",
            "type": "product_domain",
            "axes": [
                {"name": "mu", "min": -5.0, "max": 10.0},
                {"name": "mu_bkg", "min": 0.0, "max": 3.0},
                {"name": "alpha_bkg", "min": -5.0, "max": 5.0},
            ],
        }
    ],
    "data": [
        {
            "name": "observed",
            "type": "binned",
            "contents": [53, 57],
            "axes": [{"name": "obs", "edges": [0.0, 1.0, 2.0]}],
        }
    ],
    "likelihoods": [{"name": "L", "distributions": ["channel"], "data": ["observed"]}],
    "analyses": [
        {
            "name": "demo",
            "likelihood": "L",
            "domains": ["model_domain"],
            "parameters_of_interest": ["mu"],
            "init": "nominal",
        }
    ],
}

# Signal: 5 events in each bin (injected as a new sample)
simple_signal = {"channel": {"signal": [5.0, 5.0]}}

HS3 = spey.get_backend("hs3")
simple_model = HS3(
    hs3_dict=simple_hs3,
    signal_yields=simple_signal,
    mode="FAST_COMPILE",
)

cls_s_obs = simple_model.exclusion_confidence_level(
    expected=spey.ExpectationType.observed
)
cls_s_exp = simple_model.exclusion_confidence_level(expected=spey.ExpectationType.apriori)

print(f"Observed  CLs (mu=1) = {cls_s_obs[0]:.4f}")
print(f"Expected  CLs (mu=1) = {cls_s_exp[2]:.4f}")

# Observed CLs (mu=1) = 0.2361
# Expected CLs (mu=1) = 0.5299

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spey_hs3-0.0.1b1.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

spey_hs3-0.0.1b1-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file spey_hs3-0.0.1b1.tar.gz.

File metadata

  • Download URL: spey_hs3-0.0.1b1.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.18

File hashes

Hashes for spey_hs3-0.0.1b1.tar.gz
Algorithm Hash digest
SHA256 4e8c2766554a6d4e2e378849f8a345482d8b154d63cb1cdf27f9d1e5a53ba2ac
MD5 de536f934093b3e03d8c20a7d8748e20
BLAKE2b-256 0c17d8e181f95602365f71e11000d339119e8f3e9980651bb9f982a644651703

See more details on using hashes here.

File details

Details for the file spey_hs3-0.0.1b1-py3-none-any.whl.

File metadata

  • Download URL: spey_hs3-0.0.1b1-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.18

File hashes

Hashes for spey_hs3-0.0.1b1-py3-none-any.whl
Algorithm Hash digest
SHA256 2ed0726f7dd661f47f3ab7e668a4dc6ee5a33be11300000f207710deac6cbcf0
MD5 93dff5422c2ebeb2d7cca68cbbc3de24
BLAKE2b-256 a37448e0ab2aca8bcdfcda214e00de85c8032bfbf8561e453ed36a3d6a2b472c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page