예제 #1
0
from todloop.base import TODLoop
from todloop.routines import Logger, SaveData, DataLoader
from routines import RemoveMCE, TrimEdges, FindCosigs, FindEvents

tod_index = 152
loop = TODLoop()
loop.add_tod_list("../data/covered_tods.txt")
loop.add_routine(DataLoader(input_dir="../compile_cuts/outputs/covered_tods/", output_key="cut"))
loop.add_routine(RemoveMCE(input_key="cut", output_key="cut"))
loop.add_routine(TrimEdges(input_key="cut", output_key="cut"))
loop.add_routine(FindCosigs(input_key="cut", output_key="cosig", season='2017'))
loop.add_routine(FindEvents(input_key="cosig", output_key="data"))
loop.add_routine(Logger(input_key="data"))
loop.add_routine(SaveData(input_key="data", output_dir="../outputs/covered_tods_cosig/"))

loop.run(tod_index, tod_index + 1)
예제 #2
0
from todloop.base import TODLoop
from todloop.routines import DataLoader, Logger
from todloop.tod import TODLoader
from routines import ExtractRaDec
from calibration.routines import FixOpticalSign, CalibrateTOD


loop = TODLoop()
loop.add_tod_list("../data/s17_icecube_list.txt")

# Load TODs
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data",output_key="tod_data"))

# A routine that loads tod data associated with a specific ra / dec ranges
loop.add_routine(ExtractRaDec(input_key="tod_data", output_key="snippets", \
                              ra_range=[1.29, 1.40], dec_range=[0.082, 0.118]))

#loop.add_routine(Logger(input_key="snippets"))
loop.run(0, 100)
from todloop.routines import DataLoader
from todloop.tod import TODLoader
from todloop.base import TODLoop
from routines import TimeSeries, PlotGlitches, Energy, SaveEvents, NPixelStudy, EnergyStudy, CRCorrelationFilter
from calibration.routines import FixOpticalSign, CalibrateTOD
"""
INITIALIZE TODLoop
"""
loop = TODLoop()
tod_id = 0
loop.add_tod_list("../data/covered_tods.txt")
loop.add_routine(
    DataLoader(input_dir="../outputs/covered_tods_cosig/", output_key="cuts"))
"""
LOAD TOD DATA
"""
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data", output_key="tod_data"))
"""
ROUTINES
"""
loop.add_routine(TimeSeries(tod_key="tod_data", output_key="timeseries"))
loop.add_routine(
    Energy(timeseries_key="timeseries", output_key="energy_calculator"))
loop.add_routine(
    CRCorrelationFilter(timeseries_key="timeseries",
                        cosig_key="cuts",
                        tod_key="tod_data",
                        output_key="cr_cuts"))
#loop.add_routine(PlotGlitches(tag=tod_id,cosig_key="cr_cuts",tod_key="tod_data",timeseries_key = "timeseries"))
예제 #4
0
from todloop.tod import TODLoader, TODInfoLoader
from todloop.base import TODLoop
from routines import CRCorrelationFilter, FRBCorrelationFilter, SlowCorrelationFilter, DurationFilter, PixelFilter,ScatterPlot,EdgeFilter
from deconv_routine import Deconvolution
from calibration.routines import FixOpticalSign, CalibrateTOD
from plotter import PlotGlitches
from histogram import PlotHistogram, CreateHistogram

"""
LOAD CUTS DATA
"""

loop = TODLoop()
tod_id = 10000
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_routine(DataLoader(input_dir="../outputs/s16_pa3_list/cosig/", output_key="cuts"))


"""
LOAD FILTERED DATA (UPTO TRACK 5000) AND PLOT A HISTOGRAM OF # OF PIXELS AFFECTED
"""
#loop.add_routine(DataLoader(input_dir="../outputs/s16_pa3_list/events/",output_key ="events"))
#loop.add_routine(Logger(input_key="events"))
#loop.add_routine(PlotHistogram(events_key="events"))
#loop.add_routine(CreateHistogram(cosig_key="cuts"))

"""
LOAD TOD DATA 
"""

