diff --git a/404.html b/404.html index 96c190ff..05334d43 100644 --- a/404.html +++ b/404.html @@ -374,7 +374,7 @@ - Getting Started + Getting Started 🚀 @@ -460,7 +460,7 @@ - Configuration + The Search @@ -590,6 +590,26 @@ + + + + + +
  • + + + + + General Configuration + + + + +
  • + + + + diff --git a/components/configuration/index.html b/components/configuration/index.html index db846d26..74a176ec 100644 --- a/components/configuration/index.html +++ b/components/configuration/index.html @@ -24,7 +24,7 @@ - Configuration - Lassie - Earthquake Detector + The Search - Lassie - Earthquake Detector @@ -133,7 +133,7 @@
    - Configuration + The Search
    @@ -385,7 +385,7 @@ - Getting Started + Getting Started 🚀 @@ -482,7 +482,7 @@ - Configuration + The Search @@ -493,7 +493,7 @@ - Configuration + The Search @@ -515,29 +515,36 @@ - + +
  • + + Structure +
  • @@ -670,6 +677,26 @@ + + + + + +
  • + + + + + General Configuration + + + + +
  • + + + + @@ -704,29 +731,36 @@ - + +
  • + + Structure +
  • @@ -754,9 +788,205 @@

    Lassie Configuration

    -

    At center is a JSON configuration file which is parsed by Pydantic.

    -

    Example Config

    -

    See the following pages for more detailed information about the different building blocks of the config.

    +

    At center is a JSON configuration file which is parsed by Pydantic. The following pages will detail how to setup this JSON file for the search.

    +

    Also see the getting started guide for a brief introduction into the CLI.

    +

    General configuration conventions are outlines in this guide as well.

    + +

    The search configuration. This is the entrypoint for the EQ detection and localisation. +More information on the submodules (e.g. Octree, Data Provider and other) can be found on subpages in the navigation. +

    +

    Search Module

    +
    +
    +
    +
    +
    stations
    +
    +

    Station inventory from StationXML or Pyrocko Station YAML. Default is Stations.

    +
    +
    data_provider
    +
    +

    Data provider for waveform data. Default is PyrockoSquirrel.

    +
    +
    image_functions
    +
    +

    Image functions for waveform processing and phase on-set detection. Default is ImageFunctions.

    +
    +
    ray_tracers
    +
    +

    List of ray tracers for travel time calculation. Default is RayTracers.

    +
    +
    station_corrections
    +
    +

    Apply station corrections from a previous run. Default is None.

    +
    +
    sampling_rate
    +
    +

    Sampling rate for the image function. Choose from 10, 20, 25, 50, 100 Hz. Default is 100.

    +
    +
    detection_threshold
    +
    +

    Detection threshold for semblance. Default is 0.05.

    +
    +
    node_split_threshold
    +
    +

    Threshold for splitting octree nodes, relative to the maximum detected semblance. Default is 0.9.

    +
    +
    detection_blinding
    +
    +

    Blinding in seconds before and after the detection peak. Default is 0:00:02.

    +
    +
    window_length
    +
    +

    Window length for processing. Default is 5 minutes. Default is 0:05:00.

    +
    +
    n_threads_parstack
    +
    +

    Number of threads for stacking and migration. 0 uses all available cores. Default is 0.

    +
    +
    n_threads_argmax
    +
    +

    Number of threads for argmax. Default is 4. Default is 4.

    +
    +
    +
    +
    +
    JSON block for Search
    {
    +  "project_dir": ".",
    +  "stations": {
    +    "pyrocko_station_yamls": [],
    +    "station_xmls": [],
    +    "blacklist": [],
    +    "stations": []
    +  },
    +  "data_provider": {
    +    "provider": "PyrockoSquirrel",
    +    "environment": ".",
    +    "waveform_dirs": [],
    +    "start_time": null,
    +    "end_time": null,
    +    "highpass": null,
    +    "lowpass": null,
    +    "channel_selector": "*",
    +    "async_prefetch_batches": 4
    +  },
    +  "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",
    +      "window_overlap_samples": 2000,
    +      "torch_use_cuda": false,
    +      "torch_cpu_threads": 4,
    +      "batch_size": 64,
    +      "stack_method": "avg",
    +      "upscale_input": 1,
    +      "phase_map": {
    +        "P": "constant:P",
    +        "S": "constant:S"
    +      },
    +      "weights": {
    +        "P": 1.0,
    +        "S": 1.0
    +      }
    +    }
    +  ],
    +  "ray_tracers": [
    +    {
    +      "tracer": "ConstantVelocityTracer",
    +      "phase": "constant:P",
    +      "velocity": 5000.0
    +    },
    +    {
    +      "tracer": "CakeTracer",
    +      "phases": {
    +        "cake:P": {
    +          "definition": "P,p"
    +        },
    +        "cake:S": {
    +          "definition": "S,s"
    +        }
    +      },
    +      "earthmodel": {
    +        "filename": "/home/marius/.cache/lassie/velocity_models/default.nd",
    +        "format": "nd",
    +        "crust2_profile": "",
    +        "raw_file_data": "\n-1.00    5.50    3.59    2.7\n 0.00    5.50    3.59    2.7\n 1.00    5.50    3.59    2.7\n 1.00    6.00    3.92    2.7\n 4.00    6.00    3.92    2.7\n 4.00    6.20    4.05    2.7\n 8.00    6.20    4.05    2.7\n 8.00    6.30    4.12    2.7\n13.00    6.30    4.12    2.7\n13.00    6.40    4.18    2.7\n17.00    6.40    4.18    2.7\n17.00    6.50    4.25    2.7\n22.00    6.50    4.25    2.7\n22.00    6.60    4.31    2.7\n26.00    6.60    4.31    2.7\n26.00    6.80    4.44    2.7\n30.00    6.80    4.44    2.7\n30.00    8.10    5.29    2.7\n45.00    8.10    5.29    2.7\n"
    +      },
    +      "trim_earth_model_depth": true,
    +      "lut_cache_size": 2147483648
    +    },
    +    {
    +      "tracer": "FastMarchingRayTracer",
    +      "phase": "fm:P",
    +      "interpolation_method": "linear",
    +      "nthreads": 0,
    +      "lut_cache_size": 2147483648,
    +      "velocity_model": {
    +        "model": "Constant3DVelocityModel",
    +        "grid_spacing": "octree",
    +        "velocity": 5000.0
    +      }
    +    }
    +  ],
    +  "station_corrections": null,
    +  "event_features": [
    +    {
    +      "feature": "GroundMotion",
    +      "seconds_before": 3.0,
    +      "seconds_after": 8.0
    +    },
    +    {
    +      "feature": "LocalMagnitude",
    +      "seconds_before": 5.0,
    +      "seconds_after": 15.0,
    +      "estimator": {
    +        "name": "iaspei-southern-california"
    +      }
    +    }
    +  ],
    +  "sampling_rate": 100,
    +  "detection_threshold": 0.05,
    +  "node_split_threshold": 0.9,
    +  "detection_blinding": "PT2S",
    +  "image_mean_p": 1.0,
    +  "window_length": "PT300S",
    +  "n_threads_parstack": 0,
    +  "n_threads_argmax": 4,
    +  "plot_octree_surface": false,
    +  "created": "2023-10-31T13:57:41.770870Z"
    +}
    +
    +
    +
    +
    +

    +

    Minimal Config

    +

    This is a minimal config which can used to start a Lassie search.

    Minimal Lassie Config
    {
       "project_dir": ".",
       "stations": {
    @@ -822,11 +1052,47 @@ 

    Example Config

    "n_threads_argmax": 4, }
    -

    Paths

    -

    Paths can be relative to the location of the config file or absolute.

    -

    Date and Time

    -

    Serialisation of time, dates and date times and durations follow ISO8601 format with timezone information. E.g. 2023-10-28T01:21:21.003+00:00.

    -

    Duration are serialized like PD600S, this example shows 600 seconds - 10 minutes.

    +

    Structure

    +

    Structure of the search and optimisation of the octree, which is focusing in on seismic energy.

    +
    flowchart TD
    +
    +
    +subgraph Data Input
    +    waveforms(["Seismic Waveforms"])
    +    image["
    +        Phase Image Function
    +        PhaseNet, EQTransformer, ...
    +    "]
    +end
    +subgraph Migration
    +    quadtree["Quadtree"]
    +    travelTimes["
    +        Seismic Travel Time Model
    +        1D Raytracer, ...
    +    "]
    +end
    +subgraph Detection
    +    search["Stacking Image Functions"]
    +    detection["EQ Event Detection & Localisation"]
    +end
    +featureExtraction["
    +    Feature Extraction
    +    Local Magnitude, Ground Motion, ...
    +"]
    +stationCorrections["
    +    Traveltime residuals from Image
    +    → Station Corrections
    +"]
    +
    +waveforms --> image
    +image --> search
    +quadtree --> travelTimes
    +travelTimes -->search
    +detection -- Refine Quadtree --> search
    +search --> detection
    +detection --> featureExtraction
    +detection --> stationCorrections
    +

    Building blocks of the specific stacking and migration method for earthquake detection, localisation and characterisation.

    diff --git a/components/feature_extraction/index.html b/components/feature_extraction/index.html index 8a85087e..7c592aa0 100644 --- a/components/feature_extraction/index.html +++ b/components/feature_extraction/index.html @@ -16,6 +16,8 @@ + + @@ -378,7 +380,7 @@ - Getting Started + Getting Started 🚀 @@ -466,7 +468,7 @@ - Configuration + The Search @@ -604,6 +606,26 @@ + + + + + +
  • + + + + + General Configuration + + + + +
  • + + + + diff --git a/components/general/index.html b/components/general/index.html new file mode 100644 index 00000000..e260c067 --- /dev/null +++ b/components/general/index.html @@ -0,0 +1,900 @@ + + + + + + + + + + + + + + + + + + + + + + + + + General Configuration - Lassie - Earthquake Detector + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + + Skip to content + + +
    +
    + + + +
    + + + + +
    + + +
    + +
    + + + + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + + + + + + +

    General Settings

    +

    Paths

    +

    Paths can be relative to the location of the config file or absolute. File paths and directory paths are checked whether they exist.

    +

    Date and Time

    +

    Serialisation of time, dates and date times and durations follow ISO8601 format with timezone information. E.g. 2023-10-28T01:21:21.003+00:00.

    +

    Duration are serialized like PT600S, this example shows 600 seconds - 10 minutes.

    +
    Example of datetimes and durations
    {
    +    "start_time": "2023-10-28T01:21:21.003+00:00",
    +    "end_time": "2023-10-28T01:21:21.003+00:00",
    +    "duration": "PT600S"
    +}
    +
    +

    Locations

    +

    Geographic locations have a geographic reference and a relative shift in meters. The octree or velocity models are referenced using Location objects.

    +

    All distances, depths and elevations are given in meters. +

    +

    Location Module

    +
    +
    +
    +
    +
    lat
    +
    +

    Latitude in degrees. Default is PydanticUndefined.

    +
    +
    lon
    +
    +

    Longitude in degrees. Default is PydanticUndefined.

    +
    +
    east_shift
    +
    +

    East shift towards geographical reference in meters. Default is 0.0.

    +
    +
    north_shift
    +
    +

    North shift towards geographical reference in meters. Default is 0.0.

    +
    +
    elevation
    +
    +

    Elevation in meters. Default is 0.0.

    +
    +
    depth
    +
    +

    Depth in meters, positive is down. Default is 0.0.

    +
    +
    +
    +
    +
    JSON block for Location
    {
    +  "lat": 52.3825,
    +  "lon": 13.0644,
    +  "east_shift": 0.0,
    +  "north_shift": 0.0,
    +  "elevation": 0.0,
    +  "depth": 0.0
    +}
    +
    +
    +
    +
    +

    + + + + + + +
    +
    + + +
    + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/components/image_function/index.html b/components/image_function/index.html index 3a429883..9009e54f 100644 --- a/components/image_function/index.html +++ b/components/image_function/index.html @@ -385,7 +385,7 @@ - Getting Started + Getting Started 🚀 @@ -473,7 +473,7 @@ - Configuration + The Search @@ -583,7 +583,7 @@ @@ -705,7 +725,7 @@