Hoppa yfir í aðalefni

GrowClust3D.jl

GrowClust3D is a new-and-improved Julia implementation of GrowClust, a software package for the relative relocation of earthquake hypocenters. Just as in the original (Fortran90) implementation, GrowClust3D uses a clustering approach to relocate earthquake catalogs based on differential time data obtained (externally by the user) from waveform cross-correlation. The Julia release includes several new features that will likely be of interest to users, including:

  • The ability to relocate using travel time grids obtained from 3D models
  • The option to parallelize uncertainty quantification through multithreading or multiprocessing
  • The explicit use of map projections and station elevations during the relocation process
  • The removal of array size constraints, which are now determined on the fly
  • The refinement of several program defaults and definitions to improve algorithm robustness
  • And more yet to come!

Usage on Elja

To use GrowClust3D.jl on Elja, first execute the following commands:

[user@elja-irhpc ~]$ module use /hpcapps/lib-edda/modules/all/Core 
[user@elja-irhpc ~]$ module use /hpcapps/lib-geo/modules/all
[user@elja-irhpc ~]$ module load GrowClust3D.jl

The GrowClust3D script and the programming language Julia are now available in your $PATH. To run GrowClust3D on input files, you can run the following command:

[user@elja-irhpc ~]$ srun --partition gpu-2xA100 -n 1 --pty bash
[user@elja-irhpc ~]$ growclust /hpcapps/lib-edda/easybuild/software/GrowClust3D.jl/test/test.grid3D.inp
Athugið

For more information about srun and sbatch, please have a look at Submitting Slurm Jobs General usage on submitting a job

The growclust command is a small bash script that runs the GrowClust3D.jl file for you with any parameters you provide it:

[user@elja-irhpc ~]$ cat growclust
#!/bin/bash

julia -t1 /hpcapps/lib-edda/easybuild/software/GrowClust3D.jl/test/run_growclust3D.jl $@