loop.add_routine(TODLoader(output_key="tod_data"))
from todloop.base import TODLoop
from todloop.tod import TODInfoLoader
from todloop.routines import DataLoader
from todloop.filters import PixelFilter, DurationFilter
from routines import GlitchHourStudy, GlitchPWVStudy, GlitchAzStudy

loop = TODLoop()
loop.add_tod_list("data/s16_pa3_list.txt")
loop.add_routine(TODInfoLoader(output_key="tod_info"))
loop.add_routine(
    DataLoader(input_dir="outputs/coincident_signals_subset/",
               output_key="cosig"))
#loop.add_routine(PixelFilter(input_key="cosig", output_key="cosig", max_pixels=7))
#loop.add_routine(DurationFilter(input_key="cosig", output_key="cosig", max_duration=10))
#loop.add_routine(GlitchHourStudy())
#loop.add_routine(GlitchPWVStudy())
loop.add_routine(GlitchAzStudy())
loop.run(0, 14000)
예제 #6
0
from todloop.routines import Logger, DataLoader
from todloop.tod import TODLoader, TODInfoLoader, TODSelector
from todloop.base import TODLoop
from routines import CRCorrelationFilter, FRBCorrelationFilter, SlowCorrelationFilter, DurationFilter, PixelFilter, ScatterPlot
from deconv_routine import Deconvolution
from calibration.routines import FixOpticalSign, CalibrateTOD
from plotter import PlotGlitches
from histogram import PlotHistogram, CreateHistogram
"""
LOAD CUTS DATA
"""

loop = TODLoop()
tod_id = 12501
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_routine(
    DataLoader(input_dir="../outputs/s16_pa3_list/cosig/", output_key="cuts"))
"""
LOAD TOD DATA 
"""

loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data", output_key="tod_data"))
"""
LOAD FILTERED DATA (UPTO TRACK 5000) AND PLOT A HISTOGRAM OF # OF PIXELS AFFECTED
"""
loop.add_routine(TODSelector(tod_list="tod_list"))
loop.add_routine(CreateHistogram(cosig_key="cuts", tod_key="tod_data"))
"""
FILTER ROUTINES 
"""
from todloop.routines import Logger, DataLoader, SaveData
from todloop.tod import TODLoader, TODInfoLoader
from todloop.base import TODLoop
from routines import CosigToEvent
import sys


loop = TODLoop()
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_routine(DataLoader(input_dir="../outputs/s16_pa3_list/cosig/", output_key="cosig"))
loop.add_routine(CosigToEvent(input_key="cosig", output_key="events"))
loop.add_routine(SaveData(input_key="events", output_dir="../outputs/s16_pa3_list/events_raw/"))

start = int(sys.argv[1])
end = int(sys.argv[2])
loop.run(start,end)








from todloop.routines import Logger, DataLoader, SaveData
from todloop.tod import TODLoader, TODInfoLoader
from todloop.base import TODLoop
from correlation.routines import CRCorrelationFilter, FRBCorrelationFilter, SlowCorrelationFilter, DurationFilter, PixelFilter, ScatterPlot, EdgeFilter
from calibration.routines import FixOpticalSign, CalibrateTOD

loop = TODLoop()
loop.add_tod_list("../data/s17_icecube_list.txt")
loop.add_routine(
    DataLoader(input_dir="../outputs/s17_icecube_list/cosig/",
               output_key="cuts"))

# LOAD TOD DATA
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data", output_key="tod_data"))

#loop.add_routine(PixelFilter(input_key="cuts",output_key="frb_cuts"))
#loop.add_routine(DurationFilter(max_duration=5,input_key="frb_cuts",output_key="frb_cuts"))
#loop.add_routine(FRBCorrelationFilter(tod_key="tod_data", cosig_key="frb_cuts", output_key ="frb_events",all_coeff_output_key="frb_coeff"))
#loop.add_routine(EdgeFilter(input_key="frb_events",output_key="frb_events"))

