Skip to content
Snippets Groups Projects
Commit 7c884279 authored by Patrick Godwin's avatar Patrick Godwin
Browse files

add O2 rerank and injection only Makefile

parent 7da365ae
No related branches found
No related tags found
No related merge requests found
# condor commands
# Set the accounting tag from https://ldas-gridmon.ligo.caltech.edu/ldg_accounting/user
ACCOUNTING_TAG=ligo.dev.o3.cbc.uber.gstlaloffline
GROUP_USER=patrick.godwin
CONDOR_COMMANDS:=--condor-command=accounting_group=$(ACCOUNTING_TAG) --condor-command=accounting_group_user=$(GROUP_USER)
#########################
# Triggering parameters #
#########################
# The detectors to analyze
IFOS = H1 L1
# Minimum number of detecors working to use
MIN_IFOS = 1
# The GPS start time for analysis
START = 1187312718
# The GPS end time for analysis
STOP = 1187740818
# A user tag for the run
TAG = tag
# Run number
RUN=run_1
# A web directory for output
# cit & uwm
WEBDIR = ~/public_html/O3a/rerank_runs/$(TAG)/$(START)-$(STOP)-$(RUN)
# Atlas
#WEBDIR = ~/WWW/LSC/testing/$(TAG)/$(START)-$(STOP)-test_dag-$(RUN)
# The number of sub banks in each SVD bank file
NUMBANKS = 2
# the analysis directory to rerank
ANALYSIS_DIR = /path/to/analysis
##############
# Injections #
##############
# Change as appropriate, whitespace is important
MCHIRP_INJECTIONS := 0.78:1.67:$(ANALYSIS_DIR)/1_injections.xml 2.29:129.51:$(ANALYSIS_DIR)/2_injections.xml
###################################################################################
# Get some basic definitions. NOTE this comes from the share directory probably. #
###################################################################################
include ${LAL_PATH}/../git/gstlal/gstlal-inspiral/share/Makefile.offline_analysis_rules
# FIXME Is there a way to put this back in offline analysis rules?
BANK_CACHE_STRING:=H1=$(ANALYSIS_DIR)/H1_split_bank.cache,L1=$(ANALYSIS_DIR)/L1_split_bank.cache
#BANK_CACHE_FILES:=$(ANALYSIS_DIR)/H1_split_bank.cache $(ANALYSIS_DIR)/L1_split_bank.cache
#BANK_CACHE_STRING:=H1=H1_split_bank.cache,L1=L1_split_bank.cache,V1=V1_split_bank.cache
#BANK_CACHE_FILES:=$(ANALYSIS_DIR)/H1_split_bank.cache $(ANALYSIS_DIR)/L1_split_bank.cache# $(ANALYSIS_DIR)/V1_split_bank.cache
# the point of this is to build the string e.g. H1=../bank/H1_bank.cache,L1=../bank/L1_bank.cache
############
# Workflow #
############
all : dag
@echo "Submit with: condor_submit_dag -maxjobs 3000 -maxidle 50 trigger_rerank_pipe.dag"
@echo "Monitor with: tail -f trigger_rerank_pipe.dag.dagman.out | grep -v -e ULOG -e monitoring"
@echo ""
# Run inspiral pipe to produce dag
dag : plots $(WEBDIR) lloid.cache dist_stats.cache $(ANALYSIS_DIR)/segments.xml.gz $(ANALYSIS_DIR)/vetoes.xml.gz
gstlal_inspiral_rerank_pipe \
--gps-start-time $(START) \
--gps-end-time $(STOP) \
--template-bank $(ANALYSIS_DIR)/SBANK_COMBINED-SBANK.xml.gz \
--web-dir $(WEBDIR) \
$(INJECTION_LIST) \
$(CONDOR_COMMANDS) \
--vetoes $(ANALYSIS_DIR)/vetoes.xml.gz \
--frame-segments-file $(ANALYSIS_DIR)/segments.xml.gz \
--frame-segments-name datasegments \
--lloid-cache lloid.cache \
--dist-stats-cache dist_stats.cache \
--dtdphi-file /ligo/home/ligo.org/chad.hanna/code/opt/share/gstlal/inspiral_dtdphi_pdf.h5 \
--bank-cache $(BANK_CACHE_STRING) \
--analysis-path $(ANALYSIS_DIR) \
--min-instruments $(MIN_IFOS) \
--ranking-stat-samples 4194304 \
--mass-model=ligo
sed -i '1s/^/JOBSTATE_LOG logs\/trigger_pipe.jobstate.log\n/' trigger_rerank_pipe.dag
@echo ""
lloid.cache :
cp -r $(ANALYSIS_DIR)/ligolw_add .
ls ligolw_add/*/*.xml.gz | lalapps_path2cache > $@
dist_stats.cache :
awk 1 $(ANALYSIS_DIR)/gstlal_inspiral_marginalize_likelihood/cache/*MARG_DIST_STATS*.cache > $@
# Make webpage directory and copy files across
$(WEBDIR) : $(MAKEFILE_LIST)
mkdir -p $(WEBDIR)/OPEN-BOX
cp $(MAKEFILE_LIST) $@
@echo ""
# Makes local plots directory
plots :
mkdir plots
@echo ""
clean :
-rm -rvf *.sub *.dag* *.cache logs *.sqlite plots *.html Images *.css *.js
-rm -rvf lalapps_run_sqlite/ ligolw_* gstlal_*
-rm -vf *marginalized*.xml.gz *-ALL_LLOID*.xml.gz
-rm -rf *_split_bank*
@echo ""
# main directory containing required files
MAIN_DIR=/path/to/analysis
# condor commands
# Set the accounting tag from https://ldas-gridmon.ligo.caltech.edu/ldg_accounting/user
ACCOUNTING_TAG=ligo.dev.o2.cbc.bbh.gstlaloffline
GROUP_USER=patrick.godwin
CONDOR_COMMANDS:=--condor-command=accounting_group=$(ACCOUNTING_TAG) --condor-command=accounting_group_user=$(GROUP_USER)
#########################
# Triggering parameters #
#########################
# The detectors to analyze
IFOS = H1 L1
# Minimum number of detecors working to use
MIN_IFOS = 1
# The GPS start time for analysis
START = 1187312718
# The GPS end time for analysis
STOP = 1187740818
# A user tag for the run
TAG = reorg3
# Run number
RUN = injection_rerun_1
# A web directory for output
WEBDIR = ~/public_html/inj_test/$(TAG)/$(START)-$(STOP)-$(RUN)
# The number of sub banks to process in parallel for each gstlal_inspiral job
NUMBANKS = 2
# The control peak time for the composite detection statistic. If set to 0 the
# statistic is disabled
PEAK = 0
# The length of autocorrelation chi-squared in sample points
AC_LENGTH = 351
# The minimum number of samples to include in a given time slice
SAMPLES_MIN = 2048
# The maximum number of samples to include in the 256 Hz or above time slices
SAMPLES_MAX_256 = 2048
# Low frequency cut off for the template bank placement
LOW_FREQUENCY_CUTOFF = 15.0
# Controls the overlap from sub bank to sub bank - helps mitigate edge effects
# in the SVD. Redundant templates will be removed
OVERLAP = 30
#############################
# additional options, e.g., #
#############################
ADDITIONAL_DAG_OPTIONS:=--samples-min $(SAMPLES_MIN) --samples-max-256 $(SAMPLES_MAX_256)
ZERO_LAG_DIR:=$(MAIN_DIR)/reorg4
##############
# Injections #
##############
# The seed is the string before the suffix _injections.xml
# Change as appropriate, whitespace is important
MCHIRP_INJECTIONS := 0.78:1.67:$(ZERO_LAG_DIR)/1_injections.xml 2.29:129.51:$(ZERO_LAG_DIR)/2_injections.xml
# The Channel names. FIXME sadly you have to change the CHANNEL_NAMES string if
# you want to analyze a different set of IFOS
H1_CHANNEL=DCH-CLEAN_STRAIN_C02
L1_CHANNEL=DCH-CLEAN_STRAIN_C02
CHANNEL_NAMES:=--channel-name=H1=$(H1_CHANNEL) --channel-name=L1=$(L1_CHANNEL)
# Set to original run directory and and zero lag database.
# Zero lag run
ZERO_LAG_DB:=$(ZERO_LAG_DIR)/H1L1-ALL_LLOID-1187312718-428100.sqlite
MASS_MODEL:=gstlal_inspiral_mass_model/H1L1-ALL_MASS_MODEL-1187312718-428100.h5
# These shouldn't need to be changed.
PSD_CACHE:=$(ZERO_LAG_DIR)/reference_psd.cache
REF_PSD:=$(ZERO_LAG_DIR)/gstlal_median_of_psds/11873/H1L1-REFERENCE_PSD-1187312718-428100.xml.gz
SEGMENTS:=$(ZERO_LAG_DIR)/segments.xml.gz
VETOES:=$(ZERO_LAG_DIR)/vetoes.xml.gz
FRAME_CACHE:=$(ZERO_LAG_DIR)/frame.cache
TISI:=$(ZERO_LAG_DIR)/tisi.xml
TISI_INJ:=$(ZERO_LAG_DIR)/inj_tisi.xml
MARG:=$(ZERO_LAG_DIR)/marginalized_likelihood.xml.gz
MARG_ZL:=$(ZERO_LAG_DIR)/marginalized_likelihood_with_zerolag.xml.gz
POSTMARG:=$(ZERO_LAG_DIR)/post_marginalized_likelihood.xml.gz
WORK_DIR:=$(PWD)
#
# Get some basic definitions. NOTE this comes from the share directory probably.
#
include ${LAL_PATH}../git/gstlal/gstlal-inspiral/share/Makefile.offline_analysis_rules
#include $(MAIN_DIR)/Makefile.offline_analysis_rules
# FIXME Is there a way to put this back in offline analysis rules?
#BANK_CACHE_STRING:=H1=H1_split_bank.cache,L1=L1_split_bank.cache
BANK_CACHE_FILES:=H1_split_bank.cache L1_split_bank.cache
#
# Workflow
#
all : dag SNR_sed
SNR_sed : gstlal_inspiral_injection_snr.sub
sed -i 's@environment = GST_REGISTRY_UPDATE=no;@environment = "GST_REGISTRY_UPDATE=no LD_PRELOAD=$(MKLROOT)/lib/intel64/libmkl_core.so"@g' gstlal_inspiral_injection_snr.sub
dag : svd_bank.cache dist_stats.cache $(BANK_CACHE_FILES) $(PSD_CACHE) $(REF_PSD) $(ZERO_LAG_DB) $(SEGMENTS) $(VETOES) $(FRAME_CACHE) $(TISI) $(TISI_INJ) plots $(WEBDIR) $(INJECTIONS) $(MARG) $(MARG_LZ) $(POSTMARG) $(MASS_MODEL)
cp $(MARG) .
cp $(POSTMARG) .
cp $(MARG_ZL) .
cp $(REF_PSD) .
cp $(PSD_CACHE) .
gstlal_inspiral_pipe \
--injection-only \
--data-source frames \
--gps-start-time $(START) \
--gps-end-time $(STOP) \
--frame-cache $(FRAME_CACHE) \
--frame-segments-file $(SEGMENTS) \
--vetoes $(VETOES) \
--frame-segments-name datasegments \
--control-peak-time $(PEAK) \
--fir-stride 1 \
--web-dir $(WEBDIR) \
--time-slide-file $(TISI) \
--inj-time-slide-file $(TISI_INJ) \
$(INJECTION_LIST) \
$(CHANNEL_NAMES) \
$(CONDOR_COMMANDS) \
--tolerance 0.9999 \
--flow $(LOW_FREQUENCY_CUTOFF) \
--autocorrelation-length $(AC_LENGTH) \
--overlap $(OVERLAP) \
--bank-cache $(BANK_CACHE_STRING) \
--svd-bank-cache svd_bank.cache \
--dist-stats-cache dist_stats.cache \
--non-injection-db $(ZERO_LAG_DB) \
--psd-cache reference_psd.cache \
--reference-psd $(REF_PSD) \
--mass-model=ligo \
--marginalized-likelihood-file marginalized_likelihood.xml.gz \
--marginalized-likelihood-with-zerolag-file marginalized_likelihood_with_zerolag.xml.gz \
--min-instruments $(MIN_IFOS) \
$(ADDITIONAL_DAG_OPTIONS) \
--ranking-stat-samples 4194304
sed -i '1s/^/JOBSTATE_LOG logs\/trigger_pipe.jobstate.log\n/' trigger_pipe.dag
$(WEBDIR) : $(MAKEFILE_LIST)
mkdir -p $(WEBDIR)/OPEN-BOX
plots :
mkdir plots
$(MASS_MODEL) :
mkdir -p gstlal_inspiral_mass_model
cp $(ZERO_LAG_DIR)/$(MASS_MODEL) $@
%_split_bank.cache :
cp $(ZERO_LAG_DIR)/$@ .
dist_stats.cache :
cd $(ZERO_LAG_DIR)/gstlal_inspiral_marginalize_likelihood && ls | grep "MARG_DIST_STATS" | lalapps_path2cache | sort > $(WORK_DIR)/dist_stats.cache
svd_bank.cache :
cd $(ZERO_LAG_DIR)/gstlal_svd_bank && ls | grep "SVD" | lalapps_path2cache | sort > $(WORK_DIR)/svd_bank.cache
clean :
-rm -rvf *.sub *.dag* *.cache *.sh logs *.sqlite plots *.html Images *.css *.js
-rm -rvf lalapps_run_sqlite/ ligolw_* gstlal_*
-rm -vf segments.xml.gz tisi.xml H1-*.xml H1_*.xml L1-*.xml L1_*xml V1-*.xml V1_*xml ?_injections.xml ????-*_split_bank-*.xml vetoes.xml.gz
-rm -vf *marginalized*.xml.gz *-ALL_LLOID*.xml.gz
-rm -vf tisi0.xml tisi1.xml
-rm -rf *_split_bank*
-rm -rf nogaps.xml segdb.xml
-rm -rf bank_aligned_spin.xml.gz
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment