PycWB 0.22.2__tar.gz → 0.23.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pycwb-0.22.2 → pycwb-0.23.0}/PKG-INFO +1 -1
- {pycwb-0.22.2 → pycwb-0.23.0}/PycWB.egg-info/PKG-INFO +1 -1
- {pycwb-0.22.2 → pycwb-0.23.0}/PycWB.egg-info/SOURCES.txt +11 -2
- {pycwb-0.22.2 → pycwb-0.23.0}/bin/pycwb +14 -5
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/_version.py +2 -2
- pycwb-0.23.0/pycwb/cli/batch_runner.py +48 -0
- pycwb-0.22.2/pycwb/cli/batch.py → pycwb-0.23.0/pycwb/cli/batch_setup.py +43 -23
- pycwb-0.23.0/pycwb/cli/merge_catalog.py +18 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/cli/run.py +3 -3
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/config/config.py +3 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/constants/user_parameters_schema.py +19 -2
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/coherence/coherence.py +3 -0
- pycwb-0.23.0/pycwb/modules/energy_threshold/threshold.py +48 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/job_segment/job_segment.py +8 -8
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/likelihood/likelihood.py +4 -3
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot/cluster_statistics.py +4 -2
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/read_data/data_check.py +5 -1
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/read_data/mdc.py +81 -52
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/statistics/sigmoid_fit.py +16 -4
- pycwb-0.23.0/pycwb/modules/supercluster_naive/supercluster2.py +46 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/workflow_utils/job_setup.py +13 -2
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/prefect_flow/tasks/builtin.py +1 -1
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/network_cluster.py +22 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/network_event.py +2 -0
- pycwb-0.23.0/pycwb/utils/parser.py +14 -0
- pycwb-0.23.0/pycwb/vendor/lib/__init__.py +0 -0
- pycwb-0.23.0/pycwb/workflow/__init__.py +0 -0
- pycwb-0.23.0/pycwb/workflow/batch.py +174 -0
- pycwb-0.23.0/pycwb/workflow/merge.py +39 -0
- pycwb-0.23.0/pycwb/workflow/run.py +23 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/workflow/subflow/postprocess_and_plots.py +47 -15
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/workflow/subflow/prepare_job_runs.py +22 -15
- pycwb-0.23.0/pycwb/workflow/subflow/process_job_segment.py +115 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/workflow/subflow/supercluster_and_likelihood.py +18 -6
- pycwb-0.22.2/pycwb/search.py +0 -275
- pycwb-0.22.2/pycwb/workflow/batch.py +0 -168
- {pycwb-0.22.2 → pycwb-0.23.0}/.gitignore +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/.gitlab-ci.yml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/LICENSE +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/MANIFEST.in +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/Makefile +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/PycWB.egg-info/dependency_links.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/PycWB.egg-info/requires.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/PycWB.egg-info/top_level.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/README.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/README.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/likelihood/README.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/likelihood/generate_data_for_likelihood.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/likelihood/performance_test_dpf.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/likelihood/performance_test_opt_sky.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/likelihood/user_parameters_injection.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/supercluster/README.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/supercluster/generate_data.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/supercluster/generate_data_2.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/supercluster/performance_supercluster.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/benchmark/supercluster/user_parameters_injection.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/bin/pycwb_search +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/bin/pycwb_show +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Biorthogonal.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Biorthogonal.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/CMakeLists.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Daubechies.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Daubechies.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/FourierCoefficients.icc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Haar.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Haar.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/LineFilter.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/LineFilter.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Makefile +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Meyer.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Meyer.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Symlet.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Symlet.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/SymmArray.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/SymmArray.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/SymmArraySSE.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/SymmArraySSE.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/SymmObjArray.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/SymmObjArray.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/WDM.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/WDM.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/WDMOverlap.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/WDMOverlap.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/WaveDWT.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/WaveDWT.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Wavelet.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/Wavelet.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/alm.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/build.sh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/cluster.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/cluster.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/cmake/FindHealpix.cmake +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/cmake/FindeBBH.cmake +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/cmake/install_function.cmake +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/constants.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/detector.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/detector.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/injection.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/injection.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/lossy.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/lossy.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/monster.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/monster.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/netcluster.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/netcluster.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/netevent.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/netevent.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/netpixel.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/netpixel.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/network.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/network.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/pycwb.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/rdfr.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/rdfr.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/readframe.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/readframe.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/readfrfile.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/readfrfile.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/regression.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/regression.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/skycoord.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/skymap.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/skymap.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/sseries.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/sseries.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/time.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/time.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wat.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watasm.S +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watasm_elf64.o +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watavx.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watbranch.in +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watfun.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wathash.in +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watplot.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watplot.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watsse.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wattag.in +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/waturl.in +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/watversion.hh.in +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavearray.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavearray.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavecomplex.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavecomplex.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavecor.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavecor.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavefft.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavefft.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavelet_LinkDef.h +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavelinefilter.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wavelinefilter.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/waverdc.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/waverdc.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wseries.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wseries.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/cwb-core/wslice.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/0.installation_guide.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/1.initialisation_guide.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/2.test_interactive_multistages_2G_analysis.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/3.run_pycwb_with_yaml_config.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/4.py_cwb_inet_2G.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/5.cwb2G_analyse.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/6.wat_codes_notes.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/Makefile +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/diagram.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/make.bat +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/_static/.keep +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/_templates/.keep +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/conf.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/credit.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/index.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/install.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/mod_cwb.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/package.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/schema.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/tutorial_batch_inj.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/tutorial_customized_wf_gen.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/tutorial_injection.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/tutorial_multi_injection.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/tutorial_search.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/tutorials.rst +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/docs/source/workflow.png +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/envs/Dockerfile +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/envs/mamba/Dockerfile +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/autoencoder/pycwb_injection.ipynb +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/autoencoder/user_parameters_injection.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/batch_injection/generate_parameters.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/batch_injection/pycbc_inject/hyperbolicTD/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/batch_injection/pycbc_inject/hyperbolicTD/parameters.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/batch_injection/pycbc_inject/hyperbolicTD/waveform.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/batch_injection/pycwb_injection.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/batch_injection/user_parameters_injection.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/DQ/H1_cat0.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/DQ/H1_cat1.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/DQ/H1_cat2.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/DQ/H1_cat4.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/DQ/L1_cat0.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/DQ/L1_cat1.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/DQ/L1_cat2.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/DQ/L1_cat4.txt +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/input/OPBM.period +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/input/OPBM_H1.frames +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/input/OPBM_L1.frames +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/pycwb_mdc.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/benchmark/user_parameters_mdc.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/colab/pycWB_GW150914.ipynb +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/injection/pycwb_injection.ipynb +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/injection/pycwb_injection.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/injection/user_parameters_injection.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/lvk_sep_2023/demo.ipynb +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/lvk_sep_2023/user_parameters.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/multiple_injection/pycwb_injection.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/multiple_injection/user_parameters_injection.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/pyseobnr_injection/generate_parameters.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/pyseobnr_injection/user_parameters_injection.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/pyseobnr_injection/waveform_model/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/pyseobnr_injection/waveform_model/waveform.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/examples/waveform_reconstruction/reconstruct_waveform_from_cluster.ipynb +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/cwb_core/coherence.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/cwb_core/coherence.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/cwb_core/likelihood.cc +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/cwb_core/likelihood.hh +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/dag/dag.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/dag/dask-prefect.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/dag/prefect_test.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger/server.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger/visualizition.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/.eslintrc.cjs +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/.gitignore +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/.prettierrc.json +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/README.md +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/index.html +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/package-lock.json +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/package.json +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/public/favicon.ico +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/App.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/assets/base.css +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/assets/cwb_icon_modern_blue_alfa.png +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/assets/main.css +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/assets/style.css +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/HelloWorld.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/TheWelcome.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/WelcomeItem.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/__tests__/HelloWorld.spec.js +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/icons/IconCommunity.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/icons/IconDocumentation.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/icons/IconEcosystem.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/icons/IconSupport.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/components/icons/IconTooling.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/main.js +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/router/index.js +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/stores/counter.js +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/views/drawflow.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/views/nodes/node1.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/views/nodes/node2.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/views/nodes/node3.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/src/views/nodes/nodeHeader.vue +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/messenger-web-interface/vite.config.js +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/performance/numba_test.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/performance/taichi_test.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/prototypes/search.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/cli/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/cli/flow.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/cli/server.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/cli/xtalk.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/config/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/constants/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/constants/project_constants.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/autoencoder/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/autoencoder/autoencoder.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/autoencoder/cwb_autoencoder.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/autoencoder/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/catalog/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/catalog/catalog.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/catalog/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/coherence/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/coherence/coherence_lite.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/coherence/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/condor/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/condor/condor.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/condor/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/cwb_conversions/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/cwb_conversions/cluster.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/cwb_conversions/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/cwb_conversions/pixel.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/cwb_conversions/series.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/cwb_conversions/sparse_series.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/data_conditioning/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/data_conditioning/data_conditioning.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/data_conditioning/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/data_conditioning/regression.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/data_conditioning/whitening.py +0 -0
- {pycwb-0.22.2/pycwb/modules/likelihoodWP → pycwb-0.23.0/pycwb/modules/energy_threshold}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/job_segment/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/job_segment/dq_segment.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/job_segment/frame.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/job_segment/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/job_segment/plots.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/job_segment/super_lag.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/likelihood/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/likelihood/module.yaml +0 -0
- {pycwb-0.22.2/pycwb/modules/plot_map → pycwb-0.23.0/pycwb/modules/likelihoodWP}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/likelihoodWP/dpf.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/likelihoodWP/dpf_cython.pyx +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/likelihoodWP/likelihood.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/likelihoodWP/sky_stat.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/likelihoodWP/utils.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/logger/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/logger/logger.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/logger/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/multi_resolution_wdm/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/multi_resolution_wdm/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/multi_resolution_wdm/wdm.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot/event.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot/spectrogram.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot/waveform.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot_data_quality/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot_data_quality/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot_data_quality/plot.py +0 -0
- {pycwb-0.22.2/pycwb/modules/statistics → pycwb-0.23.0/pycwb/modules/plot_map}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot_map/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/plot_map/world_map.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/read_data/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/read_data/data_find.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/read_data/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/read_data/read_data.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/reconstruction/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/reconstruction/getMRAwaveform.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/reconstruction/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/sparse_series/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/sparse_series/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/sparse_series/sparse_table.py +0 -0
- {pycwb-0.22.2/pycwb/modules/web_viewer → pycwb-0.23.0/pycwb/modules/statistics}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/statistics/eff.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/statistics/eff_plot.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/statistics/merge.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/super_cluster/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/super_cluster/module.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/super_cluster/sub_net_cut.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/super_cluster/super_cluster.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/super_cluster/supercluster.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/super_cluster/utils.py +0 -0
- {pycwb-0.22.2/pycwb/modules/workflow_utils → pycwb-0.23.0/pycwb/modules/supercluster_naive}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/superlag/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/superlag/superlag.py +0 -0
- {pycwb-0.22.2/pycwb/modules/xtalk → pycwb-0.23.0/pycwb/modules/web_viewer}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/web_viewer/create.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/web_viewer/module.yaml +0 -0
- {pycwb-0.22.2/pycwb/prefect_flow → pycwb-0.23.0/pycwb/modules/workflow_utils}/__init__.py +0 -0
- {pycwb-0.22.2/pycwb/prefect_flow/tasks → pycwb-0.23.0/pycwb/modules/xtalk}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/xtalk/monster.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/xtalk/monster_old.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/modules/xtalk/xtalk_data.py +0 -0
- {pycwb-0.22.2/pycwb/types → pycwb-0.23.0/pycwb/prefect_flow}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/prefect_flow/pycwb_flow.py +0 -0
- {pycwb-0.22.2/pycwb/utils → pycwb-0.23.0/pycwb/prefect_flow/tasks}/__init__.py +0 -0
- {pycwb-0.22.2/pycwb/utils/conversions → pycwb-0.23.0/pycwb/types}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/data_quality_file.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/detector.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/job.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/network.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/network_pixel.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/sparse_series.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/time_frequency_series.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/wdm.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/types/wdm_xtalk.py +0 -0
- {pycwb-0.22.2/pycwb/vendor → pycwb-0.23.0/pycwb/utils}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/async_write.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/check_ROOT.py +0 -0
- {pycwb-0.22.2/pycwb/vendor/autoencoder → pycwb-0.23.0/pycwb/utils/conversions}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/conversions/timeseries.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/dataclass_object_io.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/dep_check.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/image.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/module.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/network.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/skymap_coord.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/utils/yaml_helper.py +0 -0
- {pycwb-0.22.2/pycwb/vendor/lib → pycwb-0.23.0/pycwb/vendor}/__init__.py +0 -0
- {pycwb-0.22.2/pycwb/workflow → pycwb-0.23.0/pycwb/vendor/autoencoder}/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/vendor/autoencoder/cwb_autoencoder.h5 +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/vendor/example.yaml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/vendor/web_viewer/event_dump.html +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/vendor/web_viewer/styles.css +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/vendor/web_viewer/viewer.html +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pycwb/workflow/subflow/__init__.py +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/pyproject.toml +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/setup.cfg +0 -0
- {pycwb-0.22.2 → pycwb-0.23.0}/setup.py +0 -0
|
@@ -231,10 +231,11 @@ prototypes/performance/numba_test.py
|
|
|
231
231
|
prototypes/performance/taichi_test.py
|
|
232
232
|
pycwb/__init__.py
|
|
233
233
|
pycwb/_version.py
|
|
234
|
-
pycwb/search.py
|
|
235
234
|
pycwb/cli/__init__.py
|
|
236
|
-
pycwb/cli/
|
|
235
|
+
pycwb/cli/batch_runner.py
|
|
236
|
+
pycwb/cli/batch_setup.py
|
|
237
237
|
pycwb/cli/flow.py
|
|
238
|
+
pycwb/cli/merge_catalog.py
|
|
238
239
|
pycwb/cli/run.py
|
|
239
240
|
pycwb/cli/server.py
|
|
240
241
|
pycwb/cli/xtalk.py
|
|
@@ -269,6 +270,8 @@ pycwb/modules/data_conditioning/data_conditioning.py
|
|
|
269
270
|
pycwb/modules/data_conditioning/module.yaml
|
|
270
271
|
pycwb/modules/data_conditioning/regression.py
|
|
271
272
|
pycwb/modules/data_conditioning/whitening.py
|
|
273
|
+
pycwb/modules/energy_threshold/__init__.py
|
|
274
|
+
pycwb/modules/energy_threshold/threshold.py
|
|
272
275
|
pycwb/modules/job_segment/__init__.py
|
|
273
276
|
pycwb/modules/job_segment/dq_segment.py
|
|
274
277
|
pycwb/modules/job_segment/frame.py
|
|
@@ -326,6 +329,8 @@ pycwb/modules/super_cluster/sub_net_cut.py
|
|
|
326
329
|
pycwb/modules/super_cluster/super_cluster.py
|
|
327
330
|
pycwb/modules/super_cluster/supercluster.py
|
|
328
331
|
pycwb/modules/super_cluster/utils.py
|
|
332
|
+
pycwb/modules/supercluster_naive/__init__.py
|
|
333
|
+
pycwb/modules/supercluster_naive/supercluster2.py
|
|
329
334
|
pycwb/modules/superlag/__init__.py
|
|
330
335
|
pycwb/modules/superlag/superlag.py
|
|
331
336
|
pycwb/modules/web_viewer/__init__.py
|
|
@@ -361,6 +366,7 @@ pycwb/utils/dep_check.py
|
|
|
361
366
|
pycwb/utils/image.py
|
|
362
367
|
pycwb/utils/module.py
|
|
363
368
|
pycwb/utils/network.py
|
|
369
|
+
pycwb/utils/parser.py
|
|
364
370
|
pycwb/utils/skymap_coord.py
|
|
365
371
|
pycwb/utils/yaml_helper.py
|
|
366
372
|
pycwb/utils/conversions/__init__.py
|
|
@@ -375,7 +381,10 @@ pycwb/vendor/web_viewer/styles.css
|
|
|
375
381
|
pycwb/vendor/web_viewer/viewer.html
|
|
376
382
|
pycwb/workflow/__init__.py
|
|
377
383
|
pycwb/workflow/batch.py
|
|
384
|
+
pycwb/workflow/merge.py
|
|
385
|
+
pycwb/workflow/run.py
|
|
378
386
|
pycwb/workflow/subflow/__init__.py
|
|
379
387
|
pycwb/workflow/subflow/postprocess_and_plots.py
|
|
380
388
|
pycwb/workflow/subflow/prepare_job_runs.py
|
|
389
|
+
pycwb/workflow/subflow/process_job_segment.py
|
|
381
390
|
pycwb/workflow/subflow/supercluster_and_likelihood.py
|
|
@@ -7,9 +7,10 @@ import argparse
|
|
|
7
7
|
import pycwb.cli.server as server
|
|
8
8
|
import pycwb.cli.run as run
|
|
9
9
|
import pycwb.cli.flow as flow
|
|
10
|
-
import pycwb.cli.
|
|
10
|
+
import pycwb.cli.batch_setup as batch_setup
|
|
11
|
+
import pycwb.cli.batch_runner as batch_runner
|
|
11
12
|
import pycwb.cli.xtalk as xtalk
|
|
12
|
-
|
|
13
|
+
import pycwb.cli.merge_catalog as merge_catalog
|
|
13
14
|
|
|
14
15
|
def main():
|
|
15
16
|
parser = argparse.ArgumentParser(prog='pycwb')
|
|
@@ -29,14 +30,22 @@ def main():
|
|
|
29
30
|
flow.init_parser(flow_parser)
|
|
30
31
|
flow_parser.set_defaults(func=flow.command)
|
|
31
32
|
|
|
32
|
-
batch_parser = subparsers.add_parser('batch', help='
|
|
33
|
-
|
|
34
|
-
batch_parser.set_defaults(func=
|
|
33
|
+
batch_parser = subparsers.add_parser('batch-setup', help='Setup batch run')
|
|
34
|
+
batch_setup.init_parser(batch_parser)
|
|
35
|
+
batch_parser.set_defaults(func=batch_setup.command)
|
|
36
|
+
|
|
37
|
+
batch_runner_parser = subparsers.add_parser('batch-runner', help='Runner for batch run')
|
|
38
|
+
batch_runner.init_parser(batch_runner_parser)
|
|
39
|
+
batch_runner_parser.set_defaults(func=batch_runner.command)
|
|
35
40
|
|
|
36
41
|
xtalk_parser = subparsers.add_parser('xtalk', help='Convert xtalk file')
|
|
37
42
|
xtalk.init_parser(xtalk_parser)
|
|
38
43
|
xtalk_parser.set_defaults(func=xtalk.command)
|
|
39
44
|
|
|
45
|
+
merge_catalog_parser = subparsers.add_parser('merge-catalog', help='Merge catalog files')
|
|
46
|
+
merge_catalog.init_parser(merge_catalog_parser)
|
|
47
|
+
merge_catalog_parser.set_defaults(func=merge_catalog.command)
|
|
48
|
+
|
|
40
49
|
args = parser.parse_args()
|
|
41
50
|
if hasattr(args, 'func'):
|
|
42
51
|
args.func(args)
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import os
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def init_parser(parser):
|
|
5
|
+
# Add the arguments
|
|
6
|
+
parser.add_argument('user_parameter_file',
|
|
7
|
+
metavar='file_path',
|
|
8
|
+
type=str,
|
|
9
|
+
help='the path to the user parameter file')
|
|
10
|
+
|
|
11
|
+
# working dir
|
|
12
|
+
parser.add_argument('--work-dir',
|
|
13
|
+
'-d',
|
|
14
|
+
metavar='work_dir',
|
|
15
|
+
type=str,
|
|
16
|
+
default='.',
|
|
17
|
+
help='the working directory')
|
|
18
|
+
|
|
19
|
+
# threads
|
|
20
|
+
parser.add_argument('--n-proc',
|
|
21
|
+
'-n',
|
|
22
|
+
metavar='n_proc',
|
|
23
|
+
type=int,
|
|
24
|
+
default=1,
|
|
25
|
+
help='the number of cpu to use, default to 1. If it set to 0, '
|
|
26
|
+
'it will use the value from the user parameter file.')
|
|
27
|
+
|
|
28
|
+
# jobs
|
|
29
|
+
parser.add_argument('--jobs',
|
|
30
|
+
'-j',
|
|
31
|
+
metavar='jobs',
|
|
32
|
+
type=str,
|
|
33
|
+
default=None,
|
|
34
|
+
help='the range of jobs to run, e.g., 0-9')
|
|
35
|
+
|
|
36
|
+
# compress json
|
|
37
|
+
parser.add_argument('--compress_json',
|
|
38
|
+
action='store_true',
|
|
39
|
+
default=True,
|
|
40
|
+
help='compress the json files, by default True')
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def command(args):
|
|
44
|
+
from pycwb.workflow.batch import batch_run
|
|
45
|
+
|
|
46
|
+
# Run the search function with the specified user parameter file
|
|
47
|
+
batch_run(args.user_parameter_file, working_dir=args.work_dir,
|
|
48
|
+
jobs=args.jobs, compress_json=args.compress_json, n_proc=args.n_proc)
|
|
@@ -8,13 +8,20 @@ def init_parser(parser):
|
|
|
8
8
|
type=str,
|
|
9
9
|
help='the path to the user parameter file')
|
|
10
10
|
|
|
11
|
-
parser.add_argument('--
|
|
12
|
-
'-
|
|
11
|
+
parser.add_argument('--cluster',
|
|
12
|
+
'-c',
|
|
13
13
|
metavar='job_submission_system',
|
|
14
14
|
type=str,
|
|
15
15
|
choices=['condor', 'slurm'],
|
|
16
|
+
default='condor',
|
|
16
17
|
help='the submit option, the available options are condor and slurm')
|
|
17
18
|
|
|
19
|
+
parser.add_argument('--submit',
|
|
20
|
+
'-s',
|
|
21
|
+
action='store_true',
|
|
22
|
+
default=False,
|
|
23
|
+
help='submit the jobs to the job submission system')
|
|
24
|
+
|
|
18
25
|
# working dir
|
|
19
26
|
parser.add_argument('--work-dir',
|
|
20
27
|
'-d',
|
|
@@ -38,12 +45,18 @@ def init_parser(parser):
|
|
|
38
45
|
default=os.environ.get('CONDA_DEFAULT_ENV'),
|
|
39
46
|
help='the conda environment')
|
|
40
47
|
|
|
48
|
+
# additional init
|
|
49
|
+
parser.add_argument('--additional-init',
|
|
50
|
+
'-a',
|
|
51
|
+
metavar='additional_init',
|
|
52
|
+
type=str,
|
|
53
|
+
help='additional initialization commands')
|
|
54
|
+
|
|
41
55
|
# accounting_group
|
|
42
56
|
parser.add_argument('--accounting-group',
|
|
43
57
|
'-g',
|
|
44
58
|
metavar='accounting_group',
|
|
45
59
|
type=str,
|
|
46
|
-
default='ligo.sim.o4.burst.allsky.cwboffline',
|
|
47
60
|
help='the condor accounting group')
|
|
48
61
|
|
|
49
62
|
# threads
|
|
@@ -51,28 +64,23 @@ def init_parser(parser):
|
|
|
51
64
|
'-n',
|
|
52
65
|
metavar='n_proc',
|
|
53
66
|
type=int,
|
|
54
|
-
default=
|
|
55
|
-
help='the number of cpu to use,
|
|
67
|
+
default=1,
|
|
68
|
+
help='the number of cpu to use, default to 1. If it set to 0, '
|
|
56
69
|
'it will use the value from the user parameter file.')
|
|
57
70
|
|
|
58
|
-
#
|
|
59
|
-
parser.add_argument('--
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
71
|
+
# job_per_worker
|
|
72
|
+
parser.add_argument('--job-per-worker',
|
|
73
|
+
'-j',
|
|
74
|
+
metavar='job_per_worker',
|
|
75
|
+
type=int,
|
|
76
|
+
default=5,
|
|
77
|
+
help='the number of jobs per worker')
|
|
63
78
|
|
|
64
79
|
# compress json
|
|
65
80
|
parser.add_argument('--compress_json',
|
|
66
81
|
action='store_true',
|
|
67
|
-
default=
|
|
68
|
-
help='compress the json files, by default
|
|
69
|
-
|
|
70
|
-
# serve name
|
|
71
|
-
parser.add_argument('--name',
|
|
72
|
-
metavar='name',
|
|
73
|
-
type=str,
|
|
74
|
-
default='pycwb',
|
|
75
|
-
help='the name of the serve')
|
|
82
|
+
default=True,
|
|
83
|
+
help='compress the json files, by default True')
|
|
76
84
|
|
|
77
85
|
# list number of jobs
|
|
78
86
|
parser.add_argument('--list-n-jobs',
|
|
@@ -88,10 +96,10 @@ def init_parser(parser):
|
|
|
88
96
|
|
|
89
97
|
|
|
90
98
|
def command(args):
|
|
91
|
-
from pycwb.workflow.batch import
|
|
99
|
+
from pycwb.workflow.batch import batch_setup
|
|
92
100
|
|
|
93
101
|
if args.list_n_jobs or args.list_jobs:
|
|
94
|
-
jobs =
|
|
102
|
+
jobs = batch_setup(args.user_parameter_file, working_dir=args.work_dir, n_proc=1, dry_run=True)
|
|
95
103
|
|
|
96
104
|
print(f"Number of jobs: {len(jobs)}")
|
|
97
105
|
|
|
@@ -105,6 +113,18 @@ def command(args):
|
|
|
105
113
|
|
|
106
114
|
return 0
|
|
107
115
|
|
|
116
|
+
if args.cluster is 'slurm':
|
|
117
|
+
print("Slurm is not supported yet.")
|
|
118
|
+
return 1
|
|
119
|
+
|
|
108
120
|
# Run the search function with the specified user parameter file
|
|
109
|
-
|
|
110
|
-
|
|
121
|
+
batch_setup(args.user_parameter_file, working_dir=args.work_dir,
|
|
122
|
+
compress_json=args.compress_json,
|
|
123
|
+
cluster=args.cluster,
|
|
124
|
+
conda_env=args.conda_env,
|
|
125
|
+
additional_init=args.additional_init,
|
|
126
|
+
n_proc=args.n_proc,
|
|
127
|
+
accounting_group=args.accounting_group,
|
|
128
|
+
job_per_worker=args.job_per_worker,
|
|
129
|
+
submit=args.submit,
|
|
130
|
+
overwrite=args.force_overwrite, )
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import os
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def init_parser(parser):
|
|
5
|
+
# working dir
|
|
6
|
+
parser.add_argument('--work-dir',
|
|
7
|
+
'-d',
|
|
8
|
+
metavar='work_dir',
|
|
9
|
+
type=str,
|
|
10
|
+
default='.',
|
|
11
|
+
help='the working directory')
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
def command(args):
|
|
15
|
+
from pycwb.workflow.merge import merge_catalog
|
|
16
|
+
|
|
17
|
+
# Run the search function with the specified user parameter file
|
|
18
|
+
merge_catalog(working_dir=args.work_dir)
|
|
@@ -35,7 +35,7 @@ def init_parser(parser):
|
|
|
35
35
|
# generate plot
|
|
36
36
|
parser.add_argument('--plot',
|
|
37
37
|
action='store_true',
|
|
38
|
-
default=
|
|
38
|
+
default=None,
|
|
39
39
|
help='generate the plot, by default False')
|
|
40
40
|
|
|
41
41
|
# compress json
|
|
@@ -65,7 +65,7 @@ def init_parser(parser):
|
|
|
65
65
|
|
|
66
66
|
|
|
67
67
|
def command(args):
|
|
68
|
-
from pycwb.workflow.
|
|
68
|
+
from pycwb.workflow.run import search
|
|
69
69
|
|
|
70
70
|
if args.list_n_jobs or args.list_jobs:
|
|
71
71
|
jobs = search(args.user_parameter_file, working_dir=args.work_dir, n_proc=1, dry_run=True)
|
|
@@ -83,5 +83,5 @@ def command(args):
|
|
|
83
83
|
return 0
|
|
84
84
|
|
|
85
85
|
# Run the search function with the specified user parameter file
|
|
86
|
-
search(args.user_parameter_file, working_dir=args.work_dir, n_proc=args.n_proc,
|
|
86
|
+
search(args.user_parameter_file, working_dir=args.work_dir, n_proc=args.n_proc,
|
|
87
87
|
overwrite=args.force_overwrite, plot=args.plot, compress_json=args.compress_json)
|
|
@@ -221,3 +221,6 @@ class Config:
|
|
|
221
221
|
logger.info(f"MRA catalog has tag {wdm_MRA.tag}, updating beta order and precision from MRA catalog")
|
|
222
222
|
self.WDM_beta_order, self.WDM_precision = int(wdm_MRA.beta_order), int(wdm_MRA.precision)
|
|
223
223
|
|
|
224
|
+
@staticmethod
|
|
225
|
+
def get_precision(cluster_size_threshold, healpix_order):
|
|
226
|
+
return cluster_size_threshold+65536*healpix_order
|
|
@@ -51,6 +51,18 @@ schema = {
|
|
|
51
51
|
"default": False,
|
|
52
52
|
"cwb": False
|
|
53
53
|
},
|
|
54
|
+
"save_injection": {
|
|
55
|
+
"type": "boolean",
|
|
56
|
+
"description": "save injected waveform",
|
|
57
|
+
"default": False,
|
|
58
|
+
"cwb": False
|
|
59
|
+
},
|
|
60
|
+
"plot_injection": {
|
|
61
|
+
"type": "boolean",
|
|
62
|
+
"description": "plot injected waveform",
|
|
63
|
+
"default": False,
|
|
64
|
+
"cwb": False
|
|
65
|
+
},
|
|
54
66
|
"save_sky_map": {
|
|
55
67
|
"type": "boolean",
|
|
56
68
|
"description": "save sky maps to json",
|
|
@@ -69,6 +81,12 @@ schema = {
|
|
|
69
81
|
"default": False,
|
|
70
82
|
"cwb": False
|
|
71
83
|
},
|
|
84
|
+
"use_root_supercluster": {
|
|
85
|
+
"type": "boolean",
|
|
86
|
+
"description": "use cwb supercluster, if false use python version",
|
|
87
|
+
"default": True,
|
|
88
|
+
"cwb": False
|
|
89
|
+
},
|
|
72
90
|
"nproc": {
|
|
73
91
|
"type": "integer",
|
|
74
92
|
"description": "number of processes",
|
|
@@ -301,9 +319,8 @@ schema = {
|
|
|
301
319
|
},
|
|
302
320
|
"netRHO": {
|
|
303
321
|
"type": "number",
|
|
304
|
-
"description": "[>4.0] coherent network SNR (supercluster, likelihood)",
|
|
322
|
+
"description": "[>4.0] coherent network SNR (supercluster, likelihood), if <=0 then use the new statistics for XGBoost",
|
|
305
323
|
"default": 4.0,
|
|
306
|
-
"minimum": 4.0,
|
|
307
324
|
},
|
|
308
325
|
"netCC": {
|
|
309
326
|
"type": "number",
|
|
@@ -123,6 +123,9 @@ def coherence_single_res(i, config, tf_maps, nRMS_list, up_n=None, net=None):
|
|
|
123
123
|
|
|
124
124
|
# produce TF maps with max over the sky energy
|
|
125
125
|
alp = 0.0
|
|
126
|
+
|
|
127
|
+
# FIXME: max time delay is different to pycbc
|
|
128
|
+
config.max_delay = net.get_max_delay()
|
|
126
129
|
for n in range(len(config.ifo)):
|
|
127
130
|
ts = convert_to_wavearray(tf_maps[n])
|
|
128
131
|
ts.Edge = config.segEdge
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import math
|
|
2
|
+
import numba
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
@numba.jit(nopython=True)
|
|
6
|
+
def threshold(tf_maps, nIFO, Edge, p, shape):
|
|
7
|
+
"""
|
|
8
|
+
Calculate WaveBurst energy threshold for a given black pixel probability p
|
|
9
|
+
and single detector Gamma distribution shape. TF data should contain pixel energy.
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
# The WSeries, wavearray and iGamma should be replaced with equivalent
|
|
13
|
+
# Python implementation or library
|
|
14
|
+
|
|
15
|
+
N = nIFO
|
|
16
|
+
pw = tf_maps[0]
|
|
17
|
+
M = pw.maxLayer() + 1
|
|
18
|
+
nL = int(Edge * pw.w_rate * M)
|
|
19
|
+
nR = len(pw.data) - nL - 1
|
|
20
|
+
w = pw.copy()
|
|
21
|
+
|
|
22
|
+
for i in range(1, N):
|
|
23
|
+
w += tf_maps[i]
|
|
24
|
+
|
|
25
|
+
amp, avr, bbb, alp = 0, 0, 0, 0
|
|
26
|
+
nn = 0
|
|
27
|
+
|
|
28
|
+
for i in range(nL, nR):
|
|
29
|
+
amp = w.data[i]
|
|
30
|
+
if amp > N * 100:
|
|
31
|
+
amp = N * 100
|
|
32
|
+
if amp > 0.001:
|
|
33
|
+
avr += amp
|
|
34
|
+
bbb += math.log(amp)
|
|
35
|
+
nn += 1
|
|
36
|
+
|
|
37
|
+
avr /= nn
|
|
38
|
+
alp = math.log(avr) - bbb / nn
|
|
39
|
+
alp = (3 - alp + math.sqrt((alp - 3) * (alp - 3) + 24 * alp)) / (12 * alp)
|
|
40
|
+
|
|
41
|
+
bbb = p * alp / shape
|
|
42
|
+
|
|
43
|
+
# Assuming iGamma is defined elsewhere or imported from some library/module
|
|
44
|
+
return avr * iGamma(alp, bbb) / alp / 2
|
|
45
|
+
|
|
46
|
+
# Call the function
|
|
47
|
+
# result = threshold(tf_maps, nIFO, Edge, p, shape)
|
|
48
|
+
# print(result)
|
|
@@ -12,20 +12,20 @@ logger = logging.getLogger(__name__)
|
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
def create_job_segment_from_config(config):
|
|
15
|
+
logger.info("-" * 80)
|
|
16
|
+
logger.info("Initializing job segments")
|
|
17
|
+
|
|
15
18
|
if not config.simulation:
|
|
16
|
-
logger.info("-" * 80)
|
|
17
|
-
logger.info("Initializing job segments")
|
|
18
19
|
job_segments = select_job_segment(config.dq_files, config.ifo, config.frFiles,
|
|
19
20
|
config.segLen, config.segMLS, config.segEdge, config.segOverlap,
|
|
20
21
|
config.rateANA, config.l_high)
|
|
21
|
-
|
|
22
|
-
# log number of segments
|
|
23
|
-
logger.info(f"Number of segments: {len(job_segments)}")
|
|
24
|
-
logger.info("-" * 80)
|
|
25
22
|
else:
|
|
26
23
|
job_segments = create_job_segment_from_injection(config.ifo, config.simulation, config.injection)
|
|
27
|
-
for job_seg in job_segments:
|
|
28
|
-
|
|
24
|
+
# for job_seg in job_segments:
|
|
25
|
+
# logger.info(job_seg)
|
|
26
|
+
# log number of segments
|
|
27
|
+
logger.info(f"Number of segments: {len(job_segments)}")
|
|
28
|
+
logger.info("-" * 80)
|
|
29
29
|
return job_segments
|
|
30
30
|
|
|
31
31
|
|
|
@@ -4,13 +4,13 @@ import logging
|
|
|
4
4
|
from pycwb.config import Config
|
|
5
5
|
from pycwb.modules.cwb_conversions import convert_fragment_clusters_to_netcluster, \
|
|
6
6
|
convert_netcluster_to_fragment_clusters
|
|
7
|
-
from pycwb.types.network_cluster import FragmentCluster
|
|
7
|
+
from pycwb.types.network_cluster import FragmentCluster, Cluster
|
|
8
8
|
from pycwb.types.network_event import Event
|
|
9
9
|
|
|
10
10
|
logger = logging.getLogger(__name__)
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
def likelihood(config, network, fragment_clusters):
|
|
13
|
+
def likelihood(config, network, fragment_clusters) -> tuple[list[Event], list[Cluster], list[dict]]:
|
|
14
14
|
"""
|
|
15
15
|
calculate likelihood
|
|
16
16
|
|
|
@@ -107,7 +107,8 @@ def _likelihood(config, network, lag, cluster_id, fragment_cluster):
|
|
|
107
107
|
wdm_list = network.get_wdm_list()
|
|
108
108
|
for wdm in wdm_list:
|
|
109
109
|
wdm.setTDFilter(config.TDSize, config.upTDF)
|
|
110
|
-
|
|
110
|
+
# FIXME: precision setup in config
|
|
111
|
+
# network.net.precision = config.get_precision(100, 5)
|
|
111
112
|
network.set_delay_index(config.TDRate)
|
|
112
113
|
|
|
113
114
|
# sparse_table_list = sparse_table_from_fragment_clusters(config, tf_maps, [fragment_cluster])
|
|
@@ -5,13 +5,15 @@ import logging
|
|
|
5
5
|
logger = logging.getLogger(__name__)
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
def plot_statistics(cluster, key='likelihood', filename=None):
|
|
8
|
+
def plot_statistics(cluster, key='likelihood', gps_shift=0, filename=None):
|
|
9
9
|
"""Plot the statistics of the event
|
|
10
10
|
|
|
11
11
|
:param cluster: cluster
|
|
12
12
|
:type cluster: Cluster
|
|
13
13
|
:param key: key of the statistics, defaults to 'likelihood'
|
|
14
14
|
:type key: str, optional
|
|
15
|
+
:param gps_shift: gps time shift, defaults to 0
|
|
16
|
+
:type gps_shift: int, optional
|
|
15
17
|
:param filename: path to save the plot, defaults to None
|
|
16
18
|
:type filename: str, optional
|
|
17
19
|
"""
|
|
@@ -20,7 +22,7 @@ def plot_statistics(cluster, key='likelihood', filename=None):
|
|
|
20
22
|
|
|
21
23
|
merged_map, start, dt, df = cluster.get_sparse_map(key)
|
|
22
24
|
|
|
23
|
-
plt = Spectrogram(merged_map, t0=start, dt=dt, f0=0, df=df).plot()
|
|
25
|
+
plt = Spectrogram(merged_map, t0=start + gps_shift, dt=dt, f0=0, df=df).plot()
|
|
24
26
|
plt.colorbar()
|
|
25
27
|
# save to png
|
|
26
28
|
if filename is not None:
|
|
@@ -55,11 +55,15 @@ def check_and_resample(data, config, ifo_index):
|
|
|
55
55
|
# DC correction
|
|
56
56
|
if config.dcCal[ifo_index] > 0 and config.dcCal[ifo_index] != 1.0:
|
|
57
57
|
data.data *= config.dcCal[config.ifo.indexof(ifo_index)]
|
|
58
|
+
logger.info(f"DC correction: {config.dcCal[ifo_index]}")
|
|
58
59
|
|
|
59
60
|
# resampling
|
|
60
61
|
if config.fResample > 0:
|
|
61
62
|
logger.info(f"Resampling data from {data.sample_rate} to {config.fResample}")
|
|
62
|
-
data = data.resample(1.0 / config.fResample)
|
|
63
|
+
# data = data.resample(1.0 / config.fResample)
|
|
64
|
+
w = convert_to_wavearray(data)
|
|
65
|
+
w.Resample(config.fResample)
|
|
66
|
+
data = convert_wavearray_to_pycbc_timeseries(w)
|
|
63
67
|
|
|
64
68
|
new_sample_rate = data.sample_rate / (1 << config.levelR)
|
|
65
69
|
if new_sample_rate != config.inRate:
|