From 5beb94323d16e4d0b49c92929df0b9438e1c2d8b Mon Sep 17 00:00:00 2001 From: Mi! Date: Tue, 31 Oct 2023 11:33:06 +0100 Subject: [PATCH] Development (#6) ## Added * 3D fast marching tracer ## Fixed * fixes for cake ray tracer * fixes on all fronts ## Docs * added documentation --------- Co-authored-by: Marius Isken --- .github/workflows/docs.yaml | 25 ++ .pre-commit-config.yaml | 17 +- README.md | 13 +- docs/components/feature_extraction.md | 0 docs/components/image_function.md | 15 + docs/components/octree.md | 10 + docs/components/ray_tracer.md | 56 ++++ docs/components/seismic_data.md | 32 ++ docs/components/station_corrections.md | 10 + docs/getting_started.md | 106 +++++++ docs/images/FORGE-velocity-model.webp | Bin 0 -> 36184 bytes docs/images/logo.webp | Bin 0 -> 18712 bytes docs/images/qgis-loaded.webp | Bin 0 -> 275084 bytes docs/images/reykjanes-demo.webp | Bin 0 -> 157368 bytes docs/images/squirrel-reykjanes.webp | Bin 0 -> 145636 bytes docs/index.md | 43 ++- docs/theme/announce.html | 1 + docs/theme/main.html | 6 + docs/visualizing_results.md | 15 + lassie/apps/lassie.py | 75 +++-- lassie/features/local_magnitude.py | 1 - lassie/images/__init__.py | 12 +- lassie/images/base.py | 11 +- lassie/images/phase_net.py | 79 ++++- lassie/models/detection.py | 95 ++++-- lassie/models/location.py | 24 +- lassie/models/semblance.py | 9 + lassie/models/station.py | 36 ++- lassie/octree.py | 77 +++-- lassie/plot/detections.py | 118 +++---- lassie/plot/octree.py | 93 +++--- lassie/plot/plot.py | 58 ---- lassie/search.py | 147 +++++---- lassie/station_corrections.py | 47 ++- lassie/tracers/__init__.py | 34 +- lassie/tracers/base.py | 8 +- lassie/tracers/cake.py | 156 ++++++---- lassie/tracers/constant_velocity.py | 12 +- lassie/tracers/fast_marching/fast_marching.py | 83 ++++- .../tracers/fast_marching/velocity_models.py | 196 +++++++++--- lassie/utils.py | 41 ++- lassie/waveforms/base.py | 20 ++ lassie/waveforms/squirrel.py | 103 +++++- mkdocs.yml | 75 ++++- pyproject.toml | 44 ++- test/conftest.py | 5 +- test/test_cake.py | 84 ++++- test/test_fast_marching.py | 292 +++++++++++++++++- test/test_location.py | 55 +++- test/test_plot.py | 45 --- 50 files changed, 1889 insertions(+), 595 deletions(-) create mode 100644 .github/workflows/docs.yaml create mode 100644 docs/components/feature_extraction.md create mode 100644 docs/components/image_function.md create mode 100644 docs/components/octree.md create mode 100644 docs/components/ray_tracer.md create mode 100644 docs/components/seismic_data.md create mode 100644 docs/components/station_corrections.md create mode 100644 docs/getting_started.md create mode 100644 docs/images/FORGE-velocity-model.webp create mode 100644 docs/images/logo.webp create mode 100644 docs/images/qgis-loaded.webp create mode 100644 docs/images/reykjanes-demo.webp create mode 100644 docs/images/squirrel-reykjanes.webp create mode 100644 docs/theme/announce.html create mode 100644 docs/theme/main.html create mode 100644 docs/visualizing_results.md delete mode 100644 lassie/plot/plot.py delete mode 100644 test/test_plot.py diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml new file mode 100644 index 00000000..2d540ba1 --- /dev/null +++ b/.github/workflows/docs.yaml @@ -0,0 +1,25 @@ +name: docs + +on: + push: + branches: + - main +permissions: + contents: write +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v4 + with: + python-version: 3.10 + - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV + - uses: actions/cache@v3 + with: + key: mkdocs-material-${{ env.cache_id }} + path: .cache + restore-keys: | + mkdocs-material- + - run: pip install .[dev] + - run: mkdocs gh-deploy --force diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index df667eb2..451c1ad0 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -2,23 +2,24 @@ # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v3.2.0 + rev: v4.5.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-yaml - id: check-added-large-files + - id: mixed-line-ending + - repo: https://github.com/charliermarsh/ruff-pre-commit + # Ruff version. + rev: "v0.1.1" + hooks: + - id: ruff - repo: https://github.com/psf/black - rev: 23.3.0 + rev: 23.10.0 hooks: - id: black # It is recommended to specify the latest version of Python # supported by your project here, or alternatively use # pre-commit's default_language_version, see # https://pre-commit.com/#top_level-default_language_version - # language_version: python3.9 - - repo: https://github.com/charliermarsh/ruff-pre-commit - # Ruff version. - rev: "v0.0.287" - hooks: - - id: ruff + # language_version: python3.10 diff --git a/README.md b/README.md index d81621f1..624b9924 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,8 @@ *The friendly earthquake detector* [![Build and test](https://github.com/miili/lassie-v2/actions/workflows/build.yaml/badge.svg)](https://github.com/miili/lassie-v2/actions/workflows/build.yaml) -![Python 3.10+](https://img.shields.io/badge/python-3.10-blue.svg) +[![Documentation](https://img.shields.io/badge/read-documentation-blue)](https://pyrocko.github.io/lassie-v2/) +![Python 3.10+](https://img.shields.io/badge/python-3.10%203.11-blue.svg) Code style: black [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://pre-commit.com/) @@ -26,12 +27,14 @@ Key features are of the earthquake detection and localisation framework are: Lassie is built on top of [Pyrocko](https://pyrocko.org). +For more information check out the documentation at https://pyrocko.github.io/lassie-v2/. + ## Installation +Simple installation from GitHub. + ```sh -git clone https://github.com/pyrocko/lassie-v2 -cd lassie-v2 -pip3 install . +pip install git+https://github.com/pyrocko/lassie-v2 ``` ## Project Initialisation @@ -47,7 +50,7 @@ Edit the `my-project.json` Start the earthquake detection with ```sh -lassie run search.json +lassie search search.json ``` ## Packaging diff --git a/docs/components/feature_extraction.md b/docs/components/feature_extraction.md new file mode 100644 index 00000000..e69de29b diff --git a/docs/components/image_function.md b/docs/components/image_function.md new file mode 100644 index 00000000..10582bf3 --- /dev/null +++ b/docs/components/image_function.md @@ -0,0 +1,15 @@ +# Image Function + +For image functions this version of Lassie relies heavily on machine learning pickers delivered by [SeisBench](https://github.com/seisbench/seisbench). + +## PhaseNet Image Function + +!!! abstract "Citation PhaseNet" + *Zhu, Weiqiang, and Gregory C. Beroza. "PhaseNet: A Deep-Neural-Network-Based Seismic Arrival Time Picking Method." arXiv preprint arXiv:1803.03211 (2018).* + +```python exec='on' +from lassie.utils import generate_docs +from lassie.images.phase_net import PhaseNet + +print(generate_docs(PhaseNet())) +``` diff --git a/docs/components/octree.md b/docs/components/octree.md new file mode 100644 index 00000000..b0ab2334 --- /dev/null +++ b/docs/components/octree.md @@ -0,0 +1,10 @@ +# Octree + +A 3D space is searched for sources of seismic energy. Lassie created an octree structure which is iteratively refined when energy is detected, to focus on the source' location. This speeds up the search and improves the resolution of the localisations. + +```python exec='on' +from lassie.utils import generate_docs +from lassie.octree import Octree + +print(generate_docs(Octree())) +``` diff --git a/docs/components/ray_tracer.md b/docs/components/ray_tracer.md new file mode 100644 index 00000000..3fc3ab09 --- /dev/null +++ b/docs/components/ray_tracer.md @@ -0,0 +1,56 @@ +# Ray Tracers + +The calculation of seismic travel times is a cornerstone for the migration and stacking approach. Lassie supports different ray tracers for travel time calculation, which can be adapted for different geological settings. + +## Constant Velocity + +The constant velocity models is trivial and follows: + +$$ +t_{P} = \frac{d}{v_P} +$$ + +This module is used for simple use cases and cross-referencing testing. + +```python exec='on' +from lassie.utils import generate_docs +from lassie.tracers.constant_velocity import ConstantVelocityTracer + +print(generate_docs(ConstantVelocityTracer())) +``` + +## 1D Layered Model + +Calculation of travel times in 1D layered media is based on the [Pyrocko Cake](https://pyrocko.org/docs/current/apps/cake/manual.html#command-line-examples) ray tracer. + +![Pyrocko Cake Ray Tracer](https://pyrocko.org/docs/current/_images/cake_plot_example_2.png) +*Pyrocko Cake 1D ray tracer for travel time calculation in 1D layered media* + +```python exec='on' +from lassie.utils import generate_docs +from lassie.tracers.cake import CakeTracer + +print(generate_docs(CakeTracer(), exclude={'earthmodel': {'raw_file_data'}})) +``` + +## 3D Fast Marching + +We implement the fast marching method for calculating first arrivals of waves in 3D volumes. Currently three different 3D velocity models are supported: + +* [x] Import [NonLinLoc](http://alomax.free.fr/nlloc/) 3D velocity model +* [x] 1D layered model 🥞 +* [x] Constant velocity, mainly for testing purposes 🥼 + +```python exec='on' +from lassie.utils import generate_docs +from lassie.tracers.fast_marching import FastMarchingTracer + +print(generate_docs(FastMarchingTracer())) +``` + +### Visualizing 3D Models + +For quality check, all 3D velocity models are exported to `vtk/` folder as `.vti` files. Use [ParaView](https://www.paraview.org/) to inspect and explore the velocity models. + +![Velocity model FORGE](../images/FORGE-velocity-model.webp) +*Seismic velocity model of the Utah FORGE testbed site, visualized in ParaView.* diff --git a/docs/components/seismic_data.md b/docs/components/seismic_data.md new file mode 100644 index 00000000..8ecb3c11 --- /dev/null +++ b/docs/components/seismic_data.md @@ -0,0 +1,32 @@ +# Seismic Data + +## Waveform Data + +The seismic can be delivered in MiniSeed or any other format compatible with Pyrocko. + +Organize your data in an [SDS structure](https://www.seiscomp.de/doc/base/concepts/waveformarchives.html) or just a single MiniSeed file. + +```python exec='on' +from lassie.utils import generate_docs +from lassie.waveforms import PyrockoSquirrel + +print(generate_docs(PyrockoSquirrel())) +``` + +## Meta Data + +Meta data is required primarily for station locations and codes. + +Supported data formats are: + +* [x] [StationXML](https://www.fdsn.org/xml/station/) +* [x] [Pyrocko Station YAML](https://pyrocko.org/docs/current/formats/yaml.html) + +Metadata does not need to include response information for pure detection and localisation. If local magnitudes $M_L$ are extracted response information is required. + +```python exec='on' +from lassie.utils import generate_docs +from lassie.models.station import Stations + +print(generate_docs(Stations())) +``` diff --git a/docs/components/station_corrections.md b/docs/components/station_corrections.md new file mode 100644 index 00000000..a35818c6 --- /dev/null +++ b/docs/components/station_corrections.md @@ -0,0 +1,10 @@ +# Station Corrections + +Station corrections can be extract from previous runs to refine the localisation accuracy. The corrections can also help to improve the semblance find more events in a dataset. + +```python exec='on' +from lassie.utils import generate_docs +from lassie.models.station import Stations + +print(generate_docs(Stations())) +``` diff --git a/docs/getting_started.md b/docs/getting_started.md new file mode 100644 index 00000000..ec331764 --- /dev/null +++ b/docs/getting_started.md @@ -0,0 +1,106 @@ +# Getting Started + +## Installation + +The installation is straight-forward: + +```sh title="From GitHub" +pip install git+https://github.com/pyrocko/lassie-v2 +``` + +## Running Lassie + +The main entry point in the executeable is the `lassie` command. The provided command line interface (CLI) and a JSON config file is all what is needed to run the program. + +```bash exec='on' result='ansi' source='above' +lassie -h +``` + +## Initializing a New Project + +Once installed you can run the lassie executeable to initialize a new project. + +```sh title="Initialize new Project" +lassie init my-project +``` + +Check out the `search.json` config file and add your waveform data and velocity models. + +??? abstract "Minimal Configuration Example" + Here is a minimal JSON configuration for Lassie + ```json + { + "project_dir": ".", + "stations": { + "station_xmls": [], + "pyrocko_station_yamls": ["search/pyrocko-stations.yaml"], + }, + "data_provider": { + "provider": "PyrockoSquirrel", + "environment": ".", + "waveform_dirs": ["data/"], + }, + "octree": { + "location": { + "lat": 0.0, + "lon": 0.0, + "east_shift": 0.0, + "north_shift": 0.0, + "elevation": 0.0, + "depth": 0.0 + }, + "size_initial": 2000.0, + "size_limit": 500.0, + "east_bounds": [ + -10000.0, + 10000.0 + ], + "north_bounds": [ + -10000.0, + 10000.0 + ], + "depth_bounds": [ + 0.0, + 20000.0 + ], + "absorbing_boundary": 1000.0 + }, + "image_functions": [ + { + "image": "PhaseNet", + "model": "ethz", + "torch_use_cuda": false, + "phase_map": { + "P": "constant:P", + "S": "constant:S" + }, + } + ], + "ray_tracers": [ + { + "tracer": "ConstantVelocityTracer", + "phase": "constant:P", + "velocity": 5000.0 + } + ], + "station_corrections": {}, + "event_features": [], + "sampling_rate": 100, + "detection_threshold": 0.05, + "detection_blinding": "PT2S", + "node_split_threshold": 0.9, + "window_length": "PT300S", + "n_threads_parstack": 0, + "n_threads_argmax": 4, + } + ``` + +For more details and information about the component, head over to [details of the modules](components/seismic_data.md). + +## Starting the Search + +Once happy, start the lassie CLI. + +```sh title="Start earthquake detection" +lassie search search.json +``` diff --git a/docs/images/FORGE-velocity-model.webp b/docs/images/FORGE-velocity-model.webp new file mode 100644 index 0000000000000000000000000000000000000000..399ef0627b85ba3fba363bf792328647366c1a08 GIT binary patch literal 36184 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 literal 0 HcmV?d00001 diff --git a/docs/images/logo.webp b/docs/images/logo.webp new file mode 100644 index 0000000000000000000000000000000000000000..cffad92e1f2ea762dcf50fc77b672918ba6cf59b GIT binary patch literal 18712 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 z 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�mbcC;Doi>5oF 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�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 o00000000000000000000000000000000000000001{tdW0PunV+W-In literal 0 HcmV?d00001 diff --git a/docs/images/reykjanes-demo.webp b/docs/images/reykjanes-demo.webp new file mode 100644 index 0000000000000000000000000000000000000000..8bdb0e7aa1eaed28aeeb0fe27441489f736e1a76 GIT binary patch literal 157368 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�) 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%0A=|im7*j+gJlb&nrw_$KtHe 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%0DvK(o7fi88 zODDSAoY~d^)?bm;($Ps4g2*!2)-~Yx7qT&4zc)#rTWX^fY0-61qlD2Sx+vr$FQn>k z8F&1ot8dO5x}R0VqSV>@w#yBb$+pRjD%B@D0bkW|CNla{0%D3#-&M**`VTuDBAQ!n zrvHq>7GL9Rnlgs0AnLyrq_2BCtV^6~kYu3JvY+L>@s%Yf6i=nXVrHxkdI>QT62mD@~ z2^?$?MhVb-hV&&Emma6Udk=e9EV;#oUPPsA|i zZ+1h-DV0qk*3zX;OC|KUGJkl{l<%}s>r#CBQYpd7}NIpV); zvR^Knpg&c8uLH>=yW`NU?{-vQ&-u^n@3zd~L*Ea7({sUwgxno-l2dc9C#s-bm-S3z z_Ia(%ln;cd^m+@_kSR~wB&C9HJc=XdH)Q%V&R?`nS2g&ok#F26J$4+2asa}07uo*C z5%hG{4a~DRc5q6v;-16s3e(%mIuD%VfMkU44@6VUOv@7Vt^pAs~a%aIoYS0oxd^V8z+ zL@H`xtDWK0^>euX{%nYCw=)ImtWO9Y%5#`;!G)@lZOqkT9dln;dhT~v&Bz*GQEPzQ zDKlJacaQlUvm$jfdOU}!@*ifPFv3oOY-Bfr+vm{4=EH# zRlyw-gl9>28l9#C6CHgVDkcF&;6x`I_ErfTM@Hq6Q1VQYrSL(TsV@RHfS5mVssBlj zY7hBRFYoeN6@xosC)G+{6U&GbpcA=l_3pA87~lBZp}4|WS;n@ALjVG{W98HUVrlQd5{g{{@-?>qrw#kVWdNR_IsHsJBtaT4>2%)f0v0*{ZNIS?2}+jl#Xs zsZP#{pFK5RrYkf};XgqUNd5<~EDe)F!(B1Ugpd5=tHQ_+SA45hLvxj&A<^HvgzIA0 zqGn%>feSc0++aGU;yTOLf}uWG<;*M;R3!z+Uw8lwVgr32OFUD0(CxFF4*%oJQWRos zT(GoJtk;p*#=XPaukFCSCX-L7`rqEdqvq?87Xfoi*KZengf?23m(oC2p!u za?mmos=oqe&OPW4CB+aAE!jxa@uxgbKlbEtsr7R^$Aqtbm2l6S!J9Ha78z>x#S0|t zRztj#WIQR}dvyfB8c9})HF0OjP4_x8Squi4eFI$=KVO3MgyrgT4ECWgre9B7#;yRB zbYrefB!gpOP#SZWj^PR5a|)V8nFlXn%5L{WW;Rd$>== z?Vf$IdY9~UKi^Z9{JVEHD>|ZGr&iCcM?6@5c8DMI{TAG=)fp8=_?6fa5-Q(ibTNhS zNKif!Pln6VF^b4NLI5%@J|1;}H!~*F+;6!uojH&9#DehT3VjVgLJR07C9m)pr{_M|1LFwA1v=W7hmzb&C`b)qf<~VP0T!j2o-=GQ;FrjsD5*A+M;H7kTB6Wm!7HC8^r4nh z6EHcODd^%$fLsCW6E1~wuAA9`&F?(2%1a7Ufol2~D} zIAcydq5#^D9guhjm;z6Eg*a#7N!IZn5kVF#t?1{a?!dOBZsZ3;>m`yV2sWg z{u>WSh!bO%bNcvB@@?{`^)s4}cdLhSa|{Nf`c2*iboB{b(t6~Gt~?V=AJMi7c5^}% z&9roPmF+p2y66q;1Off`l^qQw2=z_7gF&L|KP4)h1uIu{o67EXAGyj$ImQ1w4(yRC zjlsTZ=@z8n;s_IBY>>~Af{G{ zKk>7y-g^pUp-so-*Gr#svKD>^uh;Keg;5W` zLJ#xY%j9XbGNGCul?XX^?DwBqA7R;`UO|mL0|XN}&#H1|w;LWsnBG(5vnQa9573H~ znxM0(!!G{}E<@YeEViyHi+*JqpRGwUm7sx{=qFgFX7k?*z_pYj~~4qIR^jU{40e+vYi8ymv? zz>Q_qy#Po$6_l+_Fz~xpbxx7Z!5pmA74Q% z8(pLSu$n-e7WiZdFzMA-xaptsUlrj>R@tu&B$pBP%UC4emnIhWY=WYO z5Er%M&;07Oj7jOuggvE*`yZO)&tz#Dfy}3-LyjR%$fE&oxrh}LDWL|)W5WaZ9i zF2vwwvzKmbe7vkep|b5<<+lW2+(aagWh3ojvkyBjr*I&p6Sw@xPv#vmBpoD| zL{$2pg)95NV%a2&zzjpQ$K`%9Rg_IHR7-k6tW!Ty+bkbP%h`y#Qr@bpFU;i*f4des zZ-&>xtzBd${~RZc57il>l>?9qhD3j1x}0;FkT#$5#;okxK2bWZHA?D{ZXBLIq=||j zOibh=2r>RokZzYu^Z`KyFs27C{-uk0YfekaX$5YL_>I|jw_8+Tg9f|BmCP`gizTAgx$r! z3T^!Z*OdFriSn^#Ythj|(ZTf#hM&KWu|%$XDXm}PTD9=|FW|pPw^{}P?%YOl9Lb{; z&D?*eLYH~!q{;^X7^~&PkmpR6J-B%}Iv()J%o-pScyV2HVqUkmg#=w4?E8%`K#{c` z7m+ouvP9`5LkkZh0Sye_DTyf`hB*KX$v5MMb#QWS^EOedho*Md2+f)}RW1YLVD=wc z_2?)6`Z2_$>WZ+$4mVP&%SB$B!K$sO`N#)U(8QbdGsL!Jrveui(Ib7m2$_ps@5yhF z5wBHUioPFa!x&-h%2@LB)2b9?IoL}yW_+5Ge`65W-H08b5ofURg;Dc3{NR#Xe2QPg zoc$3Pk<30cR*$R{`W0kkV?%+#=VhR%JURumkCT`T18GC}pa#N_2hl%P<1X_Ib^F@_ zLqv>4bf(++xzhlnHhfpe^qsq}+4pd<{A;69#2N>pIIcK*Qjt{#x&b(iyC_p{XHgD$ z8)d5}NfdIOMTQ+v$`y92^l?{ihmA&vWRrbELXGgTwKo8gxt6~SUJwuS!l;_ls2myi zSA&uXE6ijb;*+5zkZ1%ocMIW+%kKSpY?jnS4hY?y)gaPYNu$jlEjJ zmca=7m2mCQ>AF*kHFnyZk8g5c`J-5nmax*Nv@mU^*c1z}#G0~*sdic7)b^N)s?=3% z*E+Xth!)Z&!19K<3O#L`iTABy^YDkq6l%eaic)}t=QEhR%>X?V%#VR&DJ|)C*>rO@=;I^cE%Wf0C++Yd~q;OR3u6l4j}JZR}=uw&Ay|GE%*Qjvm#BHV9;937DiaFq%|Yo!Vx9N=-SeQY>7&3R@8+OCh2zSOgSSB$#ic;7Cl&kcMiKiumlM zANK%LqHg2CAwKm>gl%^D|C;2W5>N8}`g2JcgK1fid%cFe&)_eo){0hD$WY8hSHhX+ zUvcicg-FTUo%NTr#Z}e?FFnvWXRj82laG+2|7zkf7n`-7f@R%4MA5H!nWSSKrR(GC zJ&z{I!Fxr8i7GWinVcZGwT>@};(ndIVUHH&iFBcy57M4gn`le+A`+t4BrN|t;fybb zp3^sOqR{peMKQ-ZOv{E%UhU;Q3pV|fK6MM-ll$Z~;GZ36l zfZJjYY!|{xx@S>};>7d{f-#s>Ql-rge#Rl;k-IJ_U&M)fZzz+jYwYQG z%?Fh9^4_;Z{sDmP;h9><21cGxKx@a{MxBnYr2ZNGz4DDN`M3ZikI`@M#~%AyLMs9` zEpTn35KWvW3Pa&=-hV`n(_U$v5bjM4eG4@?`Y~KdUoWB0nzD@X0k;RD%F-w0=YIT5 zjzsrU1s0{DV}L-Bl)7EnDvfuYgL9KLpG>pp*Pi#{EATlyI7Pt+X+jstD;e>83$^{Namf4XIn*gH1agPW$ zk&p|oVS>u|xl(1Z6~;!S8KQ151>H$h9V%uAlmL&y?`EIh7fk{XiaxV};s^PB_Gp}- z#Nv40MJeSs^dEpyagRL*6SpV>*&>|db6Y6Z3}ABAyRry+W5Y*9qOtVdJ|;~;O*&^xlCoEnTayBd`6Z}HunZA;fEJcL zYxOCA(jhMF=WF2os_c~~d4%EGR1oz?m_b%_TKbM&SrKnS_IdZm8&CTbgmf8{x}2Fi zY$4T22CG=@jhxC_-GS4&|yH7xAqYD_u)?(>%At__Z`Xq*J0$!#>D90y57`>Xw z61oAF5iPbDzk8s~N#zGL7rdgG*~)R{;-wdTDw=8m3Z*J(>FF8X6xjE=e#&GpcIKjAzcx>r$sJ3BSo}KkkU}Rk*Pz`W;_N{0m(rR4x?$pp28EUqape6CYDjSm8(OSAWuJ6I zwRGn+mXydQgW;3`DsVv-k7EokI;Z;GNJp$H>RdBa zT5dRzG%7wh+I%M{G3Nu^E6o~jSz0rT{q*XZXAQUj&lpo}Xh8MFUhU3%)Wp6cdmXeP zlp43Y8p9W&+LDBOp)>;w;|f#D)VdUTpcden-LsZgIWye{Dl9u_P&`NCpb-vjAg^m; zcgpYaOYUsdZRMUs!t?|jlL{4R_2OWuTfgD5j+nAFEzZ! z)K981$MXcw@t2{o2WPsjt5;DL-cDN%5$Kngq5t5yeTbJaf)#z;JZ00et2fqz!OGQv zHRxVU3v#d^^f@4LJQ3>C?h^>|UV?0kDp=ot?0DH`jwr8GbRTBfrgaah{D=rU-P41Z zXPCx@O;})+Km5^z2SkJj$iED%*9rBc=Q~Wa;93W~Ykm7rGpG$6 za=ch=lwvq)DI3vI)Kvftb|XQSm44i9<7*WiO=3-_iecl4C-jd{OrMBW1>>FSp_PIE zy|Yj6MioJzen0z_Z2z3%cl_zAkXn<}fKV=xKL|pm@rF(mkmIUn^{i(|#pknDx@6wQ z4T+f0Y_(N-E`4;E9EahM70I+S-E25LMs01CsBLGs#H5l3diPDwhWM_Q_&X(9%b4^(jB|NtYeN3=Tt?a! zD>mULd0gI8^Sf`hg+g4>QR_E8g;hwW`7X3w`n-Xv=q`d+uD%aXjm{jjN_>i(jCr zqVE+BctI`))!7VqWxarAv97ut6h!dQRA6t{$<~tW1F_$v=M#fNo2rt%;t$Bo?J`yG z=nwt!1NXn+N;3N({q$t9(S+Kwkl-WhGiY=-)pUYDc-i$}Bz)U-05hfA{JKB2 z#nRbseG>mDx_h%glWFF~9bB&(WNg6KpI_jo@0Nf>sLHfNMvm~ccP($euLc07RKCAj z?K^Z06NbXu?LkpQ4_7(qjr@|VbK2Q9{_b^h5fen# zV$4l{d~D93u|%J65@t;2Kb})IGn`z({~{KuAa^TE6Es;)XVY# zG3~5nY}vv}c)_(XoW34W`hJNwCy?csfqpL~JnC<}eY1+!QbV~BL7nx%Jg-n@SoknU zSCyR!f^6x*yme|B!{<`$UfFl8EDR`a=F?ezAU%2LEa6A}iBwROm_9b{(}k^Hmsb4- z@3ia&Ld^E-Vw*EZEK};I4Z4M6=EN!5M?(F!>8~0UNacoAzFp$ z=Bhqf5Jnf_VxG}vw(wS>|ZYupr~3YjfCo7gXlI!R^Vz5zCM7u z596{=tEY40m9Ob4ObV~6rYD_yV~Z3O4iR6O_jtM}s^tfYWZ&-FgQ0G{IrVU)w3)-b z?r1C6iJmswVlVMydKZPI&gSvT?uISZhmp7vrd1OC0(OQ!epox* zb{TI7osE0*7OtjAGfezj8mZSRJsK`ksg~(aT1cdb zxb|XRaz!K&EEP8Y1|)3#HIwJmFiLwzWK#%6CJy{^1A2LD|7PM}6T-slxmeZ4w`4|R zbQyf)S0-I{x-US$e|+`*v1;Aqm~9gnappKOi$;Hm8=vs-+-ZlL|GYEozhC3L%m?1m zGg$I&k?bn?vI%*8(l(|pd8}s9Xt}DQEynzZzr(RRZ3q8Ni2j+i37=Ixo)=9$v#?Yr z%NKe&hm#2GORn45J_ZYDuq3G5v^arQ2?}bWx)4x#pgRSdtqK>d92~7Vf07ZH0!s4K zaQ8${86$Zi3PUTJeKx%93}>JUa8q)BcDuOCAL7GQD50xIvBRk&f>oCpk9claGOH5v z`QF=S?-9^zwlr@v4_dN=tn8d>l!=s2_RQOo17I^+XuFh}7@9nNK4V7Whu+D;zz%#d zke-hp>c5n6c6R9{Hn#K063H)^a4UnrTTOh+5;*n6-gPnTT)ur83n_WM;Z4s>S-L_O zGn=9CWCK2i?FtT57~I&geeN*gBR>kDo}gt6-NL5okA^-dydK}Ox>l|amE*G~qjOe> z-<%Plu65VKnKlB2y>vz?Z6dKxxy_vQU0q~xU5Vy8YW;J_0nSGS+nmW_)n}rbt)i*y zQ&A2Ro4i;{oU5^E7%EYc7onxs*!KmWfivS>YDN3*taqWkz+FXa;dY$ka(w?tOK(P} z)4F&!%TroW!C*YdD?L^)6YVyr z(S`Mybty}SMK3sZ;uIUv>krP#8*4fl1z#fbIL^(iKDh=PMNM|_PAkztZd!k)RoPq_^Hf8jNsA2GD zG0gN@L5b_P^rf7G9?r^A40sUZdXEb_e2F zqLXHKa>(8b-mTT=WC*6fF$+ut-5`Y^-!8Y2)w=Xi$Bw)Dx`_o5%0L-Sytwi!Z`PpT z)vW~fbwC)2YG=J3LPDZzmlf0;$jD|KARmLRS~iv@zWj-F1`yVwb(V%UU8I!lr9%l* z;X59{A|}1g{CUg^L}Uf4cs5JDVTPglr`h*+gVTJaIr5+Ym}p*;Ys*pm_BJakDm4Cv znlCxnzT`d|esGh&1wqTG$YJd~@mO`jI*L7B&K*mX0R>|vhA^U#vcFf@3*c+|T<&v(k96GoXkucZfAdB@L(K?I;4H zxqN`zO#n5;Rg*8aZzNIPNAse9p6T=P=1f!Aqqqaf%at`{n84Q+Bu^}N2N1#F9b^aK zbL;)(t`xH#r2~-@&`XSbx3=!lYYz*CZCkirSuA<#9dv?D!As>_6$K-8SuiJfHINah zpO%bu&hwm*r0x zi%ve~KNa&U5a_5@J`)$$+_nX&5Bk!{xB{>unS|8|F@088Vxca|VV}7514bUE-5kE^ z-^U9#v>=cV^fy=o&da;>y~)VCm%zS4lkN#B5gwQHkVFU(;0~)!NEKpjRY}G zg^S-QZ8m+7#5`*;UwIJ5|2iJBc2e!hVcP~nF4gJCm+txZ#q?!?;@wT-MB*K71O%sA zu74@CV;$5-hrCMm(A|JQur7EL$?8J~Bh0Sl&L`$Aa4_UGR#6-(b~$YS&&Ma`4WGr!&~(U#j`L73o_(j`Rr<;oguCi2E|O$Kcmzka|n=Hag~J!00C+6&uY<*}$l~ zA%ahoZ$y2UOcH%5r=LB!j;=;9AUn_FbQlSv0G^?CM0}tpx1nnf+$&_)Ak4!Ww9==W zP~PMMRh(h7?~*7Xa-_C-zI2*c2Ntpk6rmXj$JkOV6iDH^UiR81xw8?#c{#fjs*0vz zs1QzRBx1xMc#uQl?NPuo8RR1*`a^hYJA?xu1D=&tz-6(1(l|0IG(Ihgv-L{P%~vb_ zV^cp`4<~7e3sll4Cqqz*ZevaFOP*Ow3WnjmHq0{dE2;1xMm7Pt;W_fl%PG`>=Pm3| zH5qjJjma3;_&=eG(RFgOU+(e1;NBA8IrDR*p2nF&!sf*ZpxhxXr0P9cPjThsTW04# zrxF&|jJz!`F{}Q0ayKx1(Je+8%(0@K9N=?K>Czl13ZkTreH*^*3HOdcFKHYuk6p5y zs}CrVJ#R8UI1qiPC@+T=OHVlXT9nVrNe7+CmseNP2|t)d^X;;UgJK39Us2d~Rg3C8S$im4AXJ*ytT2!4g0o2%%Y?eBgUMTy%g~=O7n|ORt$b*WruK6 zP7iIZIrsqFOXlQ1m)$Od#rXAm6U{-1Il15>(nxYe2Yuh6|PLt!UW?9JR zsN$)?kGo1s_l#&mDI4}Fd$rRobE;iIgKopd4jpL+U(>`Qebq7?0K=C3@M0(%!= zqP|VBcH+cJ)*lQm90i*OotI(-q9>0uU$%*ylaF4x&d%jk)$K?-^o!R`e&@TJ{0ac}OLFEKR#Nr_e0)FN-ncpf zS?}DdhMwrRxi*ltwzwkwKDR-j&uLlI*9Ichw#yxBQL$oecu-5?nd5$3gt4WZ4}GA; zbvlNx9IA)c=Uzbbr*6K=2~!W;@sx4POPSss+5vMW4KP(m>fSR@J?OvZBTMDCTM!cL z38>IGyzYZ@WwN&a(3rB%E7e-jJ9Rt9=*J54>AI2chc7rQp=mx%IjdGEUnMd+YnviR zFE$mW&SaB9__q`IHQt`lX9>9o*WdF&@)F#o$YdprIJ%_OO?N&t=&m&z?)B3VcF#6< z#H)T6owRuntCnR!6Z1{`wX7R+i1$wY0Y z_Hf zJVMjacNm=b7pB7&A3n_+8Jrlt*ehMp3E*P5Nl-%ZEUnn76l04p3m4hzx1~#M-8){T z8ygmKZ6mn4nU;UmQ3l=GhW42T$sZ~M@|iZigM?kBZese~Tz0+ksvK5u)r@u4G^c`; zm1N7d9#ac=#BJOid8(1_Tz*FnPkwe>G@j9QNIxYu0zy|ByGcQ&Hs)4a-vHPzZsUN4 zIw-YpB&y{Xno`hlv3Z<;xFMgSoFNZie9FD(Pn8}#@--(d*p~dihcNl{igI~8kj3Q; za)$TKxu=p?q=!z+le!JvhoI6JjsvCFbE436Cd7an8epea;33VC)A9X%8ZrE`X$(w! z4J6!iY7oQC7)gmr(CixqicK^9ThmMj{zcL;y^Zow(n5-OpV&i1Se=L z+~%en!UX3o3RW_3J*miWZ5Z8EgqH*C=#ZQe1sB)>khA5$q{0DWC0*FF*?w(@1#hPR zD*kKKsssSk1@~Be8pDd=46BO@r9znpewEVRB=W9Wl+`Sj*U!@a|7V3XP zO>Y6`{wnlVJyK)9_ouA*eAw_&D$GSfhGI{WqgaCabdGJk-V3V**+-@K-p-`F z`jywF{*RYzb37Njx8Zc(*yf>y(Pj;1uu?pI@2x(CDx%01eFPp!FksmgbGkp-Q)q3f zV<)=Wytch;(S;2r)~D&42T$~kHgBCyiC1!HYP#;jxiQEv(Kdl5kL?x?bcybeVx~_F z6djc`zFMj2t5woC=vM^p<#PT1uR;F)f7Oh;YgS_V!A4DuaRe7Iu{$bK`*US?1i*n*^U&Iz983NDWoH4gMq;@{Sz0^waAn&-B{>Wd|82YE| z-Lg26>8~LKvW%LX|4L^x6*S#7Qnk@G9nQ53>Hzp?k*-U43bK!1(q@h5uUsp~0AO31 ziT&w|2*NJ2-&r%y678~@C)ZatqJdO!BNH#@S<34mD?<HSu(&Ho=<@WB7s>99aQuVu`QSrJ--hEK^*aU)suUFU9X)z#`wQ!tWG{d%WE7Rp54!{}6^>P%N* z09MY#M5yT>5fW4o)P=Xi04~4`>r?H^pEdS0}42HT~|7d|E50 zkWVt!NFU*BC`WK?&u&kEKi%` z9?WBfAH)f{!0+*Kz7V)lhX&gK5Q6gSmij5H$VLZ6UY3!adQ4 znkT{t=sQ@Y)kt^R5_^X$VtM)mX01D$2opO+Ap!z8iL-|JPc(k2-e3NavOIns=xzVH z!HwZ8KRZ>uq3$-Ej8kbcw{E(PHi!VUx0nia?{;ZKikUQn#C2V` zll7pQ&2077Bu^_M0Y746`J>1IpOfa-mE5hx)NHwd4>4tOJT*_;j z|8?E6iaXCC+wm-pC#YaZJxb3p%@Fb8ziB5GcJ2^rJ0-mk$KwhqHY5wvA1=$qRTJ^S z`Ar-nftD>hZh@#gthmR*pwQI#-EBf_^=)ha{rw7L2k|?FlJl5tgJu2A>B;RVOQ*+y z^h3^E|74zeGTwpck=BiO6YNEZo*RNF2^j~ybsSfm2KZm!a`iYcP`2-dex$H#6zKRW zqeBRa2MF9bpnFsDS7$6#uE!VY!DAZ|ZW!yWE9`dhi)#k=@?{L>Iyo+YN;q@DUd+Be((Ma>UH zl@?sfo&*2`$6v?66?zA>0GozmM48A4?(} zIDR?!$J5*pXj5b+YDzXoRt8%3bC|WF8I|7g*uCgJcG5Y_6&X`tCz ze2rUZ5Y&e9-G&fQ)cb7kOAHxJNn{-+-{2cn2d{qYQ_R70A-b{S&Y$yx6odcOdGDhzYp>=8uwZmE9p3|O{Im0Tq#0zy4r%W-_Qh1 zLO@;xi?1<5k(e}sqdp(1(F|_{ey<&w#5DZb{l*qZP~z`k7J=Tb42?${yC6imq>$CH?@r`(U{RjTN6VGPKn*k_vd@r^mxgBgUmC zq~{e3?Mo03|L6whayfG#|I_H|?qpxWm$PUNgt-HOtd#~mqJ>qB6fr1-!6I%S%=`>5 z1T&UlnGw%Y!qHfxFo4)rH?SAf4-n~QtI$iV$Dd{YiE2yW*r~_i`5;sHSjuRhNL^}Bw%E04!dcI_ zFAz}N7(Pnhm_l_vs6e;Zo`-j~A3oLg3Vsx~=-U)kxWo^L*LgqD&UrbbK|p3B zaK#^#Q?=ohN1{2-=v_5F(1ry&*Lpyj!d@AW9#U0}a3zGKZ9&mfVBcu_7VAr{+5c?O z*K)s@4eVU#K&nFAh^UC%U;*9#K&^h%3gS7*b$8yWms#bfyL zYf(IWS$}w1O2Eop+{BAUsRk3-w|)uKiGGw@2Na84)@YlT!O_2wx-o@2*EYQuM@HW# zu{Jch*gBR>7U@ca(lLNb#W1Q}n(i~JEMpEzws@>J4Lbu)Xb<8zyjj21FGzb#J2l!U z;Y^b^^#PS`2Iv!oU3bL&jq*DG8ZHFsf?*n~3U)EpV$Xgm7Qyb1RhYt0UtOKha;&k; z7=nQr=a`&Dav!cyN9yPAu5il|mF@;Bim)hS_+dhGJ(~A_gK@6xC*)oFnPgqb+WWS! z0lgx!x$rK-LRkc83mCXA)^(;&KvwpaLjpT_R#?@wEFFUVD-Z}>;E5Tpu#Dr|BjSk& zI}j&pnlx3939pPnq_aGqJf3tlotq}q$@DjZIqr*E*eBaw5_c;10vnIcm(T=n6Q01d zh+(07yLp<0k1)ZrfvZ|^^@SEvWG+hMZJMCu{u+~jI1W^C*RP?Bx#r>{t+HWRmx9CS zCUa6p#4q(8j%k(s{h>QU1-b&EyLJ#yj}C<+#s}k8V2i<`>z&hScyxZGr-~WfD3AiK zYR8jYsDms1*^S+$WKtE>T9t>WB7%+;GATH~1L`N^hI|%cCP)WO@4H>wO>(?->%vF6 zbT;F*WIG0NLfrC;hb}z{qXC2^T!;SNQ>13%g5g>7@e?il4(g}Mv5THdVJp&^BD>D{ zUEPZShX+3czF%5>!X95_4j4bx+?}=Jh&~8D(Z+&xf!&C*7P&;MioV@!vGyiKty!r| z$9l72mI0h1#musHazai(N@G2AE>mosJ~w7sy}#szphXv5DjuRS_!7<|TN@xKe6aAL zF&kOeHFcieQKdHBN#2`P#{gfG=qVJ;cHjU57PY_j9pF59PZpSY9Eg&oSLR{f2+1HO zi`}ll#{9u_YMb?U0{~5iL>FkHGmIa3WG{lzt|C-io}Q7PZ376fPkP>L1B^K8oyN73 z{^XolYXtRR2y(oyZ?HrAtXiY;256;uhq}*s^U>UJ%6ftLj>Q?flx|dL74*Wv{KSxz zoYv_Qar-}t!8HJ^SV*Ljku7JC;_lr%G07Lm=L39U8(cH9Woh)I3E>QaAo(1zRkgJV zoB2;omaPU0k>6ZjDI=1Bwg~U{D|v?im(~O<5{^yjC4NH=ZXlkmr>t`;f%xYK>MSvz@fin-)aqz1-#_7_&&Gfl>H<>;*lcGL_gG+sGfbN# z!SsM{hasC9vnocDI0v)%xtU_cK%Im^ZJnPmq@PZ#Y|`W9YgY#8S!)iO?+4~2UVB^L zm7Zr6`>gpdu(K}lt@FsfM-Xr?!n?ISi&FdI^3V0m46UCe{ga3bY1YE;FAGN0ADfgT zyLX3g(jDUgl4xfm)}6of8KE#Rxde*c+K}{~rFoUl9@iN^lghQzf|4?d_co~OkNNNe z1YAx|5koKhu;kPRBzAc? zVJ3ueMM$|ngMS3xOfclL7&dKV%>Z&2YqhFKl6a>clD?Mx7NgZ$eQHB?(N-7>nLDKT^dO^qI^shw5$Jm$uegZLasg~NxWKV^ z&EdcJENBYyWV`e8jjq+bDR1jQTy{Rv=Cx^Ixrb3B5*{c`%d;f_Wd>2W|Nba5rl1V-g@3r5`*y~_E1)>aU5dR0(_WMnM72hAT-bg;SxKxE-2qWygD zj78HDjYSedZF_X$L*ih=%6WeCMT>Tyc%7YxC}bmpx91JN?_#z;YpxzCBfwKQ#ankN z7^S1GZ10KXt!Ggd=L%9}BSnYBKMp9?lM+)qY8!7V`p!XeK`tNkbSUDMs09ALsQT&* zz#!mkrDrUPL|4ftYNiYl{gNo^>i(HrnZ=PL8IEuKY4rJ)eorR%Q2`}bOUB!@ND^lv z9aAe=&0&`md)-kT*g@8s#$E0*y1rHUKRqzIH8Y`ZFxm2CmhXROys5#6q% z{`gmDA}5!Sv_R~O7_n$kUCr!I3GCB)Hl1cvQVO1i?E{wBkgF+(Ot={)?s>P+*W{u6 zGe1cgv@=-*9T{-CPg93L;ihnuvICv=m=4DoaPE76ZE1f`s*=kr6jg9b3HXk42aDv-96n%R_-cW7Ll!_MObTB0>Np+4I@L`Yk( zMzZ|6Twt$I%#q3AUHZk8JE~>e_HRp*E-+!!lw`TVN|)4C9Jd*qt6ul1K^(6U&3UwO z1zRt~p)VRz&`Fh4X9|lQmv~B%c-xZV@qKy_HFj%!Dc%LgvdlB8h@pw_ARU2lkrV5p zW|r(B)xvyJ3{G}8Cp=ZIb7)No=?zwgIq|f=gwxNs*ybr*MUk*4y_cYW(|CiBhMJJI z^ByT1h6q}iU6|mpn@~h!3OyJGkW-T~t%3~V2Uxi?a{loczcp@*iz^LYP@O6X&@1HlV{)0WO4$EDdU~An2$@|GZKNF+| ziO#vICg9#Xd?EZ+0Ec##tD*-<$CMtk0?zRVN;H0pnN1Hxi3i(`e}pp{YTQm+NNWnQ3c zfY5S(Z3KlZWDma%Ua>D))Xhb5XIdyKlvv{B|aNkpbJON&o^8R@sOQN68krX9XwN2ssKnu4@7U4bxpxI%~G$;g{ZB9uMXEmSF zobc$?Aug*D;A1whg9qBWwta%qg?}6a+eA>boNz$KyJ7K5BX%@X#<;A98!b{K14H!YuvWo{k zbO#Dt@`x)ph(+x|7y8Qx9uOQAjPcp|Mj<;~;M%0UUfBPRePbB6;B6pUv%kGY3jbcx z=(FR{r`~Y?N_Qu%_sT3e7u{7T#g*~Ts{fzh$VlSyItJujutT-1YFMMtV8_O~*7oDKcpKM#xa z|6&UCtIaAN=Hi-fFUSkVyS2JD?d;M@U`vH3Ys>@CNpt#KiN*W=!#CmX;VL2V!Q&H&4pZA; zrB;DM?x?5E9@?D%G&|+F>5y`oUF4i^8+EG%X3~MfCibFd6`T_hEncKKwN9U}S{)KZ zcY$sj$@IX-MWgK^S*fahGo(ExbyPhED)~&7cqAu*3)8%4S^qgP9u2@~w@f-Pw>GX~ zu{nv%sA(C9oqG4iH%1G$KZbm(lmFDf4qL%_Qj3E|gQ&|u9JoJtl?Mi3F^RskXWub2 z^$BqWWeXZ6GR!yPUKprT#&HZ)BNnakY?1Sa?s zGwsGLRQ0zz*n=(kCy_`38XZkcu7OQ%e3o4SwYM$!)-b-jq=-piq%*}BC|tpfUpssBNU*Ghj!w@Q5+l>bXu*p=hQ_qnIJr8` zOfkPHL9?!3X+#HiTatFvN0tA%N;JtA-q0`?4;*2-m8loq>oIWRLnQ^R!6hn33&bCG zHQ|1XCWD7ZT&E$Qp?i>hY(1BSX-4`EnL;%2Gur~M&V@-03MI!5-agjw_+nqIVd!H` z!HmK>&BCRk9HD3hUXZAtgml{3HxE}KtH0Xs8`@j)(>T08!I>6GPRlJgY_w0qDwO5O zeIPAM%7TpY%&~2hsrPOX(9VQ{{a-8YJ5{Thf1a=u!%l)0g8I;av#$-yNP!lOLWvls z@Ut2W(tZVx!G+@8I4lEzF)If)8_Ns$(fA$@Qr3Pyu4Mq2$7pLSq-$S)7zU{m;NMxV zN?t{f+3T*Doi`kS)m(rlSQ&ywkBtI=Ox;`85X~;}3h7^R5H+$VpqlG_rI~J(YW>V& zJ;fRSY7H(y74s|-WVn@<1}jC8%tMMggzi(4*))4@(xGtl=QPw7=griIx)d!$NJvP- zUGCC$VAV#sX1K^z#8#2WT|=B zYmQ!em`8urvh^+=TWf__)maEeQ@yzj@wiC0h(_#7K0qA}?^y zRZvOQ;vV2ELinaHYgNNg7B?2~3p-d5?kccoM6&|jdH6MaYvw2zm+*P!nXl}mKwX)= ztsSfkx00n|w8GGPYmsbg8p`<~0{CMvvui)=5;QbF~KuISuw;N!s zfaKHS6JxMA5I<@o=-Y^(0noB16`k1?lzdB3zfu*ng0?drtxC%I4$5@!$N3vzSwQnI z<70EIsR2XJnJ4;hYnO?|8LuYEK}MD!d}LIms3ki~`I}h`T8Z9U*d~}h63#e*`3&{B z3WgBl!n`ahHJN_FZ*ANpiQC}Q1zaXyKqluIQRe?tel{Q&k4ZJyR)QAIl!N zH;DN>!Av%J9qpQdnSx;^V4kUZh4}1m)O+WO7(oe_f7ZMN{?deU5fniQe9R-r1%`lm zzAMKuhy;J-QYKpOkB6oh}PaLE9~7_LlpoCvxmuCH7| z-4pLEY%XZJWRnYjTlCgHmg&$B!=jV$~fh{QMNs_6#-nhEi4?7}#d`yv2p!!@VX&cAH zQXzaJ)(8>|L|QFaRBbE|NTagWs%}x+nYG{#$DR7D!XkQbS-{;N|O>1j@E?)-cB{bw&;4m=!3 zRR(H`ZozlgV66`151_Yy)LMM4vGoS^I&fNsS#O(;0&(+y;Qv$S!v+ZVch2Z%6t# zg`h7kRZuhE`1-r{{Nh=K%RuQ>LxZd|#HCcB{U&*F+Flfb#U;5P$m0QjT1xNNOkNqM zrA88Uk8QCk^p7{K2-O{InzQMI(Y7w19l*mIeR1?9JY zJ>em)rH8deIrs{fA`%C>A>O66b{m9 zr5dz~US*Jyb#MVyIQnorqCi53Caf8PXb5;^xw5$ZxM3ggPP+q;E4;L`5lAllnvPe~6M}dRTnW8b}h0ejCzw=+2=qq!&B(uy2)=Lga)Um}JTcjW3zm=v6 z8vV1cho45|3_2ra9aT7dVkT%a%dA`H&-6t8YyIhyWRGIr$Q&BifG$4YnF^;cN>n#e^RK6E7KsFFuvdk{6-_z6FhMmd?1LqwrT!HPAh_ zrzB7*AZc$P*4253C&i9deF*}|g@w)X`)imSs(t$_-+Xa_ZU1d42wie#>tQCx_8r0< zXE<3XmWq^bu**xY*a=|uBfeyyueO|!T`y0@cjy=`^I_u*G+mX*byh?gaIyUsp?Mob zoNw)0Hw@`&j?F{esOaHs^$G=Vl7CBuHt>;jIMZ68a$tu;uLv@vn3bbE)an`BWWG>^ z&84x;ePMvrEB&mngUl;da-Jt*`M8=B`TK}1HMucMQ!u6UCDug%*zxPYThO(ee+2v!|!}}HZVPjQ3bSqWGCftpw-}tQ-=2wXHcXK zPr81?t&60ki`euf!D%?IUO`7SIk8Ku?Y54q29k>I?%W|UN>R-qxyhoee&jA z?*G4HYwQ&i_+5u;l2T6S9qFWLr|@u=fH=awKJmt4T#hPX5Ob!&Q|H-$Eo%L)SzWuT z<}Bs;AR;2M>fMtrs=F)!(77VLUb#w8-5BpG_S0)y%Kcm6kFWhws30fPY;v6)%{p z|47?40gPt_(_*bC2cXs$j8}1Rl8?su(iQjaVuiG5y+$DRX}O_=O(UQ4+jW*jnSbu( z7L~BEMcM27t8sbSgaQs(m^R95f#!HwuZi3-Q!VH$??Jq_6;_;urA;~v3%FjAvi=7AM97(y8uZSZ;!{3kv8lRmK0vze`^mTS=tZ5_c8dp8g!|2+q_5lDWy)$qit*N;R3QGm>0|rngbb*@Kzp~Us~_4;-qr^rCO$$cl>k=F{PKT z!|Kcdv^iiXu`=ir7L=%nL$8}%2UsWN$0;)m&9F^W+%XcB@@-Xv=1_&)B1-Oiu*2=~ zNC{TV%#S9Wh%fjea^6mBD^rqd{Y|_O_gRN^(c-=$V~TC2pnVR8oIe)W%Yf08rIYC2 z@AC4PEebV=1Ya@1NYlJI2&6J{gWt#T^oVOW_~a~U5z?Tr{{{Mx`7qrnzk@|kW&OJ) zwKF;btmFv-RW1ZH3*iPhNGIonR&c24yr+5}kbOZxpbLlY&7z%)&N`s))rPjkd9N8> zoecJF(*6y_8Sicy>d>|@W%nuuY`nNCgC3sY*#;Ogzp9Z=pwqoBx(9nl*iji|#HcDs zG8*vHruZ+^58zHy!u5j8nXNd6-n7AE;49xg@4fbYMlW=c-Sh__1Q}qQwXkbIjJT;7 zV%1dPt_~EnSmH!tBoA@kgCJ`Qot)tX6Q+;==pWoh^iV*2hG{_dJ$m-7fUW)UFR*CO z(WZ-unxjS^gu_kP@_7510#>67*hY|A&t)gG|Jk43H;LC6@AC1=nb)#24mszP)9@f9 z$MP`G0z{zuVZP8+K7+DOd*tTVdrCb_&rj-cN7-AHZfuZpv4%Ws+(Sf|UTHD=_uY1I z-|k3_2lIMsI2eU)d*5s%Jux&3%kD`d!(_-`u&yiFe9>K@@bV7KK$3dc#Q&>Qfl5C` z0NYevni8E1O>88dzOBm+tsdJJEycxNjgl9GF^T}62FsZy3J7;m@mzs$a z<(qt+Lr-9xt(z+AA5s*1WeQRK9B9?%kXKslT`^q8$9jss^wG_uoFq@%q>yQd{~-~7t*ZjeHx4sR>*SCRHNXW_C>Rkv zl0r)6@ApS@SqWh36lRTi-to0=b~wa95zk&WRgu>0@{0+{k`>g_V+-^21c@_z)I{Cd zkE=-_=cPyvTDWahmvHIDGiz`!sUYhSEm<2Z zBk|;9&35#u#YWUrt$?A`E}xIkPkUP&alqxXo(wcrYl1&;zaCYNg?<9Ad@-1-#6 z){~REIV4VRE?*rW7iP4W$|Wa`Wk|>5)2eln9QxEi+1MP!6_z_KHwpr zhUb>!Ff_bGS;B5x3YPq=6*KVI;xP_;a|U((vJ(;d6X0&*KwtA1V9jk+F zle0!kVh?(;*b;Nz!8|ei!aJO?!7Sj779Y+>O4>3)vOxU~_|^00t%?zx7A43m>8)|6 zV~9u(peCY3cd&*wsO$P2^*gnVF;~uzjQv`xZPd-8{3_F4Yi`XMZxw>f|2Wt;p5VIa z!qyNh)m@1;K%fzxdFCaUYc|ebGfYB$6C*HSkHq*hT~2Y|$f-+6E*+7vaPIZ3jqi|M0x zJmGZG>?~Rr!F~`6`U1zfe(kVFAXeZmd~cbH!;l zt3Ko@f6YWlfHjd9OD5ounqI&4qGo=@GHeUsu!lkXhKi8V@)w$K1hSm?_2fj(XwDC( zNHgmeK-JDytxo9ZUP?*pLH!;oolS(1x;H{h+n<|y_g#3_Aa~zV~{JiGbo)h!tjeAfTJ7$Js=-`p5t(wi>u8S)IWBavpD!e$fZn{d>NI;6Y zdy2MdCC1TArTXaw%BED4c~GTLDc??Ou|Lb5HRXB)>=s`pP1ELcvTGG={fNO=%t1i~ zHJwEd-)=;%0w-C3XSK>$llx|vIezKQ4_k^$>0^L9IfR>*Xv`KNf|pQ^P`8UUwP+o0i4_VYN~< zBXLm7nqcnz;S={DO|kVyyikkOU^KP4-3A0j|A)ulxTy^EP-fjBa-;y`9LZvZeB_z_ zU8N1_!*(X*;w~&d!}jk^vCY~C96S~4Ce=vpCsq*MGdcRby~nts@&+6N?SdZS%UGV` zwsy0?4EW#~)>8q^rotH@ciP+9j-|0z<_LX+Si99NZ{?zo_yXU+@6es=ohb%OV~Z8_ z8?UDSH#L%*J96bdY(XF-dq(L+#1}nR?X%~JM|EpQ@oQ;2npnD4;oBN3jK;1Z2UqX( zj>dcuFsV$3E5YTsfy&^m$la`XYLx~4DwV$$%B->)IVl1U^SFpUf3tb(^y2bthjcIhd53_7olW&&Qhimdv$?y9`{cmCO^HF01L%GdLdYJBlk*Hi1D zc5`AM(!?(+%MeNozggVYuXWIqFR0+R~tNpW(~*OEbofhLk@l2(9MvnVS)3 z;BubA_ez6ZO(h2-Q0TmGip=$ueg-sX=v&@rEdls$tAolmcIHJEXkqi8SrGqdwPK9f zEFBBqjyZxNTNm!5++w@fc#bo`AmkMFzH?n!dz za#RpeHfFxv30}yT@36F-LKRl^O!!*8Q>8VDV;wrY@`l~kF*)kKRU;DkATv6xtKEY8 z8Bjy+IntS;Ife~{qI3A}X5b%>qqlwF-U1(WVOCI~UibBNmGb;xb$VjKF** zAQl>%d>sl^BLOWre;066$DHPLFl$S)d;UlHxv^YAJgXA1e_*ldBzH+$2`u1(s3Idu zLP%J-4QIgs&6E8eUvo6|*h1DXyN5+y*&DsVHG_~R)2+bv+(%VgfDvqt(%x#hux7=Q z(_pP*J?%u6K6p6(?w+kUB3hr1a%iFeG+s<)O zlB;8tiL-!LsH2eeKv6j*uGQq^Cv+02rF@6)(^wKmc7Cc84*t43762RQN7}cJ1qa5#|10D9$K(i(0}DVL#^ob!{!(PFC1G9Yy}o%? z_!{8igy1SG8B+p|7l^ok+>qL~&&;PAq$|vP`57i~;KdAa)0EH?DMS|v(if^ayhSHX zs!Myl7D~XOIwHb4T2NESrQ0DXvb?DapO6!_#I=q41}t8UB_K0_qGt)$R|#F0HM9)* zi{H!EsS8F`Xe&WUR&PqFDcEIYSR!myaE|qwC{T6+ZuyF@6qHSj?;biqvkOe?-o7QK zkdK516L`G}XSzRlVY9n*O+GIcewd{VfzN~1S1$#e5m-$(;BTT?6)_X@0h|VNSQVJP zU#m%!@@hjHv*08b+P#&BLgX2mPAB5wmAUbd9R8EoOn*FPEoxaTsX9e$D&zZzYYo8K zI3HB0zCbM)PzBj3Tz_O9VJ*9*wfsk)nbA%0hQVID_@2jylyCMuc>p}L3_M!{k&ciN zLZ~B&&-Y3v9IZvN9mFB4C))?J;-ACh^=zlNr^p07N%VxXvLAOg5(;z!9Po)QraHv-FO)mKHP~XA zRq@ZywZG3mR4X2`1@x8KFl~0_ut3~Z+{Vb_`1ltF*AL_em@e)#&%&tjHbc7^0asWj zxieudHbA}r_}fFNSi?3tr}1|)Ahq={M*F#jwFpH;P14uicX!Klp z@55Eh=caPP!CKe$0;_*2zvatVv~gmC$;>oiT?)~VCh9E0X>>^%m5R}7#DhmhO*?G3Rub-IifwKM|?3?2pFyO6dxFnByh<&}n zmBxgMxnZfH*i!HZg+cL$e*J1bQ*ESRm{0Jx6e&oQ4$kc+X&`k!)JN0(+(cxcc->0*aIBZN2bE_uB-j;uu=G;k}tSzjffsF6ltDI4vqtVYW@(8T7c+C z00m}B_x_Nlf{q|U>D)A*9EFdke$7@%JCr!O%(Mdwu++S@ZDIcRy*q^u4cHYS3VhT_Yx4GWtr z4nN088#`eL?0_36+l|CNI9-Cou>R%=HFEz&W?JU@h|MYX`{ULd2i>>*=@3}v( zA%h=1mZ(DoH`&egWdd7agB;52CneM$9x7nO4(#KH-vz%F<5pVp6EH(i5R;_%T3-w0 zDgQC8%%hb*&uaNj6S#EYm$j?Ry=O78xpzU;XY7QBHm{S{LGa<@$m znFUmiRlYl_O}O1dTf<#_J4H&<2<1sJ+LYoA?z`pgY$CMxSk$}{Z&hax%KgSiNWEl8 zEN@(f22>BLKn^%a7P7oBm}*i6s4!acE;|>@)Z!pi?JpK3B<k|086}PvXL1>zARLr4q`$oeieXG>V0XsKCwGn_J0)tybfrrtI45*i?32 zJ~;oDo3e(#GHk(VY2WMfpb&nKeKGIB_Db3jDJdq2oc~U`+sTYuRR-Xvq?;^=Q+p(} zKg;*;c3Up+!rS=gQxAmh_FqAI7)o#RMO5l{2JG+z?&5gTdYFd!+wUIU1fQyo4ghJg zUm(vf_}KSOrFl4AeF)5q8g`I-kHu^J2e2j(F%yB6gqA?@5Hx$!g;(yGI6vJkP#X%?91U1h_q$G(f1HEuY^mziZ7Ck`=dqqHIS`wp z#=_!K@tGFCXd7Wcr}|2vGe*t6DkiRfQUG6T&m94QjUr*t!Yhh9N^cg|K)xpnQhw9T zlN``4*6>FYZ}76FkkL%*Uoo?{zz_OjB4?{mMdJpx2M69%_HLqhVl7a>)^#a4^ObNw z^I|gxdXQ5-q*^u9E>AuAOsPEOAS|I-1q7hHvs^2TcqXWzMn`_XL~R)j;&b3Wh)|mD#OyUABqYh*T!)?8SAIv_d!@CuD$rJAcbJuzbAx83Bz1yxV69=fFMM zA{h2ec`?soP6)~I%gQ#VaH^_`3pIU&l}%Fm{6d$;tha`u_APTh8`UjlUlF52hn;NN zY}QOFCNqe8w&Zc+v<{FitJ5eaSTfml(awQ}a(GGMChWr|%f(^Z6I+EIdN zKtDWDN6Ui-|B#Of;X3d255VXfRmlMX!lrNW>8sokmn>}~2R_+1DaO@?x!y0F7FFe3 zwv$)aH6zN`Apr$gx4ElEhVx}1M3~4aBT?ZO;30vl9W0EO6q;A-?A{*_E@Sx=yeC&K zqQNx&C9TAOZKJ?7SU{2ih3UwwPSJaD+4D3`-jp4+M*pM}5Xw=gd?Uv+M;ZUhX#*eQ z6%WGbho)oYA8fr#v`3UI)jK)pCt%0*eUcopoWAJ5_$TF42elWnf3Zte%lOy`XO>+Ta(%`5=QcNo?vq5{xH(KIIz2Brwu=u${a!5D5GY^xXmR%WI% zDaiaq$W1(YupCA!b0`U>EdyWeG~N|-thd*Bd*6d2Pwq0M8p)pK$Nm4C>bdEtXbxZ6 zS_@o4AwMHs1NoIh_2+s&x*&b@O846tiY%#aiRbs-7JKZBq7-8kZ#~ zcn-~ZuF_@>4-3Zl@?T+o76H|gn_@fd)~px>Eym9s@Y--0MujlEfqLay5f3)HHjNrJ zf9cCi<8_rAFDKSNqtqE*TN$|9SrMfv>(|DhoXF<^eV-o91mTq(M#*;tsgZj`|qkddy>>J znFhUnw!BOj2z&muk)562oP2(R~ST z8Jl}4KGwG`@dBy&QtC5s&wjfnbTKi+I#Q{*@cS9XeH;-;Nm_f#{;p=hUq(_3GU(lJ zKzxo9R5+wR_75(nA=grG$_f}tonxSTpch`G>G32=f`4q)!z#6D zlOex!Φ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%0Av;rH(OzsMyyE?jBLdN63 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�ee>mQ?QTGix4(hep)5*$o^o!27;0;2A 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 NAeq4ZCX;{w002EBE1LiS literal 0 HcmV?d00001 diff --git a/docs/index.md b/docs/index.md index 000ea345..97e69af2 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,17 +1,36 @@ -# Welcome to MkDocs +# Welcome to Lassie 🐕‍🦺 -For full documentation visit [mkdocs.org](https://www.mkdocs.org). +Lassie is an earthquake detection and localisation framework. It combines modern **machine learning phase detection and robust migration and stacking techniques**. -## Commands +The detector is leveraging [Pyrocko](https://pyrocko.org) and [SeisBench](https://github.com/seisbench/seisbench), it is highly-performant and can search massive data sets for seismic activity efficiently. -* `mkdocs new [dir-name]` - Create a new project. -* `mkdocs serve` - Start the live-reloading docs server. -* `mkdocs build` - Build the documentation site. -* `mkdocs -h` - Print help message and exit. +!!! abstract "Citation" + TDB -## Project layout +![Reykjanes detections](images/reykjanes-demo.webp) - mkdocs.yml # The configuration file. - docs/ - index.md # The documentation homepage. - ... # Other markdown pages, images and other files. +*Seismic swarm activity at Iceland, Reykjanes Peninsula during a 2020 unrest. 15,000+ earthquakes detected, outlining a dike intrusion, preceeding the 2021 Fagradasfjall eruption. Visualized in [Pyrocko Sparrow](https://pyrocko.org).* + +## Features + +* [x] Earthquake phase detection using machine-learning pickers from [SeisBench](https://github.com/seisbench/seisbench) +* [x] Octree localisation approach for efficient and accurate search +* [x] Different velocity models: + * [x] Constant velocity + * [x] 1D Layered velocity model + * [x] 3D fast-marching velocity model (NonLinLoc compatible) +* [x] Extraction of earthquake event features: + * [x] Local magnitudes + * [x] Ground motion attributes +* [x] Automatic extraction of modelled and picked travel times +* [x] Calculation and application of station corrections / station delay times +* [ ] Real-time analytics on streaming data (e.g. SeedLink) + + +[Get Started!](getting_started.md){ .md-button } + +## Build with + +![Pyrocko](https://pyrocko.org/docs/current/_images/pyrocko_shadow.png){ width="100" } +![SeisBench](https://seisbench.readthedocs.io/en/stable/_images/seisbench_logo_subtitle_outlined.svg){ width="400" padding-right="40" } +![GFZ](https://www.gfz-potsdam.de/fileadmin/gfz/GFZ.svg){ width="100" } diff --git a/docs/theme/announce.html b/docs/theme/announce.html new file mode 100644 index 00000000..594d6af7 --- /dev/null +++ b/docs/theme/announce.html @@ -0,0 +1 @@ +Lassie is in Beta 🧫 Please handle with care diff --git a/docs/theme/main.html b/docs/theme/main.html new file mode 100644 index 00000000..1f59cb80 --- /dev/null +++ b/docs/theme/main.html @@ -0,0 +1,6 @@ +{% extends "base.html" %} + +{% block announce %} + {% include 'announce.html' ignore missing %} +{% endblock %} + diff --git a/docs/visualizing_results.md b/docs/visualizing_results.md new file mode 100644 index 00000000..850c9bb2 --- /dev/null +++ b/docs/visualizing_results.md @@ -0,0 +1,15 @@ +# Visualizing Detections + +The event detections are exported in Lassie-native JSON, Pyrocko YAML format and as CSV files. + +## Pyrocko Sparrow + +For large data sets use the [Pyrocko Sparrow](https://pyrocko.org) to visualise seismic event detections in 3D. Also seismic stations and many other features from the Pyrocko ecosystem can be integrated into the view. + +![Pyrocko Squirrel EQ Detections](images/squirrel-reykjanes.webp) + +## QGIS + +[QGIS](https://www.qgis.org/) can be used to import `.csv` and explore the data in an interactive fashion. Detections can be rendered by e.g. the detection semblance or the calculated magnitude. + +![QGIS EQ Detections](images/qgis-loaded.webp) diff --git a/lassie/apps/lassie.py b/lassie/apps/lassie.py index ae5328fb..49e25dd9 100644 --- a/lassie/apps/lassie.py +++ b/lassie/apps/lassie.py @@ -2,6 +2,7 @@ import argparse import asyncio +import json import logging import shutil from pathlib import Path @@ -10,10 +11,6 @@ from pkg_resources import get_distribution from lassie.console import console -from lassie.models import Stations -from lassie.search import Search -from lassie.server import WebServer -from lassie.station_corrections import StationCorrections from lassie.utils import CACHE_DIR, setup_rich_logging nest_asyncio.apply() @@ -21,17 +18,18 @@ logger = logging.getLogger(__name__) -def main() -> None: +def get_parser() -> argparse.ArgumentParser: parser = argparse.ArgumentParser( prog="lassie", - description="The friendly earthquake detector - V2", + description="Lassie - The friendly earthquake detector 🐕", ) parser.add_argument( "--verbose", "-v", action="count", default=0, - help="increase verbosity of the log messages, default level is INFO", + help="increase verbosity of the log messages, repeat to increase. " + "Default level is INFO", ) parser.add_argument( "--version", @@ -40,11 +38,28 @@ def main() -> None: help="show version and exit", ) - subparsers = parser.add_subparsers(title="commands", required=True, dest="command") + subparsers = parser.add_subparsers( + title="commands", + required=True, + dest="command", + description="Available commands to run Lassie. Get command help with " + "`lassie --help`.", + ) + + init_project = subparsers.add_parser( + "init", + help="initialize a new Lassie project", + description="initialze a new project with a default configuration file. ", + ) + init_project.add_argument( + "folder", + type=Path, + help="folder to initialize project in", + ) run = subparsers.add_parser( - "run", - help="start a new detection run", + "search", + help="start a search", description="detect, localize and characterize earthquakes in a dataset", ) run.add_argument("config", type=Path, help="path to config file") @@ -62,14 +77,6 @@ def main() -> None: ) continue_run.add_argument("rundir", type=Path, help="existing runding to continue") - init_project = subparsers.add_parser( - "init", - help="initialize a new Lassie project", - ) - init_project.add_argument( - "folder", type=Path, help="folder to initialize project in" - ) - features = subparsers.add_parser( "feature-extraction", help="extract features from an existing run", @@ -100,15 +107,29 @@ def main() -> None: subparsers.add_parser( "clear-cache", help="clear the cach directory", + description="clear all data in the cache directory", ) dump_schemas = subparsers.add_parser( "dump-schemas", help="dump data models to json-schema (development)", + description="dump data models to json-schema, " + "this is for development purposes only", ) dump_schemas.add_argument("folder", type=Path, help="folder to dump schemas to") + return parser + + +def main() -> None: + parser = get_parser() args = parser.parse_args() + + from lassie.models import Stations + from lassie.search import Search + from lassie.server import WebServer + from lassie.station_corrections import StationCorrections + setup_rich_logging(level=logging.INFO - args.verbose * 10) if args.command == "init": @@ -120,11 +141,7 @@ def main() -> None: pyrocko_stations = folder / "pyrocko-stations.yaml" pyrocko_stations.touch() - config = Search( - stations=Stations( - pyrocko_station_yamls=[pyrocko_stations.relative_to(folder)] - ) - ) + config = Search(stations=Stations(pyrocko_station_yamls=[pyrocko_stations])) config_file = folder / f"{folder.name}.json" config_file.write_text(config.model_dump_json(by_alias=False, indent=2)) @@ -132,7 +149,7 @@ def main() -> None: logger.info("initialized new project in folder %s", folder) logger.info("start detection with: lassie run %s", config_file.name) - elif args.command == "run": + elif args.command == "search": search = Search.from_config(args.config) webserver = WebServer(search) @@ -174,7 +191,9 @@ async def extract() -> None: station_corrections = StationCorrections(rundir=rundir) if args.plot: station_corrections.save_plots(rundir / "station_corrections") - station_corrections.save_csv(filename=rundir / "station_corrections_stats.csv") + station_corrections.export_csv( + filename=rundir / "station_corrections_stats.csv" + ) elif args.command == "serve": search = Search.load_rundir(args.rundir) @@ -196,10 +215,12 @@ async def extract() -> None: file = args.folder / "search.schema.json" print(f"writing JSON schemas to {args.folder}") - file.write_text(Search.model_json_schema(indent=2)) + file.write_text(json.dumps(Search.model_json_schema(), indent=2)) file = args.folder / "detections.schema.json" - file.write_text(EventDetections.model_json_schema(indent=2)) + file.write_text(json.dumps(EventDetections.model_json_schema(), indent=2)) + else: + parser.error(f"unknown command: {args.command}") if __name__ == "__main__": diff --git a/lassie/features/local_magnitude.py b/lassie/features/local_magnitude.py index 91087667..230078c2 100644 --- a/lassie/features/local_magnitude.py +++ b/lassie/features/local_magnitude.py @@ -251,7 +251,6 @@ async def add_features(self, squirrel: Squirrel, event: EventDetection) -> None: std=float(np.std(magnitudes)), n_stations=len(magnitudes), ) - print(event.time, local_magnitude) event.magnitude = local_magnitude.median event.magnitude_type = "local" event.features.add_feature(local_magnitude) diff --git a/lassie/images/__init__.py b/lassie/images/__init__.py index 5773511f..24db78a9 100644 --- a/lassie/images/__init__.py +++ b/lassie/images/__init__.py @@ -9,6 +9,7 @@ from lassie.images.base import ImageFunction, PickedArrival from lassie.images.phase_net import PhaseNet, PhaseNetPick +from lassie.utils import PhaseDescription if TYPE_CHECKING: from datetime import timedelta @@ -51,7 +52,7 @@ async def process_traces(self, traces: list[Trace]) -> WaveformImages: return WaveformImages(root=images) - def get_phases(self) -> tuple[str, ...]: + def get_phases(self) -> tuple[PhaseDescription, ...]: """Get all phases that are available in the image functions. Returns: @@ -85,6 +86,15 @@ def downsample(self, sampling_rate: float, max_normalize: bool = False) -> None: for image in self: image.downsample(sampling_rate, max_normalize) + def apply_exponent(self, exponent: float) -> None: + """Apply exponent to all images. + + Args: + exponent (float): Exponent to apply. + """ + for image in self: + image.apply_exponent(exponent) + def set_stations(self, stations: Stations) -> None: """Set the images stations.""" for image in self: diff --git a/lassie/images/base.py b/lassie/images/base.py index cc083eb4..5d539e59 100644 --- a/lassie/images/base.py +++ b/lassie/images/base.py @@ -35,7 +35,7 @@ def blinding(self) -> timedelta: """Blinding duration for the image function. Added to padded waveforms.""" raise NotImplementedError("must be implemented by subclass") - def get_provided_phases(self) -> tuple[str, ...]: + def get_provided_phases(self) -> tuple[PhaseDescription, ...]: ... @@ -105,6 +105,15 @@ def get_offsets(self, reference: datetime) -> np.ndarray: np.int32 ) + def apply_exponent(self, exponent: float) -> None: + """Apply exponent to all traces. + + Args: + exponent (float): Exponent to apply. + """ + for tr in self.traces: + tr.ydata **= exponent + def search_phase_arrival( self, trace_idx: int, diff --git a/lassie/images/phase_net.py b/lassie/images/phase_net.py index 670d8bfe..602f4b11 100644 --- a/lassie/images/phase_net.py +++ b/lassie/images/phase_net.py @@ -5,7 +5,7 @@ from typing import TYPE_CHECKING, Any, Literal from obspy import Stream -from pydantic import PositiveFloat, PositiveInt, PrivateAttr, conint +from pydantic import Field, PositiveFloat, PositiveInt, PrivateAttr from pyrocko import obspy_compat from seisbench import logger @@ -82,21 +82,60 @@ def search_phase_arrival( class PhaseNet(ImageFunction): + """PhaseNet image function. For more details see SeisBench documentation.""" + image: Literal["PhaseNet"] = "PhaseNet" - model: ModelName = "ethz" - window_overlap_samples: conint(ge=1000, le=3000) = 2000 - torch_use_cuda: bool = False - torch_cpu_threads: PositiveInt = 4 - batch_size: conint(ge=64) = 64 - stack_method: StackMethod = "avg" - phase_map: dict[PhaseName, str] = { - "P": "constant:P", - "S": "constant:S", - } - weights: dict[PhaseName, PositiveFloat] = { - "P": 1.0, - "S": 1.0, - } + model: ModelName = Field( + default="ethz", + description="SeisBench pre-trained PhaseNet model to use. " + "Choose from `ethz`, `geofon`, `instance`, `iquique`, `lendb`, `neic`, `obs`," + " `original`, `scedc`, `stead`." + " For more details see SeisBench documentation", + ) + window_overlap_samples: int = Field( + default=2000, + ge=1000, + le=3000, + description="Window overlap in samples.", + ) + torch_use_cuda: bool = Field( + default=False, + description="Use CUDA for inference.", + ) + torch_cpu_threads: PositiveInt = Field( + default=4, + description="Number of CPU threads to use if only CPU is used.", + ) + batch_size: int = Field( + default=64, + ge=64, + description="Batch size for inference, larger values can improve performance.", + ) + stack_method: StackMethod = Field( + default="avg", + description="Method to stack the overlaping blocks internally. " + "Choose from `avg` and `max`.", + ) + upscale_input: PositiveInt = Field( + default=1, + description="Upscale input by factor. " + "This augments the input data from e.g. 100 Hz to 50 Hz (factor: `2`). Can be" + " useful for high-frequency earthquake signals.", + ) + phase_map: dict[PhaseName, str] = Field( + default={ + "P": "constant:P", + "S": "constant:S", + }, + description="Phase mapping from SeisBench PhaseNet to Lassie phases.", + ) + weights: dict[PhaseName, PositiveFloat] = Field( + default={ + "P": 1.0, + "S": 1.0, + }, + description="Weights for each phase.", + ) _phase_net: PhaseNetSeisBench = PrivateAttr(None) @@ -118,6 +157,11 @@ def blinding(self) -> timedelta: @alog_call async def process_traces(self, traces: list[Trace]) -> list[PhaseNetImage]: stream = Stream(tr.to_obspy_trace() for tr in traces) + if self.upscale_input > 1: + scale = self.upscale_input + for tr in stream: + tr.stats.sampling_rate = tr.stats.sampling_rate / scale + annotations: Stream = self._phase_net.annotate( stream, overlap=self.window_overlap_samples, @@ -125,6 +169,11 @@ async def process_traces(self, traces: list[Trace]) -> list[PhaseNetImage]: # parallelism=self.seisbench_subprocesses, ) + if self.upscale_input > 1: + scale = self.upscale_input + for tr in annotations: + tr.stats.sampling_rate = tr.stats.sampling_rate * scale + annotated_traces: list[Trace] = [ tr.to_pyrocko_trace() for tr in annotations diff --git a/lassie/models/detection.py b/lassie/models/detection.py index f4027182..502ebec9 100644 --- a/lassie/models/detection.py +++ b/lassie/models/detection.py @@ -8,7 +8,9 @@ from typing import TYPE_CHECKING, Any, ClassVar, Iterator, Literal, Type, TypeVar from uuid import UUID, uuid4 +import numpy as np from pydantic import BaseModel, Field, PrivateAttr, computed_field +from pyevtk.hl import pointsToVTK from pyrocko import io from pyrocko.gui import marker from pyrocko.model import Event, dump_events @@ -366,8 +368,7 @@ def as_pyrocko_event(self) -> Event: lon=self.lon, east_shift=self.east_shift, north_shift=self.north_shift, - depth=self.depth, - elevation=self.elevation, + depth=self.effective_depth, magnitude=self.magnitude or self.semblance, magnitude_type=self.magnitude_type, ) @@ -441,7 +442,21 @@ def n_detections(self) -> int: @property def markers_dir(self) -> Path: - return self.rundir / "pyrocko_markers" + dir = self.rundir / "pyrocko_markers" + dir.mkdir(exist_ok=True) + return dir + + @property + def csv_dir(self) -> Path: + dir = self.rundir / "csv" + dir.mkdir(exist_ok=True) + return dir + + @property + def vtk_dir(self) -> Path: + dir = self.rundir / "vtk" + dir.mkdir(exist_ok=True) + return dir def add(self, detection: EventDetection) -> None: markers_file = self.markers_dir / f"{time_to_path(detection.time)}.list" @@ -465,20 +480,24 @@ def add(self, detection: EventDetection) -> None: def dump_detections(self, jitter_location: float = 0.0) -> None: """Dump all detections to files in the detection directory.""" - csv_folder = self.rundir / "csv" - csv_folder.mkdir(exist_ok=True) logger.debug("dumping detections") - self.save_csvs(csv_folder / "detections_locations.csv") - self.save_pyrocko_events(self.rundir / "pyrocko_events.list") + self.export_csv(self.csv_dir / "detections.csv") + self.export_pyrocko_events(self.rundir / "pyrocko_detections.list") + + self.export_vtk(self.vtk_dir / "detections") if jitter_location: - self.save_csvs( - csv_folder / "detections_locations_jittered.csv", + self.export_csv( + self.csv_dir / "detections_jittered.csv", jitter_location=jitter_location, ) - self.save_pyrocko_events( - self.rundir / "pyrocko_events_jittered.list", + self.export_pyrocko_events( + self.rundir / "pyrocko_detections_jittered.list", + jitter_location=jitter_location, + ) + self.export_vtk( + self.vtk_dir / "detections_jittered", jitter_location=jitter_location, ) @@ -515,27 +534,29 @@ def load_rundir(cls, rundir: Path) -> EventDetections: console.log(f"loaded {detections.n_detections} detections") return detections - def save_csvs(self, file: Path, jitter_location: float = 0.0) -> None: - """Save detections to a CSV file + def export_csv(self, file: Path, jitter_location: float = 0.0) -> None: + """Export detections to a CSV file Args: file (Path): output filename randomize_meters (float, optional): randomize the location of each detection by this many meters. Defaults to 0.0. """ - lines = ["lat, lon, depth, semblance, time, distance_border"] + lines = ["lat,lon,depth,semblance,time,distance_border"] for detection in self: if jitter_location: detection = detection.jitter_location(jitter_location) lat, lon = detection.effective_lat_lon lines.append( - f"{lat:.5f}, {lon:.5f}, {-detection.effective_elevation:.1f}," - f" {detection.semblance}, {detection.time}, {detection.distance_border}" + f"{lat:.5f},{lon:.5f},{detection.effective_depth:.1f}," + f" {detection.semblance},{detection.time},{detection.distance_border}" ) file.write_text("\n".join(lines)) - def save_pyrocko_events(self, filename: Path, jitter_location: float = 0.0) -> None: - """Save Pyrocko events for all detections to a file + def export_pyrocko_events( + self, filename: Path, jitter_location: float = 0.0 + ) -> None: + """Export Pyrocko events for all detections to a file Args: filename (Path): output filename @@ -543,16 +564,14 @@ def save_pyrocko_events(self, filename: Path, jitter_location: float = 0.0) -> N logger.info("saving Pyrocko events to %s", filename) detections = self.detections if jitter_location: - detections = [ - detection.jitter_location(jitter_location) for detection in detections - ] + detections = [det.jitter_location(jitter_location) for det in detections] dump_events( - [detection.as_pyrocko_event() for detection in detections], + [det.as_pyrocko_event() for det in detections], filename=str(filename), ) - def save_pyrocko_markers(self, filename: Path) -> None: - """Save Pyrocko markers for all detections to a file + def export_pyrocko_markers(self, filename: Path) -> None: + """Export Pyrocko markers for all detections to a file Args: filename (Path): output filename @@ -563,5 +582,33 @@ def save_pyrocko_markers(self, filename: Path) -> None: pyrocko_markers.extend(detection.get_pyrocko_markers()) marker.save_markers(pyrocko_markers, str(filename)) + def export_vtk( + self, + filename: Path, + jitter_location: float = 0.0, + ) -> None: + """Export events as vtk file + + Args: + filename (Path): output filename, without file extension. + reference (Location): Relative to this location. + """ + detections = self.detections + if jitter_location: + detections = [det.jitter_location(jitter_location) for det in detections] + offsets = np.array( + [(det.east_shift, det.north_shift, det.depth) for det in detections] + ) + pointsToVTK( + str(filename), + np.array(offsets[:, 0]), + np.array(offsets[:, 1]), + -np.array(offsets[:, 2]), + data={ + "semblance": np.array([det.semblance for det in detections]), + "time": np.array([det.time.timestamp() for det in detections]), + }, + ) + def __iter__(self) -> Iterator[EventDetection]: return iter(sorted(self.detections, key=lambda d: d.time)) diff --git a/lassie/models/location.py b/lassie/models/location.py index 9347730a..d1ab0c5a 100644 --- a/lassie/models/location.py +++ b/lassie/models/location.py @@ -5,7 +5,7 @@ import struct from typing import TYPE_CHECKING, Iterable, Literal, TypeVar -from pydantic import BaseModel, PrivateAttr +from pydantic import BaseModel, Field, PrivateAttr from pyrocko import orthodrome as od from typing_extensions import Self @@ -18,10 +18,22 @@ class Location(BaseModel): lat: float lon: float - east_shift: float = 0.0 - north_shift: float = 0.0 - elevation: float = 0.0 - depth: float = 0.0 + east_shift: float = Field( + default=0.0, + description="east shift towards geographical reference in meters.", + ) + north_shift: float = Field( + default=0.0, + description="north shift towards geographical reference in meters.", + ) + elevation: float = Field( + default=0.0, + description="elevation in meters.", + ) + depth: float = Field( + default=0.0, + description="depth in meters, positive is down.", + ) _cached_lat_lon: tuple[float, float] | None = PrivateAttr(None) @@ -107,7 +119,7 @@ def distance_to(self, other: Location) -> float: return math.sqrt((sx - ox) ** 2 + (sy - oy) ** 2 + (sz - oz) ** 2) def offset_from(self, other: Location) -> tuple[float, float, float]: - """Return offset vector (east, north, depth) to other location in [m] + """Return offset vector (east, north, depth) from other location in [m] Args: other (Location): The other location. diff --git a/lassie/models/semblance.py b/lassie/models/semblance.py index eb74a9ae..75f5ef78 100644 --- a/lassie/models/semblance.py +++ b/lassie/models/semblance.py @@ -132,6 +132,15 @@ def median_abs_deviation(self) -> float: """Median absolute deviation of the maximum semblance.""" return float(stats.median_abs_deviation(self.maximum_semblance)) + def apply_exponent(self, exponent: float) -> None: + """Apply exponent to the maximum semblance. + + Args: + exponent (float): Exponent + """ + self.semblance_unpadded **= exponent + self._clear_cache() + def median_mask(self, level: float = 3.0) -> np.ndarray: """Median mask above a level from the maximum semblance. diff --git a/lassie/models/station.py b/lassie/models/station.py index 6e6054a2..7c0f97f7 100644 --- a/lassie/models/station.py +++ b/lassie/models/station.py @@ -5,14 +5,14 @@ from typing import TYPE_CHECKING, Any, Iterable, Iterator import numpy as np -from pydantic import BaseModel, constr +from pydantic import BaseModel, Field, FilePath, constr from pyrocko.io.stationxml import load_xml from pyrocko.model import Station as PyrockoStation from pyrocko.model import dump_stations_yaml, load_stations if TYPE_CHECKING: - from pyrocko.trace import Trace from pyrocko.squirrel import Squirrel + from pyrocko.trace import Trace from lassie.models.location import CoordSystem, Location @@ -22,9 +22,9 @@ class Station(Location): - network: constr(max_length=2) - station: constr(max_length=5) - location: constr(max_length=2) = "" + network: str = Field(..., max_length=2) + station: str = Field(..., max_length=5) + location: str = Field(default="", max_length=2) @classmethod def from_pyrocko_station(cls, station: PyrockoStation) -> Station: @@ -56,11 +56,22 @@ def __hash__(self) -> int: class Stations(BaseModel): - station_xmls: list[Path] = [] - pyrocko_station_yamls: list[Path] = [] - + pyrocko_station_yamls: list[FilePath] = Field( + default=[], + description="List of [Pyrocko station YAML]" + "(https://pyrocko.org/docs/current/formats/yaml.html) files.", + ) + station_xmls: list[FilePath] = Field( + default=[], + description="List of StationXML files.", + ) + + blacklist: set[constr(pattern=NSL_RE)] = Field( + default=set(), + description="Blacklist stations and exclude from detecion. " + "Format is `['NET.STA.LOC', ...]`", + ) stations: list[Station] = [] - blacklist: set[constr(pattern=NSL_RE)] = set() def model_post_init(self, __context: Any) -> None: loaded_stations = [] @@ -183,7 +194,7 @@ def get_coordinates(self, system: CoordSystem = "geographic") -> np.ndarray: [(*sta.effective_lat_lon, sta.effective_elevation) for sta in self] ) - def dump_pyrocko_stations(self, filename: Path) -> None: + def export_pyrocko_stations(self, filename: Path) -> None: """Dump stations to pyrocko station yaml file. Args: @@ -194,7 +205,7 @@ def dump_pyrocko_stations(self, filename: Path) -> None: filename=str(filename.expanduser()), ) - def dump_csv(self, filename: Path) -> None: + def export_csv(self, filename: Path) -> None: """Dump stations to CSV file. Args: @@ -208,5 +219,8 @@ def dump_csv(self, filename: Path) -> None: f"{sta.lat},{sta.lon},{sta.elevation},{sta.depth}\n" ) + def export_vtk(self, reference: Location | None = None) -> None: + ... + def __hash__(self) -> int: return hash(sta for sta in self) diff --git a/lassie/octree.py b/lassie/octree.py index 51c2fa84..ac8fa1de 100644 --- a/lassie/octree.py +++ b/lassie/octree.py @@ -15,7 +15,6 @@ Field, PositiveFloat, PrivateAttr, - confloat, field_validator, model_validator, ) @@ -66,7 +65,7 @@ class Node(BaseModel): semblance: float = 0.0 tree: Octree | None = Field(None, exclude=True) - children: tuple[Node, ...] = Field((), exclude=True) + children: tuple[Node, ...] = Field(default=(), exclude=True) _hash: bytes | None = PrivateAttr(None) _children_cached: tuple[Node, ...] = PrivateAttr(()) @@ -141,7 +140,7 @@ def as_location(self) -> Location: if not self.tree: raise AttributeError("parent tree not set") if not self._location: - reference = self.tree.reference + reference = self.tree.location self._location = Location.model_construct( lat=reference.lat, lon=reference.lon, @@ -160,12 +159,14 @@ def __iter__(self) -> Iterator[Node]: yield self def hash(self) -> bytes: + if not self.tree: + raise AttributeError("parent tree not set") if self._hash is None: self._hash = sha1( struct.pack( "dddddd", - self.tree.reference.lat, - self.tree.reference.lon, + self.tree.location.lat, + self.tree.location.lon, self.east, self.north, self.depth, @@ -179,19 +180,47 @@ def __hash__(self) -> int: class Octree(BaseModel): - reference: Location = Location(lat=0.0, lon=0) - size_initial: PositiveFloat = 2 * KM - size_limit: PositiveFloat = 500 - east_bounds: tuple[float, float] = (-10 * KM, 10 * KM) - north_bounds: tuple[float, float] = (-10 * KM, 10 * KM) - depth_bounds: tuple[float, float] = (0 * KM, 20 * KM) - absorbing_boundary: confloat(ge=0.0) = 1 * KM + location: Location = Field( + default=Location(lat=0.0, lon=0.0), + description="The reference location of the octree.", + ) + size_initial: PositiveFloat = Field( + default=2 * KM, + description="Initial size of a cubic octree node in meters.", + ) + size_limit: PositiveFloat = Field( + default=500.0, + description="Smallest possible size of an octree node in meters.", + ) + east_bounds: tuple[float, float] = Field( + default=(-10 * KM, 10 * KM), + description="East bounds of the octree in meters.", + ) + north_bounds: tuple[float, float] = Field( + default=(-10 * KM, 10 * KM), + description="North bounds of the octree in meters.", + ) + depth_bounds: tuple[float, float] = Field( + default=(0 * KM, 20 * KM), + description="Depth bounds of the octree in meters.", + ) + absorbing_boundary: float = Field( + default=1 * KM, + ge=0.0, + description="Absorbing boundary in meters. Detections inside the boundary will be tagged.", + ) _root_nodes: list[Node] = PrivateAttr([]) _cached_coordinates: dict[CoordSystem, np.ndarray] = PrivateAttr({}) model_config = ConfigDict(ignored_types=(cached_property,)) + @field_validator("location") + def check_reference(cls, location: Location) -> Location: # noqa: N805 + if location.lat == 0.0 and location.lon == 0.0: + raise ValueError("invalid location, expected non-zero lat/lon") + return location + @field_validator("east_bounds", "north_bounds", "depth_bounds") def check_bounds( cls, # noqa: N805 @@ -209,6 +238,7 @@ def check_limits(self) -> Octree: f"invalid octree size limits ({self.size_initial}, {self.size_limit})," " expected size_limit <= size_initial" ) + # self.reference = self.reference.shifted_origin() return self def model_post_init(self, __context: Any) -> None: @@ -380,18 +410,23 @@ def total_number_nodes(self) -> int: """ return len(self._root_nodes) * (8 ** self.n_levels()) - def maximum_number_nodes(self) -> int: - """Returns the maximum number of nodes. + def cached_bottom(self) -> Self: + """Returns a copy of the octree refined to the cached bottom nodes. + + Raises: + EnvironmentError: If the octree has never been split. Returns: - int: Maximum number of nodes. + Self: Copy of the octree with cached bottom nodes. """ - return int( - (self.east_bounds[1] - self.east_bounds[0]) - * (self.north_bounds[1] - self.north_bounds[0]) - * (self.depth_bounds[1] - self.depth_bounds[0]) - / (self.smallest_node_size() ** 3) - ) + tree = self.copy(deep=True) + split_nodes = [] + for node in tree: + if node._children_cached: + split_nodes.extend(node.split()) + if not split_nodes: + raise EnvironmentError("octree has never been split.") + return tree def copy(self, deep=False) -> Self: tree = super().model_copy(deep=deep) diff --git a/lassie/plot/detections.py b/lassie/plot/detections.py index 5c7bad69..ad8ae6f8 100644 --- a/lassie/plot/detections.py +++ b/lassie/plot/detections.py @@ -1,66 +1,74 @@ from __future__ import annotations from datetime import datetime, timezone -from pathlib import Path -from typing import TYPE_CHECKING, cast +from typing import ClassVar, Literal -import matplotlib.pyplot as plt import numpy as np -from .utils import with_default_axes - -if TYPE_CHECKING: - from lassie.models.detection import EventDetections +from lassie.plot.base import BasePlot, LassieFigure HOUR = 3600 DAY = 24 * HOUR -@with_default_axes -def plot_detections( - detections: EventDetections, - axes: plt.Axes | None = None, - filename: Path | None = None, -) -> None: - axes = cast(plt.Axes, axes) # injected by wrapper - - semblances = [detection.semblance for detection in detections] - times = [ - detection.time.replace(tzinfo=None) # Stupid fix for matplotlib bug - for detection in detections - ] - - axes.scatter(times, semblances, cmap="viridis_r", c=semblances, s=3, alpha=0.5) - axes.set_ylabel("Detection Semblance") - axes.grid(axis="x", alpha=0.3) - # axes.figure.autofmt_xdate() - - cum_axes = axes.twinx() - - cummulative_detections = np.cumsum(np.ones(detections.n_detections)) - cum_axes.plot( - times, - cummulative_detections, - color="black", - alpha=0.8, - label="Cumulative Detections", - ) - cum_axes.set_ylabel("# Detections") - - to_timestamps = np.vectorize(lambda d: d.timestamp()) - from_timestamps = np.vectorize(lambda t: datetime.fromtimestamp(t, tz=timezone.utc)) - detection_time_span = times[-1] - times[0] - daily_rate, edges = np.histogram( - to_timestamps(times), - bins=detection_time_span.days, - ) - - cum_axes.stairs( - daily_rate, - from_timestamps(edges), - color="gray", - fill=True, - alpha=0.5, - label="Daily Detections", - ) - cum_axes.legend(loc="upper left", fontsize="small") +DetectionAttribute = Literal["semblance", "magnitude"] + + +class DetectionsDistribution(BasePlot): + attribute: ClassVar[DetectionAttribute] = "semblance" + + def get_figure(self) -> LassieFigure: + return self.create_figure(attribute=self.attribute) + + def create_figure( + self, + attribute: DetectionAttribute = "semblance", + ) -> LassieFigure: + figure = self.new_figure("event-distribution-{attribute}.png") + axes = figure.get_axes() + + detections = self.detections + + values = [getattr(detection, attribute) for detection in detections] + times = [ + detection.time.replace(tzinfo=None) # Stupid fix for matplotlib bug + for detection in detections + ] + + axes.scatter(times, values, cmap="viridis_r", c=values, s=3, alpha=0.5) + axes.set_ylabel(attribute.capitalize()) + axes.grid(axis="x", alpha=0.3) + # axes.figure.autofmt_xdate() + + cum_axes = axes.twinx() + + cummulative_detections = np.cumsum(np.ones(detections.n_detections)) + cum_axes.plot( + times, + cummulative_detections, + color="black", + alpha=0.8, + label="Cumulative Detections", + ) + cum_axes.set_ylabel("# Detections") + + to_timestamps = np.vectorize(lambda d: d.timestamp()) + from_timestamps = np.vectorize( + lambda t: datetime.fromtimestamp(t, tz=timezone.utc) + ) + detection_time_span = times[-1] - times[0] + daily_rate, edges = np.histogram( + to_timestamps(times), + bins=detection_time_span.days, + ) + + cum_axes.stairs( + daily_rate, + from_timestamps(edges), + color="gray", + fill=True, + alpha=0.5, + label="Daily Detections", + ) + cum_axes.legend(loc="upper left", fontsize="small") + return figure diff --git a/lassie/plot/octree.py b/lassie/plot/octree.py index 83847d76..38a3b870 100644 --- a/lassie/plot/octree.py +++ b/lassie/plot/octree.py @@ -1,7 +1,7 @@ from __future__ import annotations import logging -from typing import TYPE_CHECKING, Callable +from typing import TYPE_CHECKING, Callable, Iterator import matplotlib.pyplot as plt import numpy as np @@ -11,7 +11,7 @@ from matplotlib.collections import PatchCollection from matplotlib.patches import Rectangle -from lassie.models.detection import EventDetection +from lassie.plot.base import BasePlot, LassieFigure if TYPE_CHECKING: from pathlib import Path @@ -62,6 +62,45 @@ def octree_to_rectangles( ) +class OctreeRefinement(BasePlot): + normalize: bool = False + plot_detections: bool = False + + def get_figure(self) -> Iterator[LassieFigure]: + yield self.create_figure() + + def create_figure(self) -> LassieFigure: + figure = self.new_figure("octree-refinement.png") + ax = figure.get_axes() + octree = self.search.octree + + for spine in ax.spines.values(): + spine.set_visible(False) + ax.set_xticklabels([]) + ax.set_xticks([]) + ax.set_yticklabels([]) + ax.set_yticks([]) + ax.set_xlabel("East [m]") + ax.set_ylabel("North [m]") + ax.add_collection(octree_to_rectangles(octree, normalize=self.normalize)) + + ax.set_title(f"Octree surface tiles (nodes: {octree.n_nodes})") + + ax.autoscale() + + if self.plot_detections: + detections = self.search.detections + for detection in detections or []: + ax.scatter( + detection.east_shift, + detection.north_shift, + marker="*", + s=50, + color="yellow", + ) + return figure + + def plot_octree_3d(octree: Octree, cmap: str = "Oranges") -> None: ax = plt.figure().add_subplot(projection="3d") colormap = get_cmap(cmap) @@ -70,9 +109,9 @@ def plot_octree_3d(octree: Octree, cmap: str = "Oranges") -> None: colors = colormap(octree.semblance, alpha=octree.semblance) ax.scatter(coords[0], coords[1], coords[2], c=colors) - ax.set_xlabel("east [m]") - ax.set_ylabel("north [m]") - ax.set_zlabel("depth [m]") + ax.set_xlabel("East [m]") + ax.set_ylabel("North [m]") + ax.set_zlabel("Depth [m]") plt.show() @@ -89,51 +128,9 @@ def plot_octree_scatter( colors = colormap(surface[:, 2], alpha=normalized_semblance) ax = plt.figure().gca() ax.scatter(surface[:, 0], surface[:, 1], c=colors) - ax.set_xlabel("east [m]") - ax.set_ylabel("north [m]") - plt.show() - - -def plot_octree_surface_tiles( - octree: Octree, - axes: plt.Axes | None = None, - normalize: bool = False, - filename: Path | None = None, - detections: list[EventDetection] | None = None, -) -> None: - if axes is None: - fig = plt.figure() - ax = fig.gca() - else: - fig = axes.figure - ax = axes - - for spine in ax.spines.values(): - spine.set_visible(False) - ax.set_xticklabels([]) - ax.set_xticks([]) - ax.set_yticklabels([]) - ax.set_yticks([]) ax.set_xlabel("East [m]") ax.set_ylabel("North [m]") - ax.add_collection(octree_to_rectangles(octree, normalize=normalize)) - - ax.set_title(f"Octree surface tiles (nodes: {octree.n_nodes})") - - ax.autoscale() - for detection in detections or []: - ax.scatter( - detection.east_shift, - detection.north_shift, - marker="*", - s=50, - color="yellow", - ) - if filename is not None: - fig.savefig(str(filename), bbox_inches="tight", dpi=300) - plt.close() - elif axes is None: - plt.show() + plt.show() def plot_octree_semblance_movie( diff --git a/lassie/plot/plot.py b/lassie/plot/plot.py deleted file mode 100644 index 69a3ef88..00000000 --- a/lassie/plot/plot.py +++ /dev/null @@ -1,58 +0,0 @@ -from __future__ import annotations - -from typing import TYPE_CHECKING - -import matplotlib.pyplot as plt -import numpy as np -from matplotlib import cm -from matplotlib.collections import PatchCollection -from matplotlib.patches import Rectangle - -if TYPE_CHECKING: - from matplotlib.colors import Colormap - - from lassie.octree import Octree - - -def octree_to_rectangles( - octree: Octree, - cmap: str | Colormap = "Oranges", -) -> PatchCollection: - if isinstance(cmap, str): - cmap = cm.get_cmap(cmap) - - coords = octree.reduce_surface() - coords = coords[np.argsort(coords[:, 2])[::-1]] - sizes = coords[:, 2] - semblances = coords[:, 3] - sizes = sorted(set(sizes), reverse=True) - zorders = {size: 1.0 + float(order) for order, size in enumerate(sizes)} - print(zorders) - - rectangles = [] - for node in coords: - east, north, size, semblance = node - half_size = size / 2 - rect = Rectangle( - xy=(east - half_size, north - half_size), - width=size, - height=size, - zorder=semblance, - ) - rectangles.append(rect) - colors = cmap(semblances / semblances.max()) - print(colors) - return PatchCollection(patches=rectangles, facecolors=colors, edgecolors="k") - - -def plot_octree(octree: Octree, axes: plt.Axes | None = None) -> None: - if axes is None: - fig = plt.figure() - ax = fig.gca() - else: - ax = axes - ax.add_collection(octree_to_rectangles(octree)) - - ax.autoscale() - if axes is None: - plt.show() diff --git a/lassie/search.py b/lassie/search.py index abc8c372..7399d9cc 100644 --- a/lassie/search.py +++ b/lassie/search.py @@ -24,7 +24,6 @@ from lassie.models.detection import EventDetection, EventDetections, PhaseDetection from lassie.models.semblance import Semblance, SemblanceStats from lassie.octree import NodeSplitError, Octree -from lassie.plot.octree import plot_octree_surface_tiles from lassie.signals import Signal from lassie.station_corrections import StationCorrections from lassie.tracers import ( @@ -33,7 +32,13 @@ FastMarchingTracer, RayTracers, ) -from lassie.utils import PhaseDescription, alog_call, datetime_now, time_to_path +from lassie.utils import ( + PhaseDescription, + alog_call, + datetime_now, + human_readable_bytes, + time_to_path, +) from lassie.waveforms import PyrockoSquirrel, WaveformProviderType if TYPE_CHECKING: @@ -70,10 +75,13 @@ class Search(BaseModel): LocalMagnitudeExtractor(), ] - sampling_rate: SamplingRate = 50 + sampling_rate: SamplingRate = 100 detection_threshold: PositiveFloat = 0.05 - node_split_threshold: float = Field(default=0.9, gt=0.0, lt=1.0) detection_blinding: timedelta = timedelta(seconds=2.0) + + image_mean_p: float = Field(default=1, ge=1.0, le=2.0) + + node_split_threshold: float = Field(default=0.9, gt=0.0, lt=1.0) window_length: timedelta = timedelta(minutes=5) n_threads_parstack: int = Field(default=0, ge=0) @@ -97,11 +105,14 @@ class Search(BaseModel): # Signals _new_detection: Signal[EventDetection] = PrivateAttr(Signal()) - _batch_processing_durations: Deque[timedelta] = PrivateAttr( + _batch_proc_time: Deque[timedelta] = PrivateAttr( + default_factory=lambda: deque(maxlen=25) + ) + _batch_cum_durations: Deque[timedelta] = PrivateAttr( default_factory=lambda: deque(maxlen=25) ) - def init_rundir(self, force=False) -> None: + def init_rundir(self, force: bool = False) -> None: rundir = ( self.project_dir / self._config_stem or f"run-{time_to_path(self.created)}" ) @@ -121,13 +132,16 @@ def init_rundir(self, force=False) -> None: if not rundir.exists(): rundir.mkdir() - file_logger = logging.FileHandler(self._rundir / "lassie.log") - logging.root.addHandler(file_logger) self.write_config() + self._init_logging() logger.info("created new rundir %s", rundir) self._detections = EventDetections(rundir=rundir) + def _init_logging(self) -> None: + file_logger = logging.FileHandler(self._rundir / "lassie.log") + logging.root.addHandler(file_logger) + def write_config(self, path: Path | None = None) -> None: rundir = self._rundir path = path or rundir / "search.json" @@ -136,8 +150,11 @@ def write_config(self, path: Path | None = None) -> None: path.write_text(self.model_dump_json(indent=2, exclude_unset=True)) logger.debug("dumping stations...") - self.stations.dump_pyrocko_stations(rundir / "pyrocko-stations.yaml") - self.stations.dump_csv(rundir / "stations.csv") + self.stations.export_pyrocko_stations(rundir / "pyrocko_stations.yaml") + + csv_dir = rundir / "csv" + csv_dir.mkdir(exist_ok=True) + self.stations.export_csv(csv_dir / "stations.csv") @property def semblance_stats(self) -> SemblanceStats: @@ -155,7 +172,9 @@ def init_boundaries(self) -> None: self._distance_range = (distances.min(), distances.max()) # Timing ranges - for phase, tracer in self.ray_tracers.iter_phase_tracer(): + for phase, tracer in self.ray_tracers.iter_phase_tracer( + phases=self.image_functions.get_phases() + ): traveltimes = tracer.get_travel_times(phase, self.octree, self.stations) self._travel_time_ranges[phase] = ( timedelta(seconds=np.nanmin(traveltimes)), @@ -181,7 +200,7 @@ def init_boundaries(self) -> None: if self.window_length < 2 * self._window_padding + self._shift_range: raise ValueError( f"window length {self.window_length} is too short for the " - f"theoretical shift range {self._shift_range} and " + f"theoretical travel time range {self._shift_range} and " f"cummulative window padding of {self._window_padding}." " Increase the window_length time." ) @@ -193,22 +212,6 @@ def init_boundaries(self) -> None: *self._distance_range, ) - def _plot_octree_surface( - self, - octree: Octree, - time: datetime, - detections: list[EventDetection] | None = None, - ) -> None: - logger.info("plotting octree surface...") - filename = ( - self._rundir - / "figures" - / "octree_surface" - / f"{time_to_path(time)}-nodes-{octree.n_nodes}.png" - ) - filename.parent.mkdir(parents=True, exist_ok=True) - plot_octree_surface_tiles(octree, filename=filename, detections=detections) - async def prepare(self) -> None: logger.info("preparing search...") self.data_provider.prepare(self.stations) @@ -216,13 +219,18 @@ async def prepare(self) -> None: self.octree, self.stations, phases=self.image_functions.get_phases(), + rundir=self._rundir, ) self.init_boundaries() async def start(self, force_rundir: bool = False) -> None: + if not self.has_rundir(): + self.init_rundir(force=force_rundir) + await self.prepare() - self.init_rundir(force_rundir) + logger.info("starting search...") + batch_processing_start = datetime_now() processing_start = datetime_now() if self._progress.time_progress: @@ -236,11 +244,15 @@ async def start(self, force_rundir: bool = False) -> None: batch.clean_traces() if batch.is_empty(): - logger.warning("batch is empty") + logger.warning("empty batch %s", batch.log_str()) continue if batch.duration < 2 * self._window_padding: - logger.warning("batch duration is too short") + logger.warning( + "duration of batch %s too short %s", + batch.log_str(), + batch.duration, + ) continue search_block = SearchTraces( @@ -259,38 +271,51 @@ async def start(self, force_rundir: bool = False) -> None: self._detections.add(detection) await self._new_detection.emit(detection) - if batch.i_batch % 50 == 0: + if self._detections.n_detections and batch.i_batch % 50 == 0: self._detections.dump_detections(jitter_location=self.octree.size_limit) - processing_time = datetime_now() - processing_start - self._batch_processing_durations.append(processing_time) - if batch.n_batches: - percent_processed = ((batch.i_batch + 1) / batch.n_batches) * 100 - else: - percent_processed = 0.0 + processing_time = datetime_now() - batch_processing_start + self._batch_proc_time.append(processing_time) + self._batch_cum_durations.append(batch.cumulative_duration) + + processed_percent = ( + ((batch.i_batch + 1) / batch.n_batches) * 100 + if batch.n_batches + else 0.0 + ) + # processing_rate = ( + # sum(self._batch_cum_durations, timedelta()) + # / sum(self._batch_proc_time, timedelta()).total_seconds() + # ) + processing_rate_bytes = human_readable_bytes( + batch.cumulative_bytes / processing_time.total_seconds() + ) + logger.info( - "%s%% processed - batch %d/%s - %s in %s", - f"{percent_processed:.1f}" if percent_processed else "??", - batch.i_batch + 1, - str(batch.n_batches or "?"), - batch.start_time, + "%s%% processed - batch %s in %s", + f"{processed_percent:.1f}" if processed_percent else "??", + batch.log_str(), processing_time, ) if batch.n_batches: - remaining_time = ( - sum(self._batch_processing_durations, timedelta()) - / len(self._batch_processing_durations) - * (batch.n_batches - batch.i_batch - 1) + remaining_time = sum(self._batch_proc_time, timedelta()) / len( + self._batch_proc_time ) + remaining_time *= batch.n_batches - batch.i_batch - 1 logger.info( - "%s remaining - estimated finish at %s", + "processing rate %s/s - %s remaining - finish at %s", + processing_rate_bytes, remaining_time, datetime.now() + remaining_time, # noqa: DTZ005 ) - processing_start = datetime_now() + batch_processing_start = datetime_now() self.set_progress(batch.end_time) + self._detections.dump_detections(jitter_location=self.octree.size_limit) + logger.info("finished search in %s", datetime_now() - processing_start) + logger.info("found %d detections", self._detections.n_detections) + async def add_features(self, event: EventDetection) -> None: try: squirrel = self.data_provider.get_squirrel() @@ -313,6 +338,8 @@ def load_rundir(cls, rundir: Path) -> Self: search._progress = SearchProgress.model_validate_json( progress_file.read_text() ) + + search._init_logging() return search @classmethod @@ -331,7 +358,11 @@ def from_config( model._config_stem = filename.stem return model + def has_rundir(self) -> bool: + return hasattr(self, "_rundir") and self._rundir.exists() + def __del__(self) -> None: + # FIXME: Replace with signal overserver? if hasattr(self, "_detections"): with contextlib.suppress(Exception): self._detections.dump_detections(jitter_location=self.octree.size_limit) @@ -385,10 +416,10 @@ async def calculate_semblance( traveltimes_bad = np.isnan(traveltimes) traveltimes[traveltimes_bad] = 0.0 - station_contribution = (~traveltimes_bad).sum(axis=1, dtype=float) + station_contribution = (~traveltimes_bad).sum(axis=1, dtype=np.float32) shifts = np.round(-traveltimes / image.delta_t).astype(np.int32) - weights = np.full_like(shifts, fill_value=image.weight, dtype=float) + weights = np.full_like(shifts, fill_value=image.weight, dtype=np.float32) # Normalize by number of station contribution with np.errstate(divide="ignore", invalid="ignore"): @@ -423,6 +454,7 @@ async def get_images(self, sampling_rate: float | None = None) -> WaveformImages if None not in self._images: images = await self.parent.image_functions.process_traces(self.traces) images.set_stations(self.parent.stations) + images.apply_exponent(self.parent.image_mean_p) self._images[None] = images if sampling_rate not in self._images: @@ -475,21 +507,18 @@ async def search( semblance_data=semblance.semblance_unpadded, n_samples_semblance=semblance.n_samples_unpadded, ) + semblance.apply_exponent(1.0 / parent.image_mean_p) semblance.normalize(images.cumulative_weight()) parent.semblance_stats.update(semblance.get_stats()) logger.debug("semblance stats: %s", parent.semblance_stats) detection_idx, detection_semblance = semblance.find_peaks( - height=parent.detection_threshold, - prominence=parent.detection_threshold, + height=parent.detection_threshold**parent.image_mean_p, + prominence=parent.detection_threshold**parent.image_mean_p, distance=round(parent.detection_blinding.total_seconds() * sampling_rate), ) - if parent.plot_octree_surface: - octree.map_semblance(semblance.maximum_node_semblance()) - parent._plot_octree_surface(octree, time=self.start_time) - if detection_idx.size == 0: return [], semblance.get_trace() @@ -550,7 +579,7 @@ async def search( phase=image.phase, event_time=time, source=source_location, - receivers=image.stations.stations, + receivers=image.stations, ) arrivals_observed = image.search_phase_arrivals( modelled_arrivals=[ @@ -565,7 +594,7 @@ async def search( for mod, obs in zip(arrivals_model, arrivals_observed, strict=True) ] detection.receivers.add_receivers( - stations=image.stations.stations, + stations=image.stations, phase_arrivals=phase_detections, ) diff --git a/lassie/station_corrections.py b/lassie/station_corrections.py index 6e6de66d..0616ffd6 100644 --- a/lassie/station_corrections.py +++ b/lassie/station_corrections.py @@ -313,14 +313,34 @@ def from_receiver(cls, receiver: Receiver) -> Self: class StationCorrections(BaseModel): rundir: DirectoryPath | None = Field( default=None, - description="The rundir to load the detections from", + description="Lassie rundir to calculate the corrections from.", + ) + measure: Literal["median", "average"] = Field( + default="median", + description="Arithmetic measure for the traveltime delays. " + "Choose from `median` and `average`.", + ) + weighting: ArrivalWeighting = Field( + default="mul-PhaseNet-semblance", + description="Weighting of the traveltime delays. Choose from `none`, " + "`PhaseNet`, `semblance`, `add-PhaseNet-semblance`" + " and `mul-PhaseNet-semblance`.", ) - measure: Literal["median", "average"] = "median" - weighting: ArrivalWeighting = "mul-PhaseNet-semblance" - minimum_num_picks: PositiveInt = 5 - minimum_distance_border: PositiveFloat = 2000.0 - minimum_depth: PositiveFloat = 3000.0 + minimum_num_picks: PositiveInt = Field( + default=5, + description="Minimum number of picks at a station required" + " to calculate station corrections.", + ) + minimum_distance_border: PositiveFloat = Field( + default=2000.0, + description="Minimum distance to the octree border " + "to be considered for correction.", + ) + minimum_depth: PositiveFloat = Field( + default=3000.0, + description="Minimum depth of the detection to be considered for correction.", + ) _station_corrections: dict[str, StationCorrection] = PrivateAttr({}) _traveltime_delay_cache: dict[tuple[NSL, PhaseDescription], float] = PrivateAttr({}) @@ -410,8 +430,7 @@ def get_delay(self, station_nsl: NSL, phase: PhaseDescription) -> float: Returns: float: The traveltime delay in seconds. """ - - def get_delay() -> float: + if (station_nsl, phase) not in self._traveltime_delay_cache: try: station = self.get_station(station_nsl) except KeyError: @@ -425,8 +444,6 @@ def get_delay() -> float: return station.get_median_delay(phase, self.weighting) raise ValueError(f"unknown measure {self.measure!r}") - if (station_nsl, phase) not in self._traveltime_delay_cache: - self._traveltime_delay_cache[station_nsl, phase] = get_delay() return self._traveltime_delay_cache[station_nsl, phase] def get_delays( @@ -443,7 +460,9 @@ def get_delays( Returns: np.ndarray: The traveltime delays for the given stations and phase. """ - return np.array([self.get_delay(nsl, phase) for nsl in station_nsls]) + return np.fromiter( + (self.get_delay(nsl, phase) for nsl in station_nsls), dtype=float + ) def save_plots(self, folder: Path) -> None: folder.mkdir(exist_ok=True) @@ -454,7 +473,7 @@ def save_plots(self, folder: Path) -> None: filename=folder / f"corrections-{correction.station.pretty_nsl}.png" ) - def save_csv(self, filename: Path) -> None: + def export_csv(self, filename: Path) -> None: """Save the station corrections to a CSV file. Args: @@ -464,10 +483,10 @@ def save_csv(self, filename: Path) -> None: csv_data = [correction.get_csv_data() for correction in self] columns = set(chain.from_iterable(data.keys() for data in csv_data)) with filename.open("w") as file: - file.write(f"{', '.join(columns)}\n") + file.write(f"{','.join(columns)}\n") for data in csv_data: file.write( - f"{', '.join(str(data.get(key, -9999.9)) for key in columns)}\n" + f"{','.join(str(data.get(key, -9999.9)) for key in columns)}\n" ) def __iter__(self) -> Iterator[StationCorrection]: diff --git a/lassie/tracers/__init__.py b/lassie/tracers/__init__.py index cd6e3ad5..eb6fc0d2 100644 --- a/lassie/tracers/__init__.py +++ b/lassie/tracers/__init__.py @@ -1,6 +1,7 @@ from __future__ import annotations import logging +from pathlib import Path from typing import TYPE_CHECKING, Annotated, Iterator, Union from pydantic import Field, RootModel @@ -40,18 +41,30 @@ async def prepare( octree: Octree, stations: Stations, phases: tuple[PhaseDescription, ...], + rundir: Path | None = None, ) -> None: - logger.info("preparing ray tracers") + prepared_tracers = [] for phase in phases: tracer = self.get_phase_tracer(phase) - await tracer.prepare(octree, stations) + if tracer in prepared_tracers: + continue + phases = tracer.get_available_phases() + logger.info( + "preparing ray tracer %s for phase %s", tracer.tracer, ", ".join(phases) + ) + await tracer.prepare(octree, stations, rundir) + prepared_tracers.append(tracer) - def get_available_phases(self) -> tuple[str]: + def get_available_phases(self) -> tuple[str, ...]: phases = [] for tracer in self: phases.extend([*tracer.get_available_phases()]) if len(set(phases)) != len(phases): - raise ValueError("A phase was provided twice") + duplicate_phases = {phase for phase in phases if phases.count(phase) > 1} + raise ValueError( + f"Phases {', '.join(duplicate_phases)} was provided twice." + " Rename or remove the duplicate phases from the tracers." + ) return tuple(phases) def get_phase_tracer(self, phase: str) -> RayTracer: @@ -60,13 +73,16 @@ def get_phase_tracer(self, phase: str) -> RayTracer: return tracer raise ValueError( f"No tracer found for phase {phase}." - f" Available phases: {', '.join(self.get_available_phases())}" + " Please add a tracer for this phase or rename the phase to match a tracer." + f" Available phases: {', '.join(self.get_available_phases())}." ) def __iter__(self) -> Iterator[RayTracer]: yield from self.root - def iter_phase_tracer(self) -> Iterator[tuple[PhaseDescription, RayTracer]]: - for tracer in self: - for phase in tracer.get_available_phases(): - yield (phase, tracer) + def iter_phase_tracer( + self, phases: tuple[PhaseDescription, ...] + ) -> Iterator[tuple[PhaseDescription, RayTracer]]: + for phase in phases: + tracer = self.get_phase_tracer(phase) + yield (phase, tracer) diff --git a/lassie/tracers/base.py b/lassie/tracers/base.py index dc654b02..b9167f64 100644 --- a/lassie/tracers/base.py +++ b/lassie/tracers/base.py @@ -10,6 +10,7 @@ if TYPE_CHECKING: from datetime import datetime + from pathlib import Path from lassie.models.station import Stations from lassie.octree import Octree @@ -24,7 +25,12 @@ class ModelledArrival(PhaseArrival): class RayTracer(BaseModel): tracer: Literal["RayTracer"] = "RayTracer" - async def prepare(self, octree: Octree, stations: Stations): + async def prepare( + self, + octree: Octree, + stations: Stations, + rundir: Path | None = None, + ): ... def get_available_phases(self) -> tuple[str, ...]: diff --git a/lassie/tracers/cake.py b/lassie/tracers/cake.py index d3e3bc9b..278208fa 100644 --- a/lassie/tracers/cake.py +++ b/lassie/tracers/cake.py @@ -2,6 +2,7 @@ import logging import re +import struct import zipfile from datetime import datetime, timedelta from functools import cached_property @@ -20,6 +21,7 @@ Field, FilePath, PrivateAttr, + ValidationError, constr, model_validator, ) @@ -91,21 +93,21 @@ class CakeArrival(ModelledArrival): class EarthModel(BaseModel): filename: FilePath | None = Field( - DEFAULT_VELOCITY_MODEL_FILE, + default=DEFAULT_VELOCITY_MODEL_FILE, description="Path to velocity model.", ) format: Literal["nd", "hyposat"] = Field( - "nd", - description="Format of the velocity model. nd or hyposat is supported.", + default="nd", + description="Format of the velocity model. `nd` or `hyposat` is supported.", ) crust2_profile: constr(to_upper=True) | tuple[float, float] = Field( - "", - description="Crust2 profile name or a tuple of (lat, lon) coordinates.", + default="", + description="Crust2 profile name or a tuple of `(lat, lon)` coordinates.", ) raw_file_data: str | None = Field( - None, - description="Raw .nd file data.", + default=None, + description="Raw `.nd` file data.", ) _layered_model: LayeredModel = PrivateAttr() @@ -113,7 +115,7 @@ class EarthModel(BaseModel): @model_validator(mode="after") def load_model(self) -> EarthModel: - if self.filename is not None: + if self.filename is not None and self.raw_file_data is None: logger.info("loading velocity model from %s", self.filename) self.raw_file_data = self.filename.read_text() @@ -173,6 +175,27 @@ def id(self) -> str: return re.sub(r"[\,\s\;]", "", self.definition) +def surface_distances(nodes: Sequence[Node], stations: Stations) -> np.ndarray: + """Returns the surface distance from all nodes to all stations. + + Args: + nodes (Sequence[Node]): Nodes to calculate distance from. + stations (Stations): Stations to calculate distance to. + + Returns: + np.ndarray: Distances in shape (n-nodes, n-stations). + """ + node_coords = get_node_coordinates(nodes, system="geographic") + n_nodes = node_coords.shape[0] + + node_coords = np.repeat(node_coords, stations.n_stations, axis=0) + sta_coords = np.vstack(n_nodes * [stations.get_coordinates(system="geographic")]) + + return od.distance_accurate50m_numpy( + node_coords[:, 0], node_coords[:, 1], sta_coords[:, 0], sta_coords[:, 1] + ).reshape(-1, stations.n_stations) + + class TravelTimeTree(BaseModel): earthmodel: EarthModel timing: Timing @@ -234,11 +257,11 @@ def is_suited( time_tolerance: float, spatial_tolerance: float, ) -> bool: - def check_bounds(self, requested) -> bool: + def check_bounds(self, requested: tuple[float, float]) -> bool: return self[0] <= requested[0] and self[1] >= requested[1] return ( - str(self.earthmodel.layered_model) == str(earthmodel.layered_model) + self.earthmodel.hash == earthmodel.hash and self.timing == timing and check_bounds(self.distance_bounds, distance_bounds) and check_bounds(self.source_depth_bounds, source_depth_bounds) @@ -249,7 +272,18 @@ def check_bounds(self, requested) -> bool: @property def filename(self) -> Path: - return Path(f"{self.timing.id}-{self.earthmodel.hash}.sptree") + hash = sha1(self.earthmodel.hash.encode()) + hash.update( + struct.pack( + "dddddddd", + *self.distance_bounds, + *self.source_depth_bounds, + *self.receiver_depth_bounds, + self.time_tolerance, + self.spatial_tolerance, + ) + ) + return Path(f"{self.timing.id}-{hash.hexdigest()}.sptree") @classmethod def new(cls, **data) -> Self: @@ -298,11 +332,10 @@ def load(cls, file: Path) -> Self: Returns: Self: Loaded SPTreeModel """ - logger.debug("loading traveltimes from %s", file) + logger.debug("loading cached traveltimes from %s", file) with zipfile.ZipFile(file, "r") as archive: path = zipfile.Path(archive) model_file = path / "model.json" - print(model_file.read_text()) model = cls.model_validate_json(model_file.read_text()) model._file = file return model @@ -336,6 +369,7 @@ def _interpolate_traveltimes_sptree( ) def init_lut(self, octree: Octree, stations: Stations) -> None: + logger.debug("initializing LUT for %d stations", stations.n_stations) self._cached_stations = stations self._cached_station_indeces = { sta.pretty_nsl: idx for idx, sta in enumerate(stations) @@ -345,38 +379,34 @@ def init_lut(self, octree: Octree, stations: Stations) -> None: for node, traveltimes in zip(octree, station_traveltimes, strict=True): self._node_lut[node.hash()] = traveltimes.astype(np.float32) + def lut_fill_level(self) -> float: + """Return the fill level of the LUT as a float between 0.0 and 1.0""" + return len(self._node_lut) / self._node_lut.get_size() + def fill_lut(self, nodes: Sequence[Node]) -> None: logger.debug("filling traveltimes LUT for %d nodes", len(nodes)) stations = self._cached_stations - node_coords = get_node_coordinates(nodes, system="geographic") - sta_coords = stations.get_coordinates(system="geographic") - - sta_coords = np.array(od.geodetic_to_ecef(*sta_coords.T)).T - node_coords = np.array(od.geodetic_to_ecef(*node_coords.T)).T - - receiver_distances = np.linalg.norm( - sta_coords - node_coords[:, np.newaxis], axis=2 - ) - traveltimes = self._interpolate_travel_times( - receiver_distances, + surface_distances(nodes, stations), np.array([sta.effective_depth for sta in stations]), - np.array([node.depth for node in nodes]), + np.array([node.as_location().effective_depth for node in nodes]), ) for node, times in zip(nodes, traveltimes, strict=True): self._node_lut[node.hash()] = times.astype(np.float32) - def lut_fill_level(self) -> float: - """Return the fill level of the LUT as a float between 0.0 and 1.0""" - return len(self._node_lut) / self._node_lut.get_size() - def get_travel_times(self, octree: Octree, stations: Stations) -> np.ndarray: - station_indices = np.fromiter( - (self._cached_station_indeces[sta.pretty_nsl] for sta in stations), - dtype=int, - ) + try: + station_indices = np.fromiter( + (self._cached_station_indeces[sta.pretty_nsl] for sta in stations), + dtype=int, + ) + except KeyError as exc: + raise ValueError( + "stations not found in cached stations, " + "was the LUT initialized with `TravelTimeTree.init_lut`?" + ) from exc stations_traveltimes = [] fill_nodes = [] @@ -407,9 +437,11 @@ def interpolate_travel_times( octree: Octree, stations: Stations, ) -> np.ndarray: - receiver_distances = octree.distances_stations(stations) + receiver_distances = surface_distances(octree, stations) receiver_depths = np.array([sta.effective_depth for sta in stations]) - source_depths = np.array([node.depth for node in octree]) + source_depths = np.array( + [node.as_location().effective_depth for node in octree] + ) return self._interpolate_travel_times( receiver_distances, receiver_depths, source_depths @@ -452,7 +484,7 @@ def get_travel_time(self, source: Location, receiver: Location) -> float: coordinates = [ receiver.effective_depth, source.effective_depth, - receiver.distance_to(source), + receiver.surface_distance_to(source), ] try: traveltime = self._get_sptree().interpolate(coordinates) or np.nan @@ -463,18 +495,24 @@ def get_travel_time(self, source: Location, receiver: Location) -> float: class CakeTracer(RayTracer): tracer: Literal["CakeTracer"] = "CakeTracer" - phases: dict[PhaseDescription, Timing] = { - "cake:P": Timing(definition="P,p"), - "cake:S": Timing(definition="S,s"), - } - earthmodel: EarthModel = EarthModel() + phases: dict[PhaseDescription, Timing] = Field( + default={ + "cake:P": Timing(definition="P,p"), + "cake:S": Timing(definition="S,s"), + }, + description="Dictionary of phases and timings to calculate.", + ) + earthmodel: EarthModel = Field( + default_factory=EarthModel, + description="Earth model to calculate travel times for.", + ) trim_earth_model_depth: bool = Field( default=True, description="Trim earth model to max depth of the octree.", ) lut_cache_size: ByteSize = Field( default=2 * GiB, - description="Size of the LUT cache.", + description="Size of the LUT cache. Default is `2G`.", ) _traveltime_trees: dict[PhaseDescription, TravelTimeTree] = PrivateAttr({}) @@ -499,7 +537,12 @@ def get_vmin(self) -> float: vel = np.concatenate((earthmodel.get_profile_vp(), earthmodel.get_profile_vs())) return float((vel[vel != 0.0]).min()) - async def prepare(self, octree: Octree, stations: Stations) -> None: + async def prepare( + self, + octree: Octree, + stations: Stations, + rundir: Path | None = None, + ) -> None: global LRU_CACHE_SIZE bytes_per_node = stations.n_stations * np.float32().itemsize @@ -516,21 +559,17 @@ async def prepare(self, octree: Octree, stations: Stations) -> None: node_cache_fraction * 100, ) - cached_trees = [ - TravelTimeTree.load(file) for file in self.cache_dir.glob("*.sptree") - ] - logger.debug("loaded %d cached travel time trees", len(cached_trees)) + cached_trees = self._load_cached_trees() - distances = octree.distances_stations(stations) - source_depths = np.asarray(octree.depth_bounds) + distances = surface_distances(octree, stations) + source_depths = np.asarray(octree.depth_bounds) - octree.location.elevation receiver_depths = np.fromiter((sta.effective_depth for sta in stations), float) - receiver_depths_bounds = (receiver_depths.min(), receiver_depths.max()) - source_depth_bounds = (source_depths.min(), source_depths.max()) distance_bounds = (distances.min(), distances.max()) + source_depth_bounds = (source_depths.min(), source_depths.max()) + receiver_depths_bounds = (receiver_depths.min(), receiver_depths.max()) # FIXME: Time tolerance is too hardcoded. Is 5x a good value? time_tolerance = octree.smallest_node_size() / (self.get_vmin() * 5.0) - # if self.trim_earth_model_depth: # self.earthmodel.trim(-source_depth_bounds[1]) @@ -559,6 +598,19 @@ async def prepare(self, octree: Octree, stations: Stations) -> None: def _get_sptree_model(self, phase: str) -> TravelTimeTree: return self._traveltime_trees[phase] + def _load_cached_trees(self) -> list[TravelTimeTree]: + trees = [] + for file in self.cache_dir.glob("*.sptree"): + try: + tree = TravelTimeTree.load(file) + except ValidationError: + logger.warning("deleting invalid cached tree %s", file) + file.unlink() + continue + trees.append(tree) + logger.debug("loaded %d cached travel time trees", len(trees)) + return trees + def get_travel_time_location( self, phase: str, diff --git a/lassie/tracers/constant_velocity.py b/lassie/tracers/constant_velocity.py index e84b8392..1dc88175 100644 --- a/lassie/tracers/constant_velocity.py +++ b/lassie/tracers/constant_velocity.py @@ -3,7 +3,7 @@ from datetime import datetime, timedelta from typing import TYPE_CHECKING, Literal, Sequence -from pydantic import PositiveFloat +from pydantic import Field, PositiveFloat from lassie.tracers.base import ModelledArrival, RayTracer from lassie.utils import PhaseDescription, log_call @@ -23,8 +23,14 @@ class ConstantVelocityArrival(ModelledArrival): class ConstantVelocityTracer(RayTracer): tracer: Literal["ConstantVelocityTracer"] = "ConstantVelocityTracer" - phase: PhaseDescription = "constant:P" - velocity: PositiveFloat = 5000.0 + phase: PhaseDescription = Field( + default="constant:P", + description="Name of the phase.", + ) + velocity: PositiveFloat = Field( + default=5000.0, + description="Constant velocity of the phase in m/s.", + ) def get_available_phases(self) -> tuple[str, ...]: return (self.phase,) diff --git a/lassie/tracers/fast_marching/fast_marching.py b/lassie/tracers/fast_marching/fast_marching.py index 4b272f0d..91434f35 100644 --- a/lassie/tracers/fast_marching/fast_marching.py +++ b/lassie/tracers/fast_marching/fast_marching.py @@ -12,7 +12,8 @@ import numpy as np from lru import LRU -from pydantic import BaseModel, ByteSize, Field, PrivateAttr +from pydantic import BaseModel, ByteSize, Field, PrivateAttr, ValidationError +from pyevtk.hl import gridToVTK from pyrocko.modelling import eikonal from rich.progress import Progress from scipy.interpolate import RegularGridInterpolator @@ -149,7 +150,6 @@ def eikonal_wrapper( return station_travel_times loop = asyncio.get_running_loop() - work = functools.partial( eikonal_wrapper, model, @@ -217,7 +217,7 @@ def save(self, path: Path) -> Path: raise AttributeError("travel times have not been calculated yet") file = path / self.filename if path.is_dir() else path - logger.debug("saving travel times to %s...", file) + logger.debug("saving travel times to %s", file) with zipfile.ZipFile(str(file), "w") as archive: archive.writestr("model.json", self.model_dump_json(indent=2)) @@ -238,7 +238,7 @@ def load(cls, file: Path) -> Self: Returns: Self: 3D travel times """ - logger.debug("loading travel times from %s...", file) + logger.debug("loading travel times from %s", file) with zipfile.ZipFile(file, "r") as archive: path = zipfile.Path(archive) model_file = path / "model.json" @@ -253,24 +253,47 @@ def _load_travel_times(self) -> np.ndarray: with zipfile.ZipFile(self._file, "r") as archive: return np.load(archive.open("travel_times.npy", "r")) + def export_vtk(self, filename: Path, reference: Location | None = None) -> None: + offset = reference.offset_from(self.center) if reference else np.zeros(3) + + out_file = gridToVTK( + str(filename), + self._east_coords + offset[0], + self._north_coords + offset[1], + np.array((-self._depth_coords + offset[2])[::-1]), + pointData={"travel_time": np.array(self.travel_times[:, :, ::-1])}, + ) + logger.debug( + "vtk: exported travel times of %s to %s", + self.station.pretty_nsl, + out_file, + ) + class FastMarchingTracer(RayTracer): tracer: Literal["FastMarchingRayTracer"] = "FastMarchingRayTracer" phase: PhaseDescription = "fm:P" - interpolation_method: Literal["nearest", "linear", "cubic"] = "linear" + interpolation_method: Literal["nearest", "linear", "cubic"] = Field( + default="linear", + description="Interpolation method for travel times." + "Choose from `nearest`, `linear` or `cubic`.", + ) nthreads: int = Field( default=0, description="Number of threads to use for travel time." - "If set to 0, cpu_count*2 will be used.", + " If set to `0`, `cpu_count*2` will be used.", ) lut_cache_size: ByteSize = Field( default=2 * GiB, - description="Size of the LUT cache.", + description="Size of the LUT cache. Default is `2G`.", ) - velocity_model: VelocityModels = Constant3DVelocityModel() + velocity_model: VelocityModels = Field( + default=Constant3DVelocityModel(), + description="Velocity model for the ray tracer.", + ) _travel_time_volumes: dict[str, StationTravelTimeVolume] = PrivateAttr({}) _velocity_model: VelocityModel3D | None = PrivateAttr(None) @@ -303,9 +326,20 @@ async def prepare( self, octree: Octree, stations: Stations, + rundir: Path | None = None, ) -> None: - logger.info("preparing fast-marching tracer for %s phase...", self.phase) + logger.info("loading velocity model %s", self.velocity_model.model) velocity_model = self.velocity_model.get_model(octree) + + logger.info( + "3D velocity model dimensions: " + " north-south %.1f m, east-west %.1f m , depth %.1f m, grid spacing %s m", + velocity_model.north_size, + velocity_model.east_size, + velocity_model.depth_size, + velocity_model.grid_spacing, + ) + logger.info("3D velocity model reference location %s", velocity_model.center) self._velocity_model = velocity_model for station in stations: @@ -318,10 +352,10 @@ async def prepare( for station in stations: velocity_station = velocity_model.get_velocity(station) - if velocity_station < 0.0: + if velocity_station <= 0.0: raise ValueError( - f"station {station.pretty_nsl} has negative velocity" - f" {velocity_station}" + f"station {station.pretty_nsl} has negative or zero velocity" + f" {velocity_station} m/s" ) logger.info( "velocity at station %s: %.1f m/s", @@ -370,13 +404,28 @@ async def prepare( ] await self._calculate_travel_times(calc_stations, cache_dir) + if rundir is not None: + vtk_dir = rundir / "vtk" + vtk_dir.mkdir(parents=True, exist_ok=True) + + logger.info("exporting vtk files") + velocity_model.export_vtk( + vtk_dir / f"velocity-model-{self.phase}", + reference=octree.location, + ) + for volume in self._travel_time_volumes.values(): + volume.export_vtk( + vtk_dir / f"travel-times-{volume.station.pretty_nsl}", + reference=octree.location, + ) + def _load_cached_tavel_times(self, cache_dir: Path) -> None: logger.debug("loading travel times volumes from cache %s...", cache_dir) volumes: dict[str, StationTravelTimeVolume] = {} for file in cache_dir.glob("*.3dtt"): try: travel_times = StationTravelTimeVolume.load(file) - except zipfile.BadZipFile: + except (zipfile.BadZipFile, ValidationError): logger.warning("removing bad travel time file %s", file) file.unlink() continue @@ -402,7 +451,7 @@ async def _calculate_travel_times( async def worker_station_travel_time(station: Station) -> None: volume = await StationTravelTimeVolume.calculate_from_eikonal( - self._velocity_model, # noqa + self._velocity_model, station, save=cache_dir, executor=executor, @@ -435,8 +484,8 @@ def get_travel_time_location( if phase != self.phase: raise ValueError(f"phase {phase} is not supported by this tracer") - station_travel_times = self.get_travel_time_volume(receiver) - return station_travel_times.interpolate_travel_time( + volume = self.get_travel_time_volume(receiver) + return volume.interpolate_travel_time( source, method=self.interpolation_method, ) @@ -496,7 +545,7 @@ def fill_lut(self, nodes: Sequence[Node]) -> None: travel_times = np.array(travel_times).T for node, station_travel_times in zip(nodes, travel_times, strict=True): - self._node_lut[node.hash()] = station_travel_times + self._node_lut[node.hash()] = station_travel_times.copy() def get_arrivals( self, diff --git a/lassie/tracers/fast_marching/velocity_models.py b/lassie/tracers/fast_marching/velocity_models.py index ba0b15bd..502399ac 100644 --- a/lassie/tracers/fast_marching/velocity_models.py +++ b/lassie/tracers/fast_marching/velocity_models.py @@ -4,6 +4,7 @@ import re from hashlib import sha1 from pathlib import Path +from tempfile import NamedTemporaryFile from typing import TYPE_CHECKING, Annotated, Any, Literal, Union import numpy as np @@ -16,6 +17,8 @@ model_validator, ) from pydantic.dataclasses import dataclass +from pyevtk.hl import gridToVTK +from pyrocko.cake import LayeredModel, load_model from scipy.interpolate import RegularGridInterpolator from typing_extensions import Self @@ -38,11 +41,11 @@ class VelocityModel3D(BaseModel): north_bounds: tuple[float, float] depth_bounds: tuple[float, float] - _east_coords: np.ndarray = PrivateAttr(None) - _north_coords: np.ndarray = PrivateAttr(None) - _depth_coords: np.ndarray = PrivateAttr(None) + _east_coords: np.ndarray = PrivateAttr() + _north_coords: np.ndarray = PrivateAttr() + _depth_coords: np.ndarray = PrivateAttr() - _velocity_model: np.ndarray = PrivateAttr(None) + _velocity_model: np.ndarray = PrivateAttr() _hash: str | None = PrivateAttr(None) @@ -87,6 +90,30 @@ def velocity_model(self) -> np.ndarray: raise ValueError("Velocity model not set.") return self._velocity_model + @property + def east_coords(self) -> np.ndarray: + return self._east_coords + + @property + def north_coords(self) -> np.ndarray: + return self._north_coords + + @property + def depth_coords(self) -> np.ndarray: + return self._depth_coords + + @property + def east_size(self) -> float: + return self._east_coords.size * self.grid_spacing + + @property + def north_size(self) -> float: + return self._north_coords.size * self.grid_spacing + + @property + def depth_size(self) -> float: + return self._depth_coords.size * self.grid_spacing + def hash(self) -> str: """Return hash of velocity model. @@ -94,8 +121,7 @@ def hash(self) -> str: str: The hash. """ if self._hash is None: - sha1_hash = sha1(self._velocity_model.tobytes()) - self._hash = sha1_hash.hexdigest() + self._hash = sha1(self._velocity_model.tobytes()).hexdigest() return self._hash def _get_location_indices(self, location: Location) -> tuple[int, int, int]: @@ -113,7 +139,7 @@ def _get_location_indices(self, location: Location) -> tuple[int, int, int]: east_idx = np.argmin(np.abs(self._east_coords - station_offset[0])) north_idx = np.argmin(np.abs(self._north_coords - station_offset[1])) depth_idx = np.argmin(np.abs(self._depth_coords - station_offset[2])) - return int(east_idx), int(north_idx), int(depth_idx) + return int(round(east_idx)), int(round(north_idx)), int(round(depth_idx)) def get_velocity(self, location: Location) -> float: """Return velocity at location in [m/s], nearest neighbor. @@ -153,11 +179,11 @@ def is_inside(self, location: Location) -> bool: Returns: bool: True if location is inside velocity model. """ - offset_to_center = location.offset_from(self.center) + offset_from_center = location.offset_from(self.center) return ( - self.east_bounds[0] <= offset_to_center[0] <= self.east_bounds[1] - and self.north_bounds[0] <= offset_to_center[1] <= self.north_bounds[1] - and self.depth_bounds[0] <= offset_to_center[2] <= self.depth_bounds[1] + self.east_bounds[0] <= offset_from_center[0] <= self.east_bounds[1] + and self.north_bounds[0] <= offset_from_center[1] <= self.north_bounds[1] + and self.depth_bounds[0] <= offset_from_center[2] <= self.depth_bounds[1] ) def get_meshgrid(self) -> list[np.ndarray]: @@ -214,14 +240,26 @@ def resample( ) return resampled_model + def export_vtk(self, filename: Path, reference: Location | None = None) -> None: + offset = reference.offset_from(self.center) if reference else np.zeros(3) + + out_file = gridToVTK( + str(filename), + self._east_coords + offset[0], + self._north_coords + offset[1], + np.array((-self._depth_coords + offset[2])[::-1]), + pointData={"velocity": np.array(self._velocity_model[:, :, ::-1])}, + ) + logger.info("vtk: exported velocity model to %s", out_file) + class VelocityModelFactory(BaseModel): model: Literal["VelocityModelFactory"] = "VelocityModelFactory" - grid_spacing: PositiveFloat | Literal["quadtree"] = Field( - default="quadtree", + grid_spacing: PositiveFloat | Literal["octree"] = Field( + default="octree", description="Grid spacing in meters." - " If 'quadtree' defaults to smallest octreee node size.", + " If 'octree' defaults to smallest octreee node size.", ) def get_model(self, octree: Octree) -> VelocityModel3D: @@ -236,13 +274,13 @@ class Constant3DVelocityModel(VelocityModelFactory): velocity: PositiveFloat = 5000.0 def get_model(self, octree: Octree) -> VelocityModel3D: - if self.grid_spacing == "quadtree": + if self.grid_spacing == "octree": grid_spacing = octree.smallest_node_size() else: grid_spacing = self.grid_spacing model = VelocityModel3D( - center=octree.reference, + center=octree.location, grid_spacing=grid_spacing, east_bounds=octree.east_bounds, north_bounds=octree.north_bounds, @@ -260,6 +298,8 @@ def get_model(self, octree: Octree) -> VelocityModel3D: @dataclass class NonLinLocHeader: + """Helper class representing a NonLinLoc header file.""" + origin: Location nx: int ny: int @@ -311,7 +351,7 @@ def from_header_file( raise ValueError("NonLinLoc velocity model must have equal spacing.") if reference_location: - origin = reference_location + origin = reference_location.model_copy() origin.east_shift += float(orig_x) * KM origin.north_shift += float(orig_y) * KM origin.elevation -= float(orig_z) * KM @@ -336,10 +376,12 @@ def from_header_file( @property def dtype(self) -> np.dtype: + """dtype of the grid.""" return DTYPE_MAP[self.grid_dtype] @property def grid_spacing(self) -> float: + """grid spacing, homogeneous in three directions.""" return self.delta_x @property @@ -355,7 +397,7 @@ def north_bounds(self) -> tuple[float, float]: @property def depth_bounds(self) -> tuple[float, float]: """Relative to center location.""" - return (0, self.delta_z * self.nz) + return 0, self.delta_z * self.nz @property def center(self) -> Location: @@ -375,51 +417,45 @@ class NonLinLocVelocityModel(VelocityModelFactory): header_file: FilePath = Field( ..., - description="Path to NonLinLoc model header file file." - "The file should be in the format of a NonLinLoc velocity model header file.", - ) - buffer_file: FilePath | None = Field( - default=None, - description="Path to NonLinLoc model buffer file. If none, the filename will be" - "infered from the header file.", + description="Path to NonLinLoc model header file file. " + "The file should be in the format of a NonLinLoc velocity model header file. " + "Binary data has to have the same name and `.buf` suffix.", ) - grid_spacing: PositiveFloat | Literal["quadtree", "input"] = Field( + grid_spacing: PositiveFloat | Literal["octree", "input"] = Field( default="input", - description="Grid spacing in meters." - " If 'quadtree' defaults to smallest octreee node size. If 'input' uses the" + description="Grid spacing in meters. " + "If 'octree' defaults to smallest octreee node size. If 'input' uses the" " grid spacing from the NonLinLoc header file.", ) interpolation: Literal["nearest", "linear", "cubic"] = Field( default="linear", - description="Interpolation method for resampling the grid " - "for the fast-marching method.", + description="Interpolation method for resampling the grid" + " for the fast-marching method.", ) reference_location: Location | None = Field( default=None, - description="relative location of NonLinLoc model, " - "used for models with relative coordinates.", + description="relative location of NonLinLoc model," + " used for models with relative coordinates.", ) _header: NonLinLocHeader = PrivateAttr() _velocity_model: np.ndarray = PrivateAttr() @model_validator(mode="after") - def load_header(self) -> Self: + def load_model(self) -> Self: self._header = NonLinLocHeader.from_header_file( self.header_file, reference_location=self.reference_location, ) - self.buffer_file = self.buffer_file or self.header_file.with_suffix(".buf") - if not self.buffer_file.exists(): - raise FileNotFoundError(f"Buffer file {self.buffer_file} not found.") + buffer_file = self.header_file.with_suffix(".buf") + if not buffer_file.exists(): + raise FileNotFoundError(f"Buffer file {buffer_file} not found.") - logger.debug( - "loading NonLinLoc velocity model buffer file %s", self.buffer_file - ) + logger.debug("loading NonLinLoc velocity model buffer file %s", buffer_file) self._velocity_model = np.fromfile( - self.buffer_file, dtype=self._header.dtype + buffer_file, dtype=self._header.dtype ).reshape((self._header.nx, self._header.ny, self._header.nz)) if self._header.grid_type == "SLOW_LEN": @@ -441,12 +477,14 @@ def load_header(self) -> Self: return self def get_model(self, octree: Octree) -> VelocityModel3D: - if self.grid_spacing == "quadtree": + if self.grid_spacing == "octree": grid_spacing = octree.smallest_node_size() - if self.grid_spacing == "input": + elif self.grid_spacing == "input": grid_spacing = self._header.grid_spacing - else: + elif isinstance(self.grid_spacing, float): grid_spacing = self.grid_spacing + else: + raise ValueError(f"Invalid grid_spacing {self.grid_spacing}") header = self._header @@ -461,7 +499,77 @@ def get_model(self, octree: Octree) -> VelocityModel3D: return velocity_model.resample(grid_spacing, self.interpolation) +class VelocityModelLayered(VelocityModelFactory): + # For mere testing purposes of the 3D tracer against Pyrocko cake 2D travel times + model: Literal["VelocityModel2D"] = "VelocityModel2D" + velocity: Literal["vp", "vs"] = Field( + default="vp", + description="velocity to extract from the 2D model, choose from 'vp' or 'vs'.", + ) + format: Literal["nd", "hyposat"] = Field( + default="nd", + description="Format of the velocity model. nd or hyposat is supported.", + ) + filename: FilePath = Field( + ..., + description="Path to `.nd` file holding the 2D velocity model information.", + ) + raw_file_data: str | None = Field( + default=None, + description="Raw `.nd` file data.", + ) + + _layered_model: LayeredModel = PrivateAttr() + + @model_validator(mode="after") + def load_model(self) -> VelocityModelLayered: + if self.filename is not None: + logger.info("loading velocity model from %s", self.filename) + self.raw_file_data = self.filename.read_text() + + if self.raw_file_data is not None: + with NamedTemporaryFile("w") as tmpfile: + tmpfile.write(self.raw_file_data) + tmpfile.flush() + self._layered_model = load_model( + tmpfile.name, + format=self.format, + ) + else: + raise AttributeError("No velocity model or crust2 profile defined.") + return self + + def get_model(self, octree: Octree) -> VelocityModel3D: + if self.grid_spacing == "octree": + grid_spacing = octree.smallest_node_size() + else: + grid_spacing = self.grid_spacing + + model = VelocityModel3D( + center=octree.location, + grid_spacing=grid_spacing, + east_bounds=octree.east_bounds, + north_bounds=octree.north_bounds, + depth_bounds=octree.depth_bounds, + ) + + velocities = [] + for depth in model.depth_coords: + material = self._layered_model.material(z=depth) + if self.velocity == "vp": + velocities.append(material.vp) + elif self.velocity == "vs": + velocities.append(material.vs) + else: + raise ValueError(f"Invalid velocity {self.velocity}") + + velocities = np.array(velocities) + + model.velocity_model[:, :, :] = velocities[np.newaxis, np.newaxis, :] + return model + + VelocityModels = Annotated[ - Union[Constant3DVelocityModel, NonLinLocVelocityModel], + Union[Constant3DVelocityModel, NonLinLocVelocityModel, VelocityModelLayered], Field(..., discriminator="model"), ] diff --git a/lassie/utils.py b/lassie/utils.py index 88ca53b1..27724fed 100644 --- a/lassie/utils.py +++ b/lassie/utils.py @@ -7,7 +7,7 @@ from pathlib import Path from typing import TYPE_CHECKING, Annotated, Awaitable, Callable, ParamSpec, TypeVar -from pydantic import constr +from pydantic import BaseModel, constr from pyrocko.util import UnavailableDecimation from rich.logging import RichHandler @@ -105,3 +105,42 @@ def human_readable_bytes(size: int | float) -> str: def datetime_now() -> datetime: return datetime.now(tz=timezone.utc) + + +def generate_docs(model: BaseModel, exclude: dict | set | None = None) -> str: + """Takes model and dumps markdown for documentation""" + + def generate_submodel(model: BaseModel) -> list[str]: + lines = [] + for name, field in model.model_fields.items(): + if field.description is None: + continue + lines += [ + f" - **`{name}`** *`{field.annotation}`*\n", + f" {field.description}", + ] + return lines + + model_name = model.__class__.__name__ + lines = [f"### {model_name} Module"] + if model.__class__.__doc__ is not None: + lines += [f"{model.__class__.__doc__}\n"] + lines += [f'=== "Config {model_name}"'] + for name, field in model.model_fields.items(): + if field.description is None: + continue + lines += [ + f" **`{name}`**\n", + f" : {field.description}\n", + ] + + def dump_json() -> list[str]: + dump = model.model_dump_json(by_alias=False, indent=2, exclude=exclude) + lines = dump.split("\n") + return [f" {line}" for line in lines] + + lines += ['=== "JSON Block"'] + lines += [f" ```json title='JSON block for {model_name}'"] + lines.extend(dump_json()) + lines += [" ```"] + return "\n".join(lines) diff --git a/lassie/waveforms/base.py b/lassie/waveforms/base.py index 38319a55..c4835073 100644 --- a/lassie/waveforms/base.py +++ b/lassie/waveforms/base.py @@ -30,6 +30,22 @@ class WaveformBatch: def duration(self) -> timedelta: return self.end_time - self.start_time + @property + def cumulative_duration(self) -> timedelta: + """Cumulative duration of the traces in the batch. + + Returns: + timedelta: Cumulative duration of the traces in the batch. + """ + seconds = 0.0 + for tr in self.traces: + seconds += tr.tmax - tr.tmin + return timedelta(seconds=seconds) + + @property + def cumulative_bytes(self) -> int: + return sum(tr.ydata.nbytes for tr in self.traces) + def is_empty(self) -> bool: """Check if the batch is empty. @@ -45,6 +61,10 @@ def clean_traces(self) -> None: logger.warning("skipping empty or bad trace: %s", ".".join(tr.nslc_id)) self.traces.remove(tr) + def log_str(self) -> str: + """Log the batch.""" + return f"{self.i_batch+1}/{self.n_batches or '?'} {self.start_time}" + class WaveformProvider(BaseModel): provider: Literal["WaveformProvider"] = "WaveformProvider" diff --git a/lassie/waveforms/squirrel.py b/lassie/waveforms/squirrel.py index e9ad91dc..7faa4272 100644 --- a/lassie/waveforms/squirrel.py +++ b/lassie/waveforms/squirrel.py @@ -9,9 +9,12 @@ from pydantic import ( AwareDatetime, + DirectoryPath, + Field, + PositiveFloat, PositiveInt, PrivateAttr, - constr, + field_validator, model_validator, ) from pyrocko.squirrel import Squirrel @@ -28,45 +31,114 @@ class SquirrelPrefetcher: - def __init__(self, iterator: Iterator[Batch], queue_size: int = 4) -> None: + def __init__( + self, + iterator: Iterator[Batch], + queue_size: int = 4, + highpass: float | None = None, + lowpass: float | None = None, + ) -> None: self.iterator = iterator self.queue: asyncio.Queue[Batch | None] = asyncio.Queue(maxsize=queue_size) + self.highpass = highpass + self.lowpass = lowpass + self._fetched_batches = 0 self._task = asyncio.create_task(self.prefetch_worker()) async def prefetch_worker(self) -> None: - logger.info("start prefetching squirrel data") + logger.info("start prefetching data, queue size %d", self.queue.maxsize) + + def filter_freqs(batch: Batch) -> Batch: + # Filter traces in-place + start = None + if self.highpass: + start = datetime_now() + for tr in batch.traces: + tr.highpass(4, corner=self.highpass) + if self.lowpass: + start = start or datetime_now() + for tr in batch.traces: + tr.lowpass(4, corner=self.lowpass) + if start: + logger.debug("filtered traces in %s", datetime_now() - start) + return batch + while True: start = datetime_now() batch = await asyncio.to_thread(lambda: next(self.iterator, None)) - logger.debug("prefetched waveforms in %s", datetime_now() - start) if batch is None: logger.debug("squirrel prefetcher finished") await self.queue.put(None) break + + await asyncio.to_thread(filter_freqs, batch) + logger.debug("prefetched waveforms in %s", datetime_now() - start) + if self.queue.empty() and self._fetched_batches: + logger.warning("queue ran empty, prefetching is too slow") + + self._fetched_batches += 1 await self.queue.put(batch) class PyrockoSquirrel(WaveformProvider): - provider: Literal["PyrockoSquirrel"] = "PyrockoSquirrel" + """Waveform provider using Pyrocko's Squirrel.""" - environment: Path = Path(".") - waveform_dirs: list[Path] = [] - start_time: AwareDatetime | None = None - end_time: AwareDatetime | None = None + provider: Literal["PyrockoSquirrel"] = "PyrockoSquirrel" - channel_selector: constr(max_length=3) = "*" + environment: DirectoryPath = Field( + default=Path("."), + description="Path to a Squirrel environment.", + ) + waveform_dirs: list[DirectoryPath] = Field( + default=[], + description="List of directories holding the waveform files.", + ) + start_time: AwareDatetime | None = Field( + default=None, + description="Start time for the search in " + "[ISO8601](https://en.wikipedia.org/wiki/ISO_8601).", + ) + end_time: AwareDatetime | None = Field( + default=None, + description="End time for the search in " + "[ISO8601](https://en.wikipedia.org/wiki/ISO_8601).", + ) + + highpass: PositiveFloat | None = Field( + default=None, + description="Highpass filter, corner frequency in Hz.", + ) + lowpass: PositiveFloat | None = Field( + default=None, + description="Lowpass filter, corner frequency in Hz.", + ) + + channel_selector: str = Field( + default="*", + max_length=3, + description="Channel selector for waveforms, " + "use e.g. `EN?` for selection of all accelerometer data.", + ) async_prefetch_batches: PositiveInt = 4 _squirrel: Squirrel | None = PrivateAttr(None) _stations: Stations = PrivateAttr() @model_validator(mode="after") - def _validate_time_span(self) -> Self: # noqa: N805 + def _validate_model(self) -> Self: if self.start_time and self.end_time and self.start_time > self.end_time: raise ValueError("start_time must be before end_time") + if self.highpass and self.lowpass and self.highpass > self.lowpass: + raise ValueError("freq_min must be less than freq_max") return self + @field_validator("waveform_dirs") + def check_dirs(cls, dirs: list[Path]) -> list[Path]: # noqa: N805 + if not dirs: + raise ValueError("no waveform directories provided!") + return dirs + def get_squirrel(self) -> Squirrel: if not self._squirrel: logger.debug("initializing squirrel") @@ -121,7 +193,12 @@ async def iter_batches( (*nsl, self.channel_selector) for nsl in self._stations.get_all_nsl() ], ) - prefetcher = SquirrelPrefetcher(iterator, self.async_prefetch_batches) + prefetcher = SquirrelPrefetcher( + iterator, + self.async_prefetch_batches, + self.highpass, + self.lowpass, + ) while True: batch = await prefetcher.queue.get() @@ -138,5 +215,3 @@ async def iter_batches( ) prefetcher.queue.task_done() - - logger.info("squirrel search finished") diff --git a/mkdocs.yml b/mkdocs.yml index 9198fde5..002b1113 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,14 +1,77 @@ -site_name: Lassie +site_name: Lassie - Earthquake Detector site_description: The friendly earthquake detector -repo_url: https://github.com/miili/lassie-v2 -repo_name: miili/lassie-v2 - +site_author: Marius Paul Isken +repo_url: https://github.com/pyrocko/lassie-v2 +repo_name: pyrocko/lassie-v2 +edit_uri: edit/main/docs/ theme: name: material + custom_dir: docs/theme palette: - scheme: slate + - scheme: default + primary: blue grey + toggle: + icon: material/toggle-switch + name: Switch to dark mode + # Palette toggle for dark mode + - scheme: slate + primary: blue grey + toggle: + icon: material/toggle-switch-off-outline + name: Switch to light mode icon: repo: fontawesome/brands/git-alt - logo: logos/lassie.webp + logo: images/logo.webp + features: + - navigation.tabs + - search.suggest + - announce.dismiss + - content.code.copy + - content.action.edit + +markdown_extensions: + - pymdownx.highlight: + anchor_linenums: true + line_spans: __span + pygments_lang_class: true + - pymdownx.snippets + - pymdownx.superfences + - pymdownx.details + - pymdownx.tasklist + - pymdownx.arithmatex: + generic: true + - pymdownx.tabbed: + alternate_style: true + - admonition + - def_list + - attr_list + +extra_javascript: + - javascripts/mathjax.js + - https://polyfill.io/v3/polyfill.min.js?features=es6 + - https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js + +watch: + - lassie + +plugins: + - search + - mkdocstrings: + default_handler: python + - markdown-exec + +nav: + - Earthquake Detector: + - Welcome: index.md + - Getting Started: getting_started.md + - Visualising Detections: visualizing_results.md + - Usage: + - Configuration: components/configuration.md + - Seismic Data: components/seismic_data.md + - Ray Tracer: components/ray_tracer.md + - Image Function: components/image_function.md + - Octree: components/octree.md + - Station Corrections: components/station_corrections.md + - EQ Feature Extraction: components/feature_extraction.md diff --git a/pyproject.toml b/pyproject.toml index a7614309..5cb608f1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,4 @@ + [build-system] requires = [ "wheel", @@ -31,37 +32,38 @@ dependencies = [ "scipy>=1.8.0", "pyrocko>=2022.06.10", "seisbench>=0.5.0", - "pydantic>=2.3", + "pydantic>=2.4.2", "aiohttp>=3.8", "aiohttp_cors>=0.7.0", "typing-extensions>=4.6", "lru-dict>=1.2", "rich>=13.4", "nest_asyncio>=1.5", + "pyevtk>=1.6", ] classifiers = [ + "Development Status :: 4 - Beta", "Intended Audience :: Science/Research", "Topic :: Scientific/Engineering", - "Topic :: Scientific/Engineering :: Atmospheric Science", - "Topic :: Scientific/Engineering :: Image Recognition", "Topic :: Scientific/Engineering :: Physics", - "Topic :: Scientific/Engineering :: Visualization", - "Programming Language :: Python :: 3.7", - "Programming Language :: C", + "Topic :: Scientific/Engineering :: Information Analysis", "Operating System :: POSIX", "Operating System :: MacOS", + "Typing :: Typed", + "Programming Language :: Python :: 3 :: Only", + "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", ] [project.optional-dependencies] dev = [ - "pre-commit", - "black", - "ruff", - "pytest", - "pytest-asyncio", - "mkdocs-material", - "mkdocstrings-python", + "pre-commit>=3.4", + "black>=23.7", + "ruff>=0.1", + "pytest>=7.4", + "pytest-asyncio>=0.21", + "mkdocs-material>=9.4", + "mkdocstrings[python]>=0.23", ] [project.scripts] @@ -81,8 +83,22 @@ Issues = "https://git.pyrocko.org/pyrocko/lassie/issues" [tool.setuptools_scm] [tool.ruff] -extend-select = ['W', 'N', 'DTZ', 'FA', 'G', 'RET', 'SIM', 'B', 'RET', 'C4'] +extend-select = [ + 'W', + 'N', + 'DTZ', + 'FA', + 'G', + 'RET', + 'SIM', + 'B', + 'RET', + 'C4', + 'I', + 'RUF', +] target-version = 'py310' +ignore = ["RUF012", "RUF009"] [tool.pytest.ini_options] markers = ["plot: plot figures in tests"] diff --git a/test/conftest.py b/test/conftest.py index 29e32c23..009f7945 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -92,7 +92,7 @@ def data_dir() -> Path: @pytest.fixture(scope="session") def octree() -> Octree: return Octree( - reference=Location( + location=Location( lat=10.0, lon=10.0, elevation=1.0 * KM, @@ -116,7 +116,8 @@ def stations() -> Stations: station="STA%02d" % i_sta, lat=10.0, lon=10.0, - elevation=random.uniform(0, 1) * KM, + elevation=random.uniform(0, 0.8) * KM, + depth=random.uniform(0, 0.2) * KM, north_shift=random.uniform(-10, 10) * KM, east_shift=random.uniform(-10, 10) * KM, ) diff --git a/test/test_cake.py b/test/test_cake.py index cccb4079..8fb192a9 100644 --- a/test/test_cake.py +++ b/test/test_cake.py @@ -1,19 +1,57 @@ from __future__ import annotations +import logging from pathlib import Path from tempfile import TemporaryDirectory -from typing import TYPE_CHECKING import numpy as np +import pytest from lassie.models.location import Location -from lassie.tracers.cake import TravelTimeTree - -if TYPE_CHECKING: - from lassie.models.station import Stations - from lassie.octree import Octree +from lassie.models.station import Station, Stations +from lassie.octree import Octree +from lassie.tracers.cake import CakeTracer, EarthModel, Timing, TravelTimeTree +from lassie.tracers.constant_velocity import ConstantVelocityTracer KM = 1e3 +CONSTANT_VELOCITY = 5 * KM + + +@pytest.fixture(scope="session") +def small_octree() -> Octree: + return Octree( + location=Location( + lat=10.0, + lon=10.0, + elevation=0.2 * KM, + ), + size_initial=0.5 * KM, + size_limit=50, + east_bounds=(-2 * KM, 2 * KM), + north_bounds=(-2 * KM, 2 * KM), + depth_bounds=(0 * KM, 2 * KM), + absorbing_boundary=1 * KM, + ) + + +@pytest.fixture(scope="session") +def small_stations() -> Stations: + rng = np.random.default_rng(1232) + n_stations = 20 + stations: list[Station] = [] + for i_sta in range(n_stations): + station = Station( + network="XX", + station="STA%02d" % i_sta, + lat=10.0, + lon=10.0, + elevation=rng.uniform(0, 0.1) * KM, + depth=rng.uniform(0, 0.1) * KM, + north_shift=rng.uniform(-2, 2) * KM, + east_shift=rng.uniform(-2, 2) * KM, + ) + stations.append(station) + return Stations(stations=stations) def test_sptree_model(travel_time_tree: TravelTimeTree): @@ -68,3 +106,37 @@ def test_lut( traveltimes_tree = model.interpolate_travel_times(octree, stations_selection) traveltimes_lut = model.get_travel_times(octree, stations_selection) np.testing.assert_equal(traveltimes_tree, traveltimes_lut) + + +@pytest.mark.asyncio +async def test_travel_times_constant_velocity( + small_octree: Octree, + small_stations: Stations, +): + octree = small_octree + stations = small_stations + octree.size_limit = 200 + cake_tracer = CakeTracer( + phases={"cake:P": Timing(definition="P,p")}, + earthmodel=EarthModel( + filename=None, + raw_file_data=f""" + -2.0 {CONSTANT_VELOCITY/KM:.1f} 2.0 2.7 + 12.0 {CONSTANT_VELOCITY/KM:.1f} 2.0 2.7 +""", + ), + ) + constant = ConstantVelocityTracer( + velocity=CONSTANT_VELOCITY, + ) + + await cake_tracer.prepare(octree, stations) + + cake_travel_times = cake_tracer.get_travel_times("cake:P", octree, stations) + constant_traveltimes = constant.get_travel_times("constant:P", octree, stations) + + nan_mask = np.isnan(cake_travel_times) + logging.warning("percent nan: %.1f", (nan_mask.sum() / nan_mask.size) * 100) + + constant_traveltimes[nan_mask] = np.nan + np.testing.assert_almost_equal(cake_travel_times, constant_traveltimes, decimal=2) diff --git a/test/test_fast_marching.py b/test/test_fast_marching.py index 59d75206..79322ab6 100644 --- a/test/test_fast_marching.py +++ b/test/test_fast_marching.py @@ -1,13 +1,22 @@ from __future__ import annotations +import asyncio from pathlib import Path +from typing import Literal, TypedDict import numpy as np import pytest import pytest_asyncio +from lassie.models.location import Location from lassie.models.station import Station, Stations from lassie.octree import Octree +from lassie.tracers.cake import ( + DEFAULT_VELOCITY_MODEL_FILE, + CakeTracer, + EarthModel, + Timing, +) from lassie.tracers.fast_marching.fast_marching import ( FastMarchingTracer, StationTravelTimeVolume, @@ -16,18 +25,37 @@ Constant3DVelocityModel, NonLinLocVelocityModel, VelocityModel3D, + VelocityModelLayered, ) from lassie.utils import datetime_now CONSTANT_VELOCITY = 5000 KM = 1e3 +NON_LIN_LOC_REFERENCE_LOCATION = Location( + lat=38.50402147, + lon=-112.8963897, + elevation=1650.0, +) + + +def has_grid2time() -> bool: + # grid2time is an executeable that is part of the NonLinLoc package + # https://alomax.free.fr/nlloc/soft6.00.html + try: + import subprocess + + subprocess.run(["Grid2Time", "-h"], capture_output=True) + except FileNotFoundError: + return False + return True + def stations_inside( model: VelocityModel3D, nstations: int = 20, + depth_range: float | None = None, seed: int = 0, - depth: float | None = None, ) -> Stations: stations = [] rng = np.random.RandomState(seed) @@ -41,7 +69,11 @@ def stations_inside( north_shift=model.center.north_shift + rng.uniform(*model.north_bounds), east_shift=model.center.east_shift + rng.uniform(*model.east_bounds), depth=model.center.depth - + (depth if depth is not None else rng.uniform(*model.depth_bounds)), + + ( + rng.uniform(depth_range) + if depth_range is not None + else rng.uniform(*model.depth_bounds) + ), ) station = station.shifted_origin() stations.append(station) @@ -50,7 +82,7 @@ def stations_inside( def octree_cover(model: VelocityModel3D) -> Octree: return Octree( - reference=model.center, + location=model.center, size_initial=2 * KM, size_limit=500, east_bounds=model.east_bounds, @@ -64,7 +96,7 @@ def octree_cover(model: VelocityModel3D) -> Octree: async def station_travel_times( octree: Octree, stations: Stations ) -> StationTravelTimeVolume: - octree.reference.elevation = 1 * KM + octree.location.elevation = 1 * KM model = Constant3DVelocityModel(velocity=CONSTANT_VELOCITY, grid_spacing=100.0) model_3d = model.get_model(octree) return await StationTravelTimeVolume.calculate_from_eikonal( @@ -88,7 +120,7 @@ async def test_load_save( @pytest.mark.asyncio -async def test_travel_time_interpolation( +async def test_travel_times_constant_model( station_travel_times: StationTravelTimeVolume, octree: Octree, ) -> None: @@ -127,6 +159,39 @@ async def test_travel_time_interpolation( ) +@pytest.mark.asyncio +async def test_travel_times_cake( + octree: Octree, + fixed_stations: Stations, +): + tracer = FastMarchingTracer( + phase="fm:P", + velocity_model=VelocityModelLayered( + grid_spacing=200.0, + velocity="vp", + filename=DEFAULT_VELOCITY_MODEL_FILE, + ), + ) + await tracer.prepare(octree, fixed_stations) + + cake_tracer = CakeTracer( + phases={"cake:P": Timing(definition="P,p")}, + earthmodel=EarthModel( + filename=DEFAULT_VELOCITY_MODEL_FILE, + ), + ) + await cake_tracer.prepare(octree, fixed_stations) + + travel_times_fast_marching = tracer.get_travel_times("fm:P", octree, fixed_stations) + travel_times_cake = cake_tracer.get_travel_times("cake:P", octree, fixed_stations) + + nan_mask = np.isnan(travel_times_cake) + travel_times_fast_marching[nan_mask] = np.nan + np.testing.assert_almost_equal( + travel_times_fast_marching, travel_times_cake, decimal=1 + ) + + @pytest.mark.asyncio async def test_fast_marching_phase_tracer( octree: Octree, fixed_stations: Stations @@ -147,7 +212,10 @@ async def test_non_lin_loc(data_dir: Path, octree: Octree, stations: Stations) - tracer = FastMarchingTracer( phase="fm:P", - velocity_model=NonLinLocVelocityModel(header_file=header_file), + velocity_model=NonLinLocVelocityModel( + header_file=header_file, + reference_location=NON_LIN_LOC_REFERENCE_LOCATION, + ), ) octree = octree_cover(tracer.velocity_model.get_model(octree)) stations = stations_inside(tracer.velocity_model.get_model(octree)) @@ -171,7 +239,10 @@ def test_non_lin_loc_model( header_file = data_dir / "FORGE_3D_5_large.P.mod.hdr" - model = NonLinLocVelocityModel(header_file=header_file) + model = NonLinLocVelocityModel( + header_file=header_file, + reference_location=NON_LIN_LOC_REFERENCE_LOCATION, + ) velocity_model = model.get_model(octree).resample( grid_spacing=200.0, method="linear", @@ -181,7 +252,6 @@ def test_non_lin_loc_model( fig = plt.figure() ax = fig.add_subplot(projection="3d") coords = velocity_model.get_meshgrid() - print(coords[0].shape) cmap = ax.scatter( coords[0], coords[1], @@ -203,22 +273,22 @@ async def test_non_lin_loc_travel_times(data_dir: Path, octree: Octree) -> None: tracer = FastMarchingTracer( phase="fm:P", velocity_model=NonLinLocVelocityModel( + reference_location=NON_LIN_LOC_REFERENCE_LOCATION, header_file=header_file, grid_spacing=100.0, ), ) model_3d = tracer.velocity_model.get_model(octree) octree = octree_cover(model_3d) - stations = stations_inside(model_3d, depth=0.0) + stations = stations_inside(model_3d, depth_range=500.0) await tracer.prepare(octree, stations) - volume = tracer.get_travel_time_volume(stations.stations[0]) + volume = tracer.get_travel_time_volume(stations.stations[3]) # 3d figure of velocity model fig = plt.figure() ax = fig.add_subplot(projection="3d") coords = volume.get_meshgrid() - print(coords[0].shape) cmap = ax.scatter( coords[0], @@ -227,9 +297,203 @@ async def test_non_lin_loc_travel_times(data_dir: Path, octree: Octree) -> None: c=volume.travel_times.ravel(), alpha=0.2, ) + ax.set_xlabel("East (m)") + ax.set_ylabel("North (m)") + ax.set_zlabel("Depth (m)") + fig.colorbar(cmap) station_offet = volume.station.offset_from(volume.center) - print(station_offet) - ax.scatter(*station_offet, s=100, c="r") - fig.colorbar(cmap) + ax.scatter(*station_offet, s=1000, c="r") plt.show() + + +@pytest.mark.asyncio +def test_non_lin_loc_geometry( + data_dir: Path, + tmp_path: Path, + octree: Octree, +): + header_file = data_dir / "FORGE_3D_5_large.P.mod.hdr" + tracer = FastMarchingTracer( + phase="fm:P", + velocity_model=NonLinLocVelocityModel( + reference_location=NON_LIN_LOC_REFERENCE_LOCATION, + header_file=header_file, + grid_spacing=100.0, + ), + ) + model_3d = tracer.velocity_model.get_model(octree) + + center = model_3d.center.model_copy() + + size_ns = model_3d.north_bounds[1] - model_3d.north_bounds[0] + size_ew = model_3d.east_bounds[1] - model_3d.east_bounds[0] + + corner_se = center.model_copy() + corner_se.east_shift -= size_ew / 2 + corner_se.north_shift -= size_ns / 2 + + corner_sw = center.model_copy() + corner_sw.east_shift += size_ew / 2 + corner_sw.north_shift -= size_ns / 2 + + corner_ne = center.model_copy() + corner_ne.east_shift -= size_ew / 2 + corner_ne.north_shift += size_ns / 2 + + corner_nw = center.model_copy() + corner_nw.east_shift += size_ew / 2 + corner_nw.north_shift += size_ns / 2 + + locations = { + "center": center, + "reference": NON_LIN_LOC_REFERENCE_LOCATION, + "corner_se": corner_se, + "corner_sw": corner_sw, + "corner_ne": corner_ne, + "corner_nw": corner_nw, + } + + # write csv + csv_file = tmp_path / "corners_model.csv" + with csv_file.open("w") as f: + f.write("name, lon, lat\n") + for name, loc in locations.items(): + f.write(f"{name}, {loc.effective_lon}, {loc.effective_lat}\n") + + +@pytest.mark.asyncio +@pytest.mark.skipif(not has_grid2time(), reason="Grid2Time not installed") +async def test_non_lin_loc_grid2time( + data_dir: Path, + tmp_path: Path, + octree: Octree, +) -> None: + header_file = data_dir / "FORGE_3D_5_large.P.mod.hdr" + velocity_model = NonLinLocVelocityModel( + reference_location=NON_LIN_LOC_REFERENCE_LOCATION, + header_file=header_file, + grid_spacing="input", + ) + velocity_volume = velocity_model.get_model(octree) + + tracer = FastMarchingTracer(phase="fm:P", velocity_model=velocity_model) + model_3d = tracer.velocity_model.get_model(octree) + + octree = octree_cover(model_3d) + stations = stations_inside(model_3d, depth_range=0.0) + await tracer.prepare(octree, stations) + + station = stations.stations[0] + tt_volume = tracer.get_travel_time_volume(station) + + size_east = tt_volume.east_bounds[1] - tt_volume.east_bounds[0] + size_north = tt_volume.north_bounds[1] - tt_volume.north_bounds[0] + + corner_sw = tt_volume.center.model_copy() + corner_sw.east_shift -= size_east * 0.5 + corner_sw.north_shift -= size_north * 0.5 + + class Grid2TimeParams(TypedDict): + messageFlag: Literal[-1, 0, 1, 2, 3, 4] + randomNumberSeed: int + + latOrig: float + longOrig: float + rotAngle: float + + ttimeFileRoot: Path + outputFileRoot: Path + waveType: Literal["P", "S"] + iSwapBytesOnInput: Literal[0, 1] + + gridMode: Literal["GRID3D", "GRID2D"] + angleMode: Literal["ANGLES_YES", "ANGLES_NO"] + + srcLabel: str + xSrce: float + ySrce: float + zSrce: float + elev: float + hs_eps_init: float + message_flag: Literal[0, 1, 2] + + non_lin_loc_control_file = """ +CONTROL {messageFlag} {randomNumberSeed} +TRANS SIMPLE {latOrig} {longOrig} {rotAngle} +GTFILES {ttimeFileRoot} {outputFileRoot} {waveType} {iSwapBytesOnInput} +GTMODE {gridMode} {angleMode} +GTSRCE {srcLabel} XYZ {xSrce:.2f} {ySrce:.2f} {zSrce:.2f} {elev:.2f} +GT_PLFD {hs_eps_init} {message_flag} +""" + + for ista, station in enumerate(stations): + offset = station.offset_from(NON_LIN_LOC_REFERENCE_LOCATION) + + params: Grid2TimeParams = { + "messageFlag": 3, + "randomNumberSeed": 12345, + "latOrig": NON_LIN_LOC_REFERENCE_LOCATION.effective_lat, + "longOrig": NON_LIN_LOC_REFERENCE_LOCATION.effective_lon, + "rotAngle": 0.0, + "ttimeFileRoot": (header_file.parent / header_file.name.split(".")[0]), + "outputFileRoot": tmp_path, + "waveType": "P", + "iSwapBytesOnInput": 0, + "gridMode": "GRID3D", + "angleMode": "ANGLES_NO", + "srcLabel": f"SRC_{ista:02d}", + "xSrce": offset[0] / KM, + "ySrce": offset[1] / KM, + "zSrce": offset[2] / KM, + "elev": 0.0, + "hs_eps_init": 1e-3, + "message_flag": 1, + } + + ctrl_file = tmp_path / "test.ctrl" + ctrl_file.write_text(non_lin_loc_control_file.format(**params)) + proc = await asyncio.create_subprocess_shell( + f"Grid2Time {ctrl_file}", + stdout=asyncio.subprocess.PIPE, + stderr=asyncio.subprocess.PIPE, + ) + stdout, stderr = await proc.communicate() + await proc.wait() + assert proc.returncode == 0, f"bad status for Grid2Time \n {stdout} \n {stderr}" + + buf_file = f"*.{params['waveType']}.{params['srcLabel']}.time.buf" + + log_src = f""" +src_velocity {velocity_volume.get_velocity(station):.1f} km/s, +indices: {velocity_volume._get_location_indices(station)} +offset: {offset} +coords lat/lon: {station.effective_lat:.4f}, {station.effective_lon:.4f} + """ + + for buffer in tmp_path.parent.glob(buf_file): + if buffer.exists(): + break + else: + raise FileNotFoundError( + f"""No buffer file with traveltimes not found +-------- stdout ---------- +{stdout.decode()} +-------- stderr ---------- +{stderr.decode()} +-------- lassie ---------- +{log_src} +""" + ) + + tt_grid2time = np.fromfile(buffer, dtype=np.float32).reshape( + tt_volume.travel_times.shape + ) + tt_volume = tracer.get_travel_time_volume(station) + + np.testing.assert_almost_equal( + tt_volume.travel_times, + tt_grid2time, + decimal=1, + err_msg=f"{stdout.decode()}\n--- lassie ---\n{log_src}", + ) diff --git a/test/test_location.py b/test/test_location.py index 43e552c6..cf80bbaa 100644 --- a/test/test_location.py +++ b/test/test_location.py @@ -70,6 +70,59 @@ def test_location_offset(): offset = loc_other.offset_from(loc) assert offset == (100.0, 100.0, -90.0) + loc2 = Location( + lat=11.0, + lon=23.55, + elevation=20.0, + depth=20.0, + ) + loc_other = Location( + lat=11.0, + lon=23.55, + north_shift=100.0, + east_shift=100.0, + elevation=100.0, + depth=10.0, + ) + offset = loc_other.offset_from(loc2) + assert offset == (100.0, 100.0, -90.0) + loc_other = loc_other.shifted_origin() - offset = loc_other.offset_from(loc) + offset = loc_other.offset_from(loc2) np.testing.assert_almost_equal(offset, (100.0, 100.0, -90.0), decimal=0) + + +def test_absolute_locations(): + degree_in_m = 111319.54315315 + + loc = Location(lat=0, lon=0) + loc_other = Location(lat=0, lon=1) + np.testing.assert_almost_equal(loc_other.offset_from(loc), (degree_in_m, 0, 0)) + + loc = Location(lat=0, lon=0, depth=0) + loc_other = Location(lat=0, lon=1, depth=100) + np.testing.assert_almost_equal(loc_other.offset_from(loc), (degree_in_m, 0, 100)) + + loc = Location(lat=0, lon=0) + loc_other = Location(lat=0, lon=1, east_shift=5 * KM) + np.testing.assert_almost_equal( + loc_other.offset_from(loc), (degree_in_m + 5 * KM, 0, 0) + ) + + loc = Location(lat=0, lon=0, east_shift=1 * KM) + loc_other = Location(lat=0, lon=1, east_shift=5 * KM) + np.testing.assert_almost_equal( + loc_other.offset_from(loc), (degree_in_m + 4 * KM, 0, 0) + ) + + loc = Location(lat=0, lon=0, east_shift=1 * KM) + loc_other = Location(lat=0, lon=1, east_shift=5 * KM, elevation=1 * KM) + np.testing.assert_almost_equal( + loc_other.offset_from(loc), (degree_in_m + 4 * KM, 0, -1 * KM) + ) + + loc = Location(lat=0, lon=0, east_shift=1 * KM, depth=0.5 * KM) + loc_other = Location(lat=0, lon=1, east_shift=5 * KM, elevation=1 * KM) + np.testing.assert_almost_equal( + loc_other.offset_from(loc), (degree_in_m + 4 * KM, 0, -1.5 * KM) + ) diff --git a/test/test_plot.py b/test/test_plot.py deleted file mode 100644 index 46d77fe9..00000000 --- a/test/test_plot.py +++ /dev/null @@ -1,45 +0,0 @@ -from __future__ import annotations - -from pathlib import Path -from typing import TYPE_CHECKING - -import numpy as np -import pytest -from matplotlib import pyplot as plt - -from lassie.models.detection import EventDetection -from lassie.plot.detections import plot_detections -from lassie.plot.octree import plot_octree_surface_tiles -from lassie.utils import datetime_now - -if TYPE_CHECKING: - from lassie.models.detection import EventDetections - from lassie.octree import Octree - - -@pytest.mark.plot -def test_octree_2d(octree: Octree) -> None: - semblance = np.random.uniform(size=octree.n_nodes) - octree.map_semblance(semblance) - plot_octree_surface_tiles(octree, filename=Path("/tmp/test.png")) - - detection = EventDetection( - lat=0.0, - lon=0.0, - east_shift=0.0, - north_shift=0.0, - distance_border=1000.0, - semblance=1.0, - time=datetime_now(), - ) - - fig = plt.figure() - ax = fig.gca() - - plot_octree_surface_tiles(octree, axes=ax, detections=[detection]) - plt.show() - - -@pytest.mark.plot -def test_detections_semblance(detections: EventDetections) -> None: - plot_detections(detections, axes=None)