#loop.add_routine(PixelFilter(min_pixels=4,max_pixels=10, input_key="cuts", output_key="cr_cuts"))
loop.add_routine(
    CRCorrelationFilter(tod_key="tod_data",
                        cosig_key="cuts",
                        output_key="events",
                        all_coeff_output_key="cr_coeff",
                        season='2017'))
loop.add_routine(
    SaveData(input_key="events",
from todloop.tod import TODLoader, TODInfoLoader
from todloop.base import TODLoop
from todloop.routines import Logger
from routines import CompileCuts

loop = TODLoop()
loop.add_tod_list("../data/covered_tods.txt")

glitchp = {
    'nSig': 10,
    'tGlitch': 0.007,
    'minSeparation': 30,
    'maxGlitch': 50000,
    'highPassFc': 6.0,
    'buffer': 0
}

loop.add_routine(TODLoader(output_key="tod_data", abspath=True))
# loop.add_routine(TODInfoLoader(output_key="tod_info"))
loop.add_routine(
    CompileCuts(input_key="tod_data",
                glitchp=glitchp,
                output_dir="outputs/covered_tods/"))

loop.run(0, 153)
예제 #10
0
from todloop.base import TODLoop
from todloop.tod import TODLoader
from routines import FixOpticalSign

loop = TODLoop()
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.run(0, 1)
예제 #11
0
from todloop.base import TODLoop
from todloop.routines import Logger, SaveData, DataLoader
from coincident_signals.routines import RemoveMCE, TrimEdges, FindCosigs, FindEvents

loop = TODLoop()
loop.add_tod_list("data/s17_icecube_list.txt")
loop.add_routine(DataLoader(input_dir="outputs/s17_icecube_list/cut/", output_key="cut"))
loop.add_routine(RemoveMCE(input_key="cut", output_key="cut"))
loop.add_routine(TrimEdges(input_key="cut", output_key="cut"))
loop.add_routine(FindCosigs(input_key="cut", output_key="cosig", season="2017"))
loop.add_routine(FindEvents(input_key="cosig", output_key="data"))
loop.add_routine(Logger(input_key="data"))
loop.add_routine(SaveData(input_key="data", output_dir="outputs/s17_icecube_list/cosig/"))

loop.run(0, 155)
예제 #12
0
from todloop.event import LoadRaDec, NPixelFilter, CoeffFilter
from todloop.base import TODLoop
from todloop.routines import DataLoader, Logger
from routines import SpatialStudy

loop = TODLoop()
loop.add_tod_list("../data/s16_pa3_list.txt")
# loop.add_skip([340, 956, 1041, 1066, 1099, 1609])  # problematic ones
loop.add_routine(
    DataLoader(input_dir="../outputs/s16_pa3_list/events/",
               output_key="events"))
loop.add_routine(
    NPixelFilter(min_pixels=1,
                 max_pixels=20,
                 input_key="events",
                 output_key="events"))
# loop.add_routine(CoeffFilter(min_coeff=0.9, input_key="events", output_key="events"))
# loop.add_routine(Logger(input_key="events"))

loop.add_routine(SpatialStudy(input_key="events"))
loop.run(0, 5000)
loop = TODLoop()
tod_id = 10000
"""
ICECUBE
"""
"""
loop.add_tod_list("../data/s17_icecube_list.txt")
loop.add_routine(DataLoader(input_dir="../outputs/s17_icecube_list/cosig/", output_key="cuts"))
"""
"""
UNCOVERED
"""

#"""
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_routine(
    DataLoader(input_dir="../outputs/s16_pa3_list/cosig/", output_key="cuts"))
#"""
"""
COVERED
"""
"""
loop.add_tod_list("../data/covered_tods.txt")
loop.add_routine(DataLoader(input_dir="../outputs/covered_tods_cosig/", output_key="cuts"))
"""
"""
LOAD TOD DATA
"""
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data", output_key="tod_data"))
"""
예제 #14
0
from todloop.base import TODLoop
from todloop.tod import TODInfoLoader
from todloop.routines import DataLoader
from routines import NPixelStudy, CRHourStudy, CRPWVStudy, DurationStudy
from todloop.event import NPixelFilter, CoeffFilter

loop = TODLoop()
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_routine(
    DataLoader(input_dir="../outputs/s16_pa3_list/events/",
               output_key="events"))

# loop.add_routine(NPixelFilter(min_pixels=0, max_pixels=20, input_key="events", output_key="events"))
# loop.add_routine(CoeffFilter(min_coeff=0.9, input_key="events", output_key="events"))
loop.add_routine(NPixelStudy())
loop.add_routine(DurationStudy())
# loop.add_routine(TODInfoLoader(output_key="tod_info"))
# loop.add_routine(CRHourStudy())
# loop.add_routine(CRPWVStudy())
loop.run(0, 10000)
예제 #15
0
from todloop.tod import TODLoader
from todloop.base import TODLoop
from routines import CompileCuts
import sys

loop = TODLoop()
loop.add_tod_list("data/s16_pa3_list.txt")

glitchp = {
    'nSig': 10,
    'tGlitch': 0.007,
    'minSeparation': 30,
    'maxGlitch': 50000,
    'highPassFc': 6.0,
    'buffer': 0
}

loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(
    CompileCuts(input_key="tod_data",
                glitchp=glitchp,
                output_dir="outputs/s16_pa3_list/cuts_new/"))

start = int(sys.argv[1])
end = int(sys.argv[2])
loop.run(start, end)
예제 #16
0
loop = TODLoop()
tod_id = 10000
"""
ICECUBE
"""
"""
loop.add_tod_list("../data/s17_icecube_list.txt")
loop.add_routine(DataLoader(input_dir="../outputs/s17_icecube_list/cosig/", output_key="cuts"))
"""
"""
UNCOVERED
"""

#"""
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_routine(
    DataLoader(input_dir="../outputs/s16_pa3_list/cosig/", output_key="cuts"))
#"""
"""
COVERED
"""
"""
loop.add_tod_list("../data/covered_tods.txt")
loop.add_routine(DataLoader(input_dir="../outputs/covered_tods_cosig/", output_key="cuts"))
"""
"""
LOAD TOD DATA
"""
loop.add_routine(TODLoader(output_key="tod_data"))
#loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
#loop.add_routine(CalibrateTOD(input_key="tod_data",output_key="tod_data"))
"""
예제 #17
0
from todloop.base import TODLoop
from todloop.routines import Logger, SaveData, DataLoader
from routines import RemoveMCE, TrimEdges, FindCosigs, FindEvents
import sys

loop = TODLoop()
loop.add_tod_list("data/s16_pa3_list.txt")
loop.add_routine(DataLoader(input_dir="outputs/s16_pa3_list/cuts/", output_key="cuts"))
loop.add_routine(RemoveMCE(input_key="cuts", output_key="cuts"))
loop.add_routine(TrimEdges(input_key="cuts", output_key="cuts"))
loop.add_routine(FindCosigs(input_key="cuts", output_key="cosig"))
loop.add_routine(FindEvents(input_key="cosig", output_key="data"))
loop.add_routine(Logger(input_key="data"))
loop.add_routine(SaveData(input_key="data", output_dir="outputs/s16_pa3_list/cosig/"))

start = int(sys.argv[1])
end = int(sys.argv[2])

loop.run(start, end)
예제 #18
0
from todloop.tod import TODLoader, TODInfoLoader
from todloop.base import TODLoop
from todloop.routines import SaveData, DataLoader
from todloop.filters import PixelFilter
from routines import FRBCorrelationFilter
from calibration.routines import FixOpticalSign, CalibrateTOD
from plotter import PlotGlitches
import sys


loop = TODLoop()
loop.add_tod_list("../data/s16_pa3_list.txt")

#will load the data stored in the folder specified one by one
#and store the loaded data in the shared date store under a key called data
loop.add_routine(DataLoader(input_dir="../outputs/s16_pa3_list/cosig/", output_key="cuts"))
loop.add_routine(PixelFilter(input_key="cuts", max_pixels=20))
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data",output_key="tod_data"))
loop.add_routine(FRBCorrelationFilter(tod_key="tod_data", cosig_key="cuts", output_key ="events"))
loop.add_routine(SaveData(input_key="events", output_dir="../outputs/s16_pa3_list/events_v2/"))

start = int(sys.argv[1])
end = int(sys.argv[2])
loop.run(start,end)




예제 #19
0
from todloop.base import TODLoop
from todloop.tod import TODLoader
from todloop.routines import Logger, DataLoader
from routines import PlotEvents
from todloop.event import NPixelFilter, DurationFilter, CoeffFilter
from calibration.routines import FixOpticalSign, CalibrateTOD

loop = TODLoop()
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_skip([1029, 1723])  # problematic ones
loop.add_routine(
    DataLoader(input_dir="../outputs/s16_pa3_list/events/",
               output_key="events"))
loop.add_routine(
    NPixelFilter(min_pixels=0,
                 max_pixels=8,
                 input_key="events",
                 output_key="events"))
loop.add_routine(
    DurationFilter(min_duration=0,
                   max_duration=20,
                   input_key="events",
                   output_key="events"))
loop.add_routine(
    CoeffFilter(min_coeff=0.8,
                max_coeff=1,
                input_key="events",
                output_key="events"))
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data", output_key="tod_data"))
예제 #20
0
from todloop.event import LoadRaDec, NPixelFilter, CoeffFilter, DurationFilter
from todloop.routines import DataLoader
from todloop.tod import TODLoader
from todloop.base import TODLoop
from routines import TimeSeries, PlotGlitches, Energy, SaveEvents, NPixelStudy, EnergyStudy, CRCorrelationFilter, RaDecFilter, Timer
from calibration.routines import FixOpticalSign, CalibrateTOD
"""
INITIALIZE TODLoop
"""
loop = TODLoop()
tod_id = 15
loop.add_routine(Timer())
"""
ICECUBE
"""
#"""
loop.add_tod_list("../data/s17_icecube_list.txt")
loop.add_skip([128, 129, 130, 131])
loop.add_routine(
    DataLoader(input_dir="../outputs/s17_icecube_list/cosig/",
               output_key="cuts"))
#"""
"""
LOAD TOD DATA
"""
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data", output_key="tod_data"))
"""
ROUTINES
"""
예제 #21
0
from todloop.event import LoadRaDec, NPixelFilter, CoeffFilter, DurationFilter
from todloop.base import TODLoop
from calibration.routines import FixOpticalSign
from todloop.routines import DataLoader, Logger
from todloop.tod import TODLoader
from plot_events.routines import PlotEvents
from cr_hist.routines import RaDecStudy

loop = TODLoop()
loop.add_tod_list("../data/s17_icecube_list.txt")
loop.add_skip([128, 129, 130, 131])  # problematic ones
loop.add_routine(
    DataLoader(input_dir="../outputs/s17_icecube_list/events/",
               output_key="events"))
#loop.add_routine(NPixelFilter(min_pixels=0, max_pixels=3, input_key="events", output_key="events"))
#loop.add_routine(DurationFilter(min_duration=10, max_duration=60, input_key="events", output_key="events"))
loop.add_routine(
    CoeffFilter(min_coeff=0.0, input_key="events", output_key="events"))
# loop.add_routine(TODLoader(output_key="tod-data"))
# loop.add_routine(FixOpticalSign(input_key="tod-data", output_key="tod-data"))
# loop.add_routine(Logger(input_key="events"))
# loop.add_routine(PlotEvents(event_key="events", tod_key="tod-data"))
loop.add_routine(LoadRaDec(input_key="events", output_key="events"))
loop.add_routine(
    RaDecStudy(input_key="events", ra_range=[1.2, 1.4], dec_range=[0.08,
                                                                   0.11]))
loop.run(0, 127)
예제 #22
0
from todloop.base import TODLoop
from todloop.routines import DataLoader
from todloop.filters import DurationFilter, PixelFilter, SpreadFilter
from routines import GetTracks, PlotTracks

loop = TODLoop()
loop.add_tod_list("data/s17_pa4_sublist.txt")

# add sample handler
loop.add_routine(DataLoader(input_dir="outputs/s17_pa4_sublist_cosig/"))
#loop.add_routine(DataLoader(input_dir="outputs/coincident_signals_subset/"))

# add filters
#loop.add_routine(DurationFilter(max_duration=10))
#loop.add_routine(PixelFilter(max_pixels=5))

# add main routine
loop.add_routine(GetTracks(season='2017', array='AR4'))
#loop.add_routine(SpreadFilter(max_spread=1))

# add plot routine
#loop.add_routine(PlotTracks(output_dir="outputs/get_tracks_filtered/", season='2017', array='AR4'))
loop.add_routine(
    PlotTracks(output_dir="outputs/s17_pa4_sublist_tracks/",
               season='2017',
               array='AR4'))

# specify range of tods of interests
loop.run(0, 2)
예제 #23
0
from todloop.tod import TODLoader, TODInfoLoader
from todloop.base import TODLoop
from todloop.routines import Logger
from compile_cuts.routines import CompileCuts

import sys

loop = TODLoop()
loop.add_tod_list("data/s17_icecube_list.txt")

glitchp = {
    'nSig': 10, 
    'tGlitch' : 0.007, 
    'minSeparation': 30, 
    'maxGlitch': 50000, 
    'highPassFc': 6.0, 
    'buffer': 0
}

loop.add_routine(TODLoader(output_key="tod_data"))
#loop.add_routine(TODInfoLoader(output_key="tod_info"))
loop.add_routine(CompileCuts(input_key="tod_data", glitchp=glitchp, output_dir="outputs/s17_icecube_list/"))

loop.run(0, 155)
from todloop.routines import DataLoader
from todloop.tod import TODLoader, TODInfoLoader
from todloop.base import TODLoop
from routines import PlotGlitches
from calibration.routines import FixOpticalSign, CalibrateTOD

tod_id = 1300
loop = TODLoop()
loop.add_tod_list("../data/s16_pa3_list.txt")

#will load the data stored in the folder specified one by one
#and store the loaded data in the shared date store under a key called data
loop.add_routine(DataLoader(input_dir="../outputs/s16_pa3_list/cosig/", output_key="cuts"))
loop.add_routine(TODLoader(output_key="tod_data"))
loop.add_routine(FixOpticalSign(input_key="tod_data", output_key="tod_data"))
loop.add_routine(CalibrateTOD(input_key="tod_data",output_key="tod_data"))
loop.add_routine(PlotGlitches(tag=tod_id,tod_key="tod_data", cosig_key="cuts"))
loop.run(tod_id,tod_id + 1)


예제 #25
0
from todloop.event import LoadRaDec, NPixelFilter, CoeffFilter, DurationFilter
from todloop.base import TODLoop
from calibration.routines import FixOpticalSign
from todloop.routines import DataLoader, Logger
from todloop.tod import TODLoader
from plot_events.routines import PlotEvents
from routines import RaDecStudy


loop = TODLoop()
loop.add_tod_list("../data/s16_pa3_list.txt")
loop.add_skip([340, 956, 1041, 1066, 1099, 1609, 3791, 4389,4451, 5259,6978])  # problematic ones
loop.add_routine(DataLoader(input_dir="../outputs/s16_pa3_list/events/", output_key="events"))
loop.add_routine(NPixelFilter(min_pixels=0, max_pixels=3, input_key="events", output_key="events"))
loop.add_routine(DurationFilter(min_duration=10, max_duration=60, input_key="events", output_key="events"))
loop.add_routine(CoeffFilter(min_coeff=0.8, input_key="events", output_key="events"))
# loop.add_routine(TODLoader(output_key="tod-data"))
# loop.add_routine(FixOpticalSign(input_key="tod-data", output_key="tod-data"))
# loop.add_routine(Logger(input_key="events"))
# loop.add_routine(PlotEvents(event_key="events", tod_key="tod-data"))
loop.add_routine(LoadRaDec(input_key="events", output_key="events"))
loop.add_routine(RaDecStudy(input_key="events"))
loop.run(0, 10000)