GeophysicalModelGenerator.jl

GeophysicalModelGenerator.jl: A Julia package to visualise geoscientific data and create numerical model setups - Published in JOSS (2024)

https://github.com/juliageodynamics/geophysicalmodelgenerator.jl

Science Score: 100.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 7 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org, zenodo.org
  • Committers with academic emails
    6 of 19 committers (31.6%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords from Contributors

mesh
Last synced: 6 months ago · JSON representation ·

Repository

Import, process and interpret geophysical data sets to be used in numerical models.

Basic Info
  • Host: GitHub
  • Owner: JuliaGeodynamics
  • License: mit
  • Language: Julia
  • Default Branch: main
  • Homepage:
  • Size: 204 MB
Statistics
  • Stars: 83
  • Watchers: 8
  • Forks: 35
  • Open Issues: 19
  • Releases: 44
Created almost 5 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Security Authors

README.md

GeophysicalModelGenerator.jl GeophysicalModelGenerator.jl

Stable Dev Build Status codecov DOI DOI

GeophysicalModelGenerator.jl

Creating consistent 3D images of geophysical and geological datasets and turning that into an input model for geodynamic simulations is often challenging. The aim of this package is to help with this, by providing a number of routines to easily import data and create a consistent 3D visualisation from it in the VTK-toolkit format, which can for example be viewed with Paraview. In addition, we provide a range of tools that helps to generate input models to perform geodynamic simulations and import the results of such simulations back into julia.

A short summary of the package and its features are given below. For a detailed description of the package and to learn how to use it, have a look at the documentation.

README_img

Contents

Main features

Some of the key features are: - Create 3D volumes of seismic tomography models. - Handle 2D data (e.g., along a cross-section), including surfaces such as the Moho depth. - Plot data along lines (e.g., drillholes) or at points (e.g., earthquake locations, GPS velocities). - Handle both scalar and vector data sets. - Grab screenshots of cross-sections or maps in published papers and view them in 3D (together with other data). - Create a consistent overview that includes all available data of a certain region. - Create initial model setups for the 3D geodynamic code LaMEM. - Import LaMEM timesteps.

All data is transformed into either a GeoData or a UTMData structure which contains info about longitude/latitude/depth, ew/ns/depth coordinates along with an arbitrary number of scalar/vector datasets, respectively. All data can be exported to Paraview with the write_paraview routine, which transfers the data to a ParaviewData structure (that contains Cartesian Earth-Centered-Earth-Fixed (ECEF) x/y/z coordinates, used for plotting)

Usage

The best way to learn how to use this is to install the package (see below) and look at the tutorials in the manual.

Installation

First, you need to install julia on your machine. We recommend to use the binaries from https://julialang.org. Next, start julia and switch to the julia package manager using ], after which you can add the package. julia-repl julia> ] (@1.6) pkg> add GeophysicalModelGenerator You can test whether it works on your system with julia-repl julia> ] (@1.6) pkg> test GeophysicalModelGenerator and use it with julia-repl julia> using GeophysicalModelGenerator

Dependencies

We rely on a number of additional packages, which are all automatically installed. - GeoParams.jl Defines dimensional units, and makes it easy to convert for km/s to m/s, etc. - WriteVTK.jl writes VTK files (to be opened with Paraview). - ImageIO.jl, FileIO.jl, Colors.jl to import screenshots from papers. - Interpolations.jl for interpolations (for example related to importing screenshots).

Visualising Alpine data

We have used this package to interpret various data sets of the Alps (mostly openly available, sometimes derived from published papers). You can download the resulting paraview files here (using the *.vts format), where we also included the julia scripts to do the work (some of which are also described in more detail in the tutorials). Just unzip the files and open the corresponding *.vts in Paraview.

https://seafile.rlp.net/d/22b0fb85550240758552/

If you want your data be included here as well, give us an email (or even better: send the files with julia scripts).

Contributing

You are very welcome to request new features and point out bugs by opening an issue. You can also help by adding features and creating a pull request.

Citing

If you find this package useful, please cite this paper:

Kaus B.J.P., Thielmann M., Aellig P., De Montserrat A., De Siena L., Frasunkiewicz J., Fuchs L., Piccolo A., Ranocha H., Riel N., Schuler C., Spang A., Weiler T. (2024). GeophysicalModelGenerator.jl: A Julia package to visualise geoscientific data and create numerical model setups. Journal of Open Source Software. 9(102), 6763. https://doi.org/10.21105/joss.06763.

Funding

Development of this software package was funded by the German Research Foundation (DFG grants TH2076/7-1 and KA3367/10-1), which are part of the SPP 2017 4DMB project project, the DFG Emmy Noether grant TH 2076/8-1, by the European Research Council under grant ERC CoG #771143 - MAGMA and by the German Ministry of Science and Education (BMBF) as part of project DEGREE. The project was initiated at a Terrestrial Magmatic Systems - TeMaS workshop with researchers from Frankfurt and Mainz where we realized that it is way too time-consuming to collect and visualise available data of a certain region.

Owner

  • Name: JuliaGeodynamics
  • Login: JuliaGeodynamics
  • Kind: organization

Tools for the next generation computational geodynamics codes

JOSS Publication

GeophysicalModelGenerator.jl: A Julia package to visualise geoscientific data and create numerical model setups
Published
November 04, 2024
Volume 9, Issue 103, Page 6763
Authors
Boris J.p. Kaus ORCID
Johannes Gutenberg-University Mainz, Germany
Marcel Thielmann ORCID
University of Bayreuth, Germany
Pascal Aellig ORCID
Johannes Gutenberg-University Mainz, Germany
Albert de Montserrat ORCID
ETH Zürich, Switzerland
Luca de Siena ORCID
Alma Mater Studiorum Bologna University, Italy, Johannes Gutenberg-University Mainz, Germany
Jacob Frasukiewicz ORCID
Johannes Gutenberg-University Mainz, Germany
Lukas Fuchs ORCID
Goethe University Frankfurt, Germany
Andrea Piccolo ORCID
University of Bayreuth, Germany
Hendrik Ranocha ORCID
Johannes Gutenberg-University Mainz, Germany
Nicolas Riel ORCID
Johannes Gutenberg-University Mainz, Germany
Christian Schuler ORCID
Johannes Gutenberg-University Mainz, Germany
Arne Spang ORCID
University of Bayreuth, Germany
Tatjana Weiler ORCID
University of Bayreuth, Germany
Editor
Rachel Wegener ORCID
Tags
julia geosciences geodynamics tectonics geophysics computational geosciences

Citation (CITATION.cff)

cff-version: "1.2.0"
authors:
- family-names: Kaus
  given-names: Boris J. P.
  orcid: "https://orcid.org/0000-0002-0247-8660"
- family-names: Thielmann
  given-names: Marcel
  orcid: "https://orcid.org/0000-0003-1185-3730"
- family-names: Aellig
  given-names: Pascal
  orcid: "https://orcid.org/0009-0008-9039-5646"
- family-names: Montserrat
  given-names: Albert
  name-particle: de
  orcid: "https://orcid.org/0000-0003-1694-3735"
- family-names: Siena
  given-names: Luca
  name-particle: de
  orcid: "https://orcid.org/0000-0002-3615-5923"
- family-names: Frasukiewicz
  given-names: Jacob
  orcid: "https://orcid.org/0009-0002-5049-4259"
- family-names: Fuchs
  given-names: Lukas
  orcid: "https://orcid.org/0000-0002-9165-6384"
- family-names: Piccolo
  given-names: Andrea
  orcid: "https://orcid.org/0000-0003-3074-6041"
- family-names: Ranocha
  given-names: Hendrik
  orcid: "https://orcid.org/0000-0002-3456-2277"
- family-names: Riel
  given-names: Nicolas
  orcid: "https://orcid.org/0000-0002-5037-5519"
- family-names: Schuler
  given-names: Christian
  orcid: "https://orcid.org/0009-0004-9873-9774"
- family-names: Spang
  given-names: Arne
- family-names: Weiler
  given-names: Tatjana
doi: 10.5281/zenodo.13993948
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Kaus
    given-names: Boris J. P.
    orcid: "https://orcid.org/0000-0002-0247-8660"
  - family-names: Thielmann
    given-names: Marcel
    orcid: "https://orcid.org/0000-0003-1185-3730"
  - family-names: Aellig
    given-names: Pascal
    orcid: "https://orcid.org/0009-0008-9039-5646"
  - family-names: Montserrat
    given-names: Albert
    name-particle: de
    orcid: "https://orcid.org/0000-0003-1694-3735"
  - family-names: Siena
    given-names: Luca
    name-particle: de
    orcid: "https://orcid.org/0000-0002-3615-5923"
  - family-names: Frasukiewicz
    given-names: Jacob
    orcid: "https://orcid.org/0009-0002-5049-4259"
  - family-names: Fuchs
    given-names: Lukas
    orcid: "https://orcid.org/0000-0002-9165-6384"
  - family-names: Piccolo
    given-names: Andrea
    orcid: "https://orcid.org/0000-0003-3074-6041"
  - family-names: Ranocha
    given-names: Hendrik
    orcid: "https://orcid.org/0000-0002-3456-2277"
  - family-names: Riel
    given-names: Nicolas
    orcid: "https://orcid.org/0000-0002-5037-5519"
  - family-names: Schuler
    given-names: Christian
    orcid: "https://orcid.org/0009-0004-9873-9774"
  - family-names: Spang
    given-names: Arne
  - family-names: Weiler
    given-names: Tatjana
  date-published: 2024-11-04
  doi: 10.21105/joss.06763
  issn: 2475-9066
  issue: 103
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 6763
  title: "GeophysicalModelGenerator.jl: A Julia package to visualise
    geoscientific data and create numerical model setups"
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.06763"
  volume: 9
title: "GeophysicalModelGenerator.jl: A Julia package to visualise
  geoscientific data and create numerical model setups"

GitHub Events

Total
  • Create event: 24
  • Commit comment event: 7
  • Issues event: 5
  • Release event: 3
  • Watch event: 21
  • Delete event: 20
  • Issue comment event: 32
  • Push event: 89
  • Pull request review comment event: 64
  • Pull request review event: 55
  • Pull request event: 59
  • Fork event: 6
Last Year
  • Create event: 24
  • Commit comment event: 7
  • Issues event: 5
  • Release event: 3
  • Watch event: 21
  • Delete event: 20
  • Issue comment event: 32
  • Push event: 89
  • Pull request review comment event: 64
  • Pull request review event: 55
  • Pull request event: 59
  • Fork event: 6

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 1,123
  • Total Committers: 19
  • Avg Commits per committer: 59.105
  • Development Distribution Score (DDS): 0.361
Past Year
  • Commits: 143
  • Committers: 8
  • Avg Commits per committer: 17.875
  • Development Distribution Score (DDS): 0.497
Top Committers
Name Email Commits
Boris Kaus k****s@u****e 718
mthielma t****l@g****m 74
Pascal Aellig p****g@h****m 67
Marcel Thielmann M****n@u****e 51
Arne_Spang a****g@u****e 43
Albert de Montserrat a****t@g****m 32
Andrés David Bayona Ordóñez a****o@u****o 23
Luca De Siena l****0@g****m 21
ChristianSchuler c****r@t****e 19
TatjanaWeiler 1****r 18
LukasFuchs l****4@o****m 13
APiccolo89 8****9 13
dependabot[bot] 4****] 12
Hendrik Ranocha r****a 6
Jacob Frasunkiewicz j****k@h****m 6
Iddingsite h****u@u****e 3
NicolasRiel a****l@g****m 2
APiccolo89 p****o@u****e 1
RichardScottOZ R****t@o****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 28
  • Total pull requests: 172
  • Average time to close issues: 4 months
  • Average time to close pull requests: 16 days
  • Total issue authors: 16
  • Total pull request authors: 21
  • Average comments per issue: 4.46
  • Average comments per pull request: 0.82
  • Merged pull requests: 142
  • Bot issues: 0
  • Bot pull requests: 29
