Source code for seisbench.data.crew
from seisbench.data.base import WaveformBenchmarkDataset
[docs]
class CREW(WaveformBenchmarkDataset):
"""
Curated Regional Earthquake Waveforms (CREW dataset)
"""
def __init__(self, **kwargs):
citation = (
"Aguilar Suarez, A. L., & Beroza, G. (2024). "
"Curated Regional Earthquake Waveforms (CREW) Dataset. "
"Seismica, 3(1). https://doi.org/10.26443/seismica.v3i1.1049"
)
self._write_chunk_file()
super().__init__(
citation=citation,
repository_lookup=True,
**kwargs,
)
[docs]
@staticmethod
def available_chunks(*args, **kwargs):
return [
"000",
"001",
"002",
"003",
"004",
"005",
"006",
"007",
"008",
"009",
"010",
"011",
"012",
"013",
"014",
"015",
"016",
"017",
"018",
"019",
"020",
"021",
"022",
"023",
"024",
"025",
"026",
"027",
"028",
"029",
"030",
"031",
"032",
"033",
"034",
"035",
"036",
"037",
"038",
"039",
"040",
"041",
"042",
"043",
"044",
"045",
"046",
"047",
"048",
"049",
"050",
"052",
"053",
"054",
"055",
"056",
"057",
"058",
"059",
"060",
"061",
"062",
"063",
"064",
"065",
"066",
"067",
"068",
"069",
"070",
"071",
"072",
"073",
"074",
"075",
"076",
"077",
"078",
"079",
"080",
"081",
"082",
"083",
"084",
"085",
"086",
"087",
"088",
"089",
"090",
"091",
"092",
"093",
"094",
"095",
"096",
"097",
"098",
"099",
"100",
"101",
"102",
"103",
"104",
"105",
"106",
"107",
"108",
"109",
"110",
"111",
"112",
"113",
"114",
"115",
"116",
"117",
"118",
"119",
"120",
"121",
"122",
"123",
"124",
"125",
"126",
"127",
"128",
"129",
"130",
"131",
"132",
"133",
"134",
"135",
"136",
"137",
"138",
"139",
"140",
"141",
"142",
"143",
"144",
"145",
"146",
"147",
"148",
"149",
"150",
"151",
"152",
"153",
"154",
"155",
"156",
]
def _write_chunk_file(self):
"""
Write out the chunk file
:return: None
"""
chunks_path = self.path / "chunks"
if chunks_path.is_file():
return
chunks = self.available_chunks()
chunks_str = "\n".join(chunks) + "\n"
self.path.mkdir(exist_ok=True, parents=True)
with open(chunks_path, "w") as f:
f.write(chunks_str)
def _download_dataset(self, writer, **kwargs):
pass