Пример #1
0
def test_save_bandpass():
    fil_file = os.path.join(_install_dir, "data/28.fil")
    y = Your(fil_file)
    bandpass = y.bandpass()
    mask = np.zeros_like(bandpass, dtype=np.bool)
    mask[:10] = True
    save_bandpass(y, bandpass, outname="28_bp.png")
    assert os.path.isfile("28_bp.png")
    os.remove("28_bp.png")
    save_bandpass(y, bandpass, mask=mask)
    assert os.path.isfile("28_bandpass.png")
    os.remove("28_bandpass.png")
Пример #2
0
def bandpass(f, time=0, nspectra=8192, outname=None):
    """
    Plots and saves the bandpass
    
    Args:
        f: File to read

        time: Time in seconds to read for bandpass

        nspectra: Number of spectra to read for bandpass
    """

    y = Your(f)
    if time > 0:
        ns = time // y.your_header.native_tsamp
    else:
        ns = nspectra
    bandpass = y.bandpass(nspectra=ns)
    save_bandpass(y,
                  bandpass,
                  chan_nos=None,
                  mask=None,
                  outdir=None,
                  outname=outname)
Пример #3
0
    else:
        if values.verbose:
            logging.basicConfig(
                level=logging.DEBUG,
                format=logging_format,
                handlers=[RichHandler(rich_tracebacks=True)],
            )
        else:
            logging.basicConfig(
                level=logging.INFO,
                format=logging_format,
                handlers=[RichHandler(rich_tracebacks=True)],
            )

    your_object = Your(file=values.files)
    bandpass = your_object.bandpass(values.nspectra)

    mask = sk_sg_filter(
        data=your_object.get_data(0, values.nspectra),
        your_object=your_object,
        spectral_kurtosis_sigma=values.spectral_kurtosis_sigma,
        savgol_frequency_window=values.savgol_frequency_window,
        savgol_sigma=values.savgol_sigma,
    )

    basename = f"{values.output_dir}/{your_object.your_header.basename}_your_rfi_mask"
    chan_nos = np.array(range(your_object.your_header.nchans), dtype=int)
    save_bandpass(
        your_object,
        bandpass,
        chan_nos=chan_nos,
Пример #4
0
def test_save_bandpass():
    fil_file = os.path.join(_install_dir, 'data/28.fil')
    y = Your(fil_file)
    save_bandpass(y, y.bandpass(), outname='28_bp.png')
    assert os.path.isfile('28_bp.png')
    os.remove('28_bp.png')
Пример #5
0
def test_save_bandpass():
    fil_file = os.path.join(_install_dir, "data/28.fil")
    y = Your(fil_file)
    save_bandpass(y, y.bandpass(), outname="28_bp.png")
    assert os.path.isfile("28_bp.png")
    os.remove("28_bp.png")
Пример #6
0
                        default=[6],
                        type=float,
                        nargs='+')
    parser.add_argument('-o',
                        '--output_dir',
                        help='Output dir for heimdall candidates',
                        type=str,
                        required=False,
                        default='.')

    args = parser.parse_args()

    your_object = Your(file=args.files)

    if args.apply_savgol:
        bandpass = your_object.bandpass(nspectra=8192)
        chan_nos = np.arange(0, bandpass.shape[0], dtype=np.int)
        for fw, sig in zip(args.filter_window, args.sigma):
            mask = savgol_filter(bandpass,
                                 your_object.your_header.foff,
                                 fw=fw,
                                 sig=sig)
            basename = f'{args.output_dir}/{your_object.your_header.basename}_w{fw}_sig{sig}'
            save_bandpass(your_object,
                          bandpass,
                          chan_nos=chan_nos,
                          mask=mask,
                          outdir=args.output_dir + '/',
                          outname=f'{basename}_bandpass.png')
            kill_mask_file = f'{basename}.bad_chans'
            with open(kill_mask_file, 'w') as f: