def test_write_whitening(self): anxcor = Anxcor() anxcor.set_window_length(120.0) times = anxcor.get_starttimes(starttime_stamp, endtime_stamp, 0.5) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.add_process(XArrayWhiten()) anxcor.save_at_process(target_dir, 'whiten:0') result = anxcor.process(times) how_many_nc = _how_many_fmt(target_dir, format='.nc') _clean_files_in_dir(target_dir) assert 20 == how_many_nc
def test_read_combine(self): anxcor = Anxcor() anxcor.set_window_length(120.0) times = anxcor.get_starttimes(starttime_stamp, endtime_stamp, 0.5) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.save_at_task(target_dir, 'combine') result = anxcor.process(times) anxcor = Anxcor() anxcor.set_window_length(120.0) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.load_at_task(target_dir, 'combine') result = anxcor.process(times) how_many_nc = _how_many_fmt(target_dir, format='.nc') _clean_files_in_dir(target_dir) assert 48 == how_many_nc
def test_read_tempnorm(self): anxcor = Anxcor() anxcor.set_window_length(120.0) times = anxcor.get_starttimes(starttime_stamp, endtime_stamp, 0.5) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.add_process( XArrayTemporalNorm(time_window=5.0, lower_frequency=0.02)) anxcor.save_at_process(target_dir, 'temp_norm:0') result = anxcor.process(times) anxcor = Anxcor() anxcor.set_window_length(120.0) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.add_process( XArrayTemporalNorm(time_window=5.0, lower_frequency=0.02)) anxcor.load_at_process(target_dir, 'temp_norm:0') result = anxcor.process(times) how_many_nc = _how_many_fmt(target_dir, format='.nc') _clean_files_in_dir(target_dir) assert 20 == how_many_nc
def test_read_post_combine(self): anxcor = Anxcor() anxcor.set_window_length(120.0) times = anxcor.get_starttimes(starttime_stamp, endtime_stamp, 0.5) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.save_at_task(target_dir, 'post-combine') result = anxcor.process(times) anxcor = Anxcor() anxcor.set_window_length(120.0) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.load_at_task(target_dir, 'post-combine') result = anxcor.process(times) _clean_files_in_dir(target_dir) print(result) assert len(result.coords['src_chan'].values) == 3
def test_read_xconvert(self): anxcor = Anxcor() anxcor.set_window_length(120.0) times = anxcor.get_starttimes(starttime_stamp, endtime_stamp, 0.5) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.save_at_task(target_dir, 'xconvert') result = anxcor.process(times) anxcor = Anxcor() anxcor.set_window_length(120.0) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.load_at_task(target_dir, 'xconvert') result = anxcor.process(times) _clean_files_in_dir(target_dir) assert isinstance(result, xr.Dataset)
def test_write_tempnorm_dask(self): from distributed import Client, LocalCluster from dask.distributed import wait cluster = LocalCluster(n_workers=1, threads_per_worker=1) c = Client(cluster) anxcor = Anxcor() anxcor.set_window_length(120.0) times = anxcor.get_starttimes(starttime_stamp, endtime_stamp, 0.5) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.add_process( XArrayTemporalNorm(time_window=5.0, lower_frequency=0.02)) anxcor.save_at_process(target_dir, 'temp_norm:0') result = anxcor.process(times, dask_client=c) how_many_nc = _how_many_fmt(target_dir, format='.nc') _clean_files_in_dir(target_dir) assert 20 == how_many_nc
def test_dask_read_combine_instastack(self): from distributed import Client, LocalCluster from dask.distributed import wait cluster = LocalCluster(n_workers=1, threads_per_worker=1) c = Client(cluster) anxcor = Anxcor() anxcor.set_window_length(120.0) times = anxcor.get_starttimes(starttime_stamp, endtime_stamp, 0.5) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.save_at_task(target_dir, 'combine') result = anxcor.process(times, dask_client=c, stack=True) anxcor = Anxcor() anxcor.set_window_length(120.0) bank = WavebankWrapper(source_dir) anxcor.add_dataset(bank, 'nodals') anxcor.load_at_task(target_dir, 'combine') result = anxcor.process(times, dask_client=c, stack=True) how_many_nc = _how_many_fmt(target_dir, format='.nc') _clean_files_in_dir(target_dir) c.close() cluster.close() assert 48 == how_many_nc
def test_dask_execution_exclude_stack_immediately(self): from distributed import Client, LocalCluster cluster = LocalCluster(n_workers=1, threads_per_worker=1) c = Client(cluster) anxcor = Anxcor() anxcor.set_window_length(40.0) anxcor.set_task_kwargs('crosscorrelate', dict(max_tau_shift=20.0)) times = anxcor.get_starttimes(starttime_stamp, endtime_stamp, 0.5) bank = WavebankWrapper(source_dir) anxcor.set_must_exclude_single_stations('AX.1') anxcor.add_dataset(bank, 'nodals') result = anxcor.process(times, dask_client=c, stack=True) pairs = list(result.coords['rec'].values) + list( result.coords['src'].values) c.close() cluster.close() assert 4 == len(pairs)