Past Year
  • Issues: 4
  • Pull requests: 62
  • Average time to close issues: about 11 hours
  • Average time to close pull requests: 16 days
  • Issue authors: 4
  • Pull request authors: 13
  • Average comments per issue: 0.5
  • Average comments per pull request: 0.66
  • Merged pull requests: 38
  • Bot issues: 0
  • Bot pull requests: 18
Top Authors
Issue Authors
  • boriskaus (6)
  • aelligp (3)
  • mthielma (3)
  • mreissuf (2)
  • NicolasRiel (2)
  • albert-de-montserrat (2)
  • LucaDeSiena (1)
  • peizenhofer (1)
  • TommyGiak (1)
  • amrelsharkawy (1)
  • mbensing (1)
  • pankajkmishra (1)
  • anowacki (1)
  • JuliaTagBot (1)
  • ew-beep (1)
Pull Request Authors
  • boriskaus (58)
  • aelligp (40)
  • dependabot[bot] (34)
  • albert-de-montserrat (27)
  • mthielma (25)
  • ranocha (9)
  • ArneSpang (8)
  • TatjanaWeiler (8)
  • APiccolo89 (7)
  • LucaDeSiena (6)
  • adbayonao (4)
  • github-actions[bot] (4)
  • jfrasunk (4)
  • NicolasRiel (4)
  • IskanderI (2)
Top Labels
Issue Labels
bug (2) enhancement (1) help wanted (1)
Pull Request Labels
dependencies (34) github_actions (4) enhancement (3) documentation (1)

Packages

  • Total packages: 1
  • Total downloads:
    • julia 37 total
  • Total dependent packages: 4
  • Total dependent repositories: 0
  • Total versions: 49
juliahub.com: GeophysicalModelGenerator

Import, process and interpret geophysical data sets to be used in numerical models.

  • Versions: 49
  • Dependent Packages: 4
  • Dependent Repositories: 0
  • Downloads: 37 Total
Rankings
Dependent repos count: 9.9%
Forks count: 10.4%
Average: 16.1%
Stargazers count: 20.9%
Dependent packages count: 23.0%
Last synced: 6 months ago

Dependencies

.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/blank.yml actions
  • actions/cache v1 composite
  • actions/checkout v2 composite
  • julia-actions/julia-buildpkg latest composite
  • julia-actions/julia-runtest latest composite
  • julia-actions/setup-julia v1 composite
.github/workflows/documentation.yml actions
  • actions/checkout v2 composite
  • julia-actions/setup-julia latest composite