简化的可能性产生不同的格式
simplify-hep的Python项目详细描述
简化
从完全可能性中创建简化可能性的包。目前,只实现了一种形式的简化可能性,但其想法是实现简化可能性的附加版本,以便用户可以选择他最喜欢(或最需要)的一种。在
安装
遵循良好实践,从创建虚拟环境开始
python3 -m venv simplify
然后激活它
^{pr2}$默认安装
用pip安装软件包
python3 -m pip install simplify-hep[contrib]
开发安装
如果要对simplify
作出贡献,请安装包的开发版本。派生存储库,克隆Fork,然后安装
python3 -m pip install --ignore-installed -U -e .[complete]
接下来,为Black设置git预提交钩子
pre-commit install
你可以用它来做所有的测试
python3 -m pytest
怎么跑
CLI
与…一起跑
simplify convert -i <fullLH.json> -o <simplifiedLH.json>
其中fullLH.json
是要转换为简化似然的完全可能性。在
在python脚本
您还可以在python脚本中使用simplify
,例如,创建一些验证和交叉检查图和表。在
importpyhfimportjsonimportsimplifypyhf.set_backend(pyhf.tensorlib,"minuit")spec=json.load(open("likelihood.json","r"))ws=pyhf.Workspace(spec)# ws from full LH# get model and data for each ws we just createdmodel=ws.model(modifier_settings={"normsys":{"interpcode":"code4"},"histosys":{"interpcode":"code4p"},})data=ws.data(model)# run fitfit_result=simplify.fitter.fit(ws)plt=simplify.plot.pulls(fit_result,"plots/")plt=simplify.plot.correlation_matrix(fit_result,"plots/",pruning_threshold=0.1)tables=simplify.plot.yieldsTable(ws,"plots/",fit_result,)
依赖关系
自然严重依赖pyhf
。绘制和验证结果的部分代码是由Alexander Hold的^{
- 项目
标签: