HOHQMesh

HOHQMesh.jl is a Julia wrapper for the HOHQMesh mesh generator, which allows to produce curved quadrilateral and hexahedral meshes for high-order numerical simulations.

https://github.com/trixi-framework/hohqmesh.jl

Science Score: 67.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 5 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.9%) to scientific vocabulary

Keywords

geometry high-order-methods mesh-generation

Keywords from Contributors

fem finite-elements parallel-computing mesh parallel multiphysics smoothed-particle-hydrodynamics julialang sequences julia-package
Last synced: 6 months ago · JSON representation ·

Repository

HOHQMesh.jl is a Julia wrapper for the HOHQMesh mesh generator, which allows to produce curved quadrilateral and hexahedral meshes for high-order numerical simulations.

Basic Info
Statistics
  • Stars: 37
  • Watchers: 5
  • Forks: 9
  • Open Issues: 2
  • Releases: 11
Topics
geometry high-order-methods mesh-generation
Created almost 5 years ago · Last pushed 8 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Security Authors Zenodo

README.md

HOHQMesh.jl

Docs-stable Docs-dev Build Status Coveralls License: MIT DOI

This package is a Julia frontend to the Fortran-based High Order Hex-Quad Mesher (a.k.a. HOHQMesh) created and developed by David A. Kopriva. It augments HOHQMesh with interactive functionality that gives a user the ability to create, visualize, and generate high-order meshes. It further allows one to seamlessly integrate meshes generated by HOHQMesh into a Julia-based simulation workflow. For example, running a simulation on an unstructured quadrilateral mesh with Trixi.jl. HOHQMesh.jl is available on Linux, MacOS, and Windows.

Installation

If you have not yet installed Julia, please follow the instructions for your operating system. HOHQMesh.jl works with Julia v1.6 and above.

HOHQMesh.jl is a registered Julia package. Hence, you can install it by executing the following commands in the Julia REPL: julia julia> import Pkg; Pkg.add("HOHQMesh") HOHQMesh.jl depends on the binary distribution of the HOHQMesh mesh generator, which is available via the Julia package HOHQMesh_jll.jl and which is automatically installed as a dependency.

Usage

In the Julia REPL, you can load HOHQMesh with julia julia> using HOHQMesh and then happily generate away!

Two 2D examples GingerbreadMan and NACA0012 and a 3D example Snake (all from HOHQMesh itself) come delivered with this package. You can generate a mesh for them by executing ```julia julia> controlfile = joinpath(HOHQMesh.examplesdir(), "GingerbreadMan.control")

julia> output = generatemesh(controlfile) `` You will then find the resulting output files (mesh, plot file, statistics) in the designated output directory, which defaults toout. The GingerbreadMan.control` file will yield the following mesh,

gingerbreadman_with_edges_400px

while the 3D file Snake.control produces this mesh:

snake_400px

Examples scripts of interactive mesh generation tools are available in the examples/ subdirectory. These example scripts are prefaced with the phrase interactive_. There is a brief summary at the top of each interactive example script that describes the mesh it will create and the features of HOHQMesh it uses. An example script can be executed from a Julia REPL session with an include(...) statement, e.g., julia julia> include(joinpath(HOHQMesh.examples_dir(), "interactive_outer_box_two_circles.jl")) The resulting output mesh and plot files are saved in the output directory out as designated in the example script. Mesh statistics are printed to the screen.

The interactive functionality uses Makie.jl to visualize the boundary curves and mesh from the interactive tool. A Makie backend, such as GLMakie, can be loaded in addition to HOHQMesh julia julia> using Pkg; Pkg.add("GLMakie") julia> using GLMakie Now, running the example script produces a figure in addition to the mesh and plot files that are saved and the output of mesh statistics to the screen.

box_two_circles

Further explanation of the interactive functionality can be found here. Additional examples are available in the Tutorials.

Referencing

If you use HOHQMesh.jl in your own research, please cite the following article: bibtex @article{kopriva2024hohqmesh:joss, title={{HOHQM}esh: An All Quadrilateral/Hexahedral Unstructured Mesh Generator for High Order Elements}, author={David A. Kopriva and Andrew R. Winters and Michael Schlottke-Lakemper and Joseph A. Schoonover and Hendrik Ranocha}, year={2024}, journal={Journal of Open Source Software}, doi={10.21105/joss.07476}, volume = {9}, number = {104}, pages = {7476}, publisher = {The Open Journal} } In addition, you can also directly refer to this repository as bibtex @misc{kopriva2024hohqmeshjl, title={{HOHQM}esh.jl: A Julia frontend to the Fortran-based HOHQMesh mesh generator for high order elements}, author={Kopriva, David A and Winters, Andrew R and Schlottke-Lakemper, Michael and Ranocha, Hendrik}, year={2024}, howpublished={\url{https://github.com/trixi-framework/HOHQMesh.jl}}, doi={10.5281/zenodo.13959071} }

Authors

HOHQMesh.jl is maintained by the Trixi.jl authors. Its principal developers are Andrew Winters (Linköping University, Sweden) and David A. Kopriva. The HOHQMesh mesh generator itself is developed by David A. Kopriva.

License and contributing

HOHQMesh.jl is licensed under the MIT license (see LICENSE.md). HOHQMesh itself is also available under the MIT license. Since HOHQMesh is an open-source project, we are very happy to accept contributions from the community. Please refer to CONTRIBUTING.md for more details. To get in touch with the developers, join us on Slack or create an issue.

Acknowledgements

The authors would like to thank David A. Kopriva for making the sources of HOHQMesh available as open source, and for assisting with making it work with Julia.

Owner

  • Name: Trixi.jl
  • Login: trixi-framework
  • Kind: organization

Adaptive high-order numerical simulations of hyperbolic PDEs in Julia

Citation (CITATION.cff)

cff-version: "1.2.0"
authors:
- family-names: Kopriva
  given-names: David A.
  orcid: "https://orcid.org/0000-0002-8076-0856"
- family-names: Winters
  given-names: Andrew R.
  orcid: "https://orcid.org/0000-0002-5902-1522"
- family-names: Schlottke-Lakemper
  given-names: Michael
  orcid: "https://orcid.org/0000-0002-3195-2536"
- family-names: Schoonover
  given-names: Joseph A.
  orcid: "https://orcid.org/0000-0001-5650-7095"
- family-names: Ranocha
  given-names: Hendrik
  orcid: "https://orcid.org/0000-0002-3456-2277"
contact:
- family-names: Winters
  given-names: Andrew R.
  orcid: "https://orcid.org/0000-0002-5902-1522"
doi: 10.5281/zenodo.14342391
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Kopriva
    given-names: David A.
    orcid: "https://orcid.org/0000-0002-8076-0856"
  - family-names: Winters
    given-names: Andrew R.
    orcid: "https://orcid.org/0000-0002-5902-1522"
  - family-names: Schlottke-Lakemper
    given-names: Michael
    orcid: "https://orcid.org/0000-0002-3195-2536"
  - family-names: Schoonover
    given-names: Joseph A.
    orcid: "https://orcid.org/0000-0001-5650-7095"
  - family-names: Ranocha
    given-names: Hendrik
    orcid: "https://orcid.org/0000-0002-3456-2277"
  date-published: 2024-12-11
  doi: 10.21105/joss.07476
  issn: 2475-9066
  issue: 104
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 7476
  title: "HOHQMesh: An All Quadrilateral/Hexahedral Unstructured Mesh
    Generator for High Order Elements"
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.07476"
  volume: 9
title: "HOHQMesh: An All Quadrilateral/Hexahedral Unstructured Mesh
  Generator for High Order Elements"

GitHub Events

Total
  • Create event: 16
  • Commit comment event: 4
  • Issues event: 3
  • Release event: 3
  • Watch event: 2
  • Delete event: 13
  • Issue comment event: 27
  • Push event: 68
  • Pull request review comment event: 13
  • Pull request review event: 20
  • Pull request event: 28
  • Fork event: 1
Last Year
  • Create event: 16
  • Commit comment event: 4
  • Issues event: 3
  • Release event: 3
  • Watch event: 2
  • Delete event: 13
  • Issue comment event: 27
  • Push event: 68
  • Pull request review comment event: 13
  • Pull request review event: 20
  • Pull request event: 28
  • Fork event: 1

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 100
  • Total Committers: 8
  • Avg Commits per committer: 12.5
  • Development Distribution Score (DDS): 0.64
Past Year
  • Commits: 35
  • Committers: 6
  • Avg Commits per committer: 5.833
  • Development Distribution Score (DDS): 0.6
Top Committers
Name Email Commits
Andrew Winters a****s@l****e 36
dependabot[bot] 4****] 27
Michael Schlottke-Lakemper m****l@s****m 21
Hendrik Ranocha r****a 11
Arpit Babbar a****r@g****m 2
James Cook c****s@g****m 1
DavidAKopriva 8****a 1
Daniel Doehring d****2@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 10
  • Total pull requests: 75
  • Average time to close issues: 4 months
  • Average time to close pull requests: 6 days
  • Total issue authors: 6
  • Total pull request authors: 9
  • Average comments per issue: 2.9
  • Average comments per pull request: 2.61
  • Merged pull requests: 70
  • Bot issues: 0
  • Bot pull requests: 39
Past Year
  • Issues: 2
  • Pull requests: 24
  • Average time to close issues: 8 days
  • Average time to close pull requests: 1 day
  • Issue authors: 2
  • Pull request authors: 6
  • Average comments per issue: 1.0
  • Average comments per pull request: 1.46
  • Merged pull requests: 21
  • Bot issues: 0
  • Bot pull requests: 18
Top Authors
Issue Authors
  • sloede (4)
  • andrewwinters5000 (2)
  • JoshuaLampert (1)
  • jman87 (1)
  • JuliaTagBot (1)
  • jlchan (1)
Pull Request Authors
  • dependabot[bot] (48)
  • andrewwinters5000 (20)
  • ranocha (14)
  • sloede (8)
  • Arpit-Babbar (4)
  • github-actions[bot] (2)
  • jwscook (2)
  • DavidAKopriva (2)
  • DanielDoehring (1)
Top Labels
Issue Labels
documentation (1)
Pull Request Labels
dependencies (48) github_actions (7)

Packages

  • Total packages: 1
  • Total downloads:
    • julia 15 total
  • Total dependent packages: 1
  • Total dependent repositories: 0
  • Total versions: 12
juliahub.com: HOHQMesh

HOHQMesh.jl is a Julia wrapper for the HOHQMesh mesh generator, which allows to produce curved quadrilateral and hexahedral meshes for high-order numerical simulations.

  • Versions: 12
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 15 Total
Rankings
Dependent repos count: 9.9%
Stargazers count: 24.1%
Average: 24.4%
Forks count: 24.5%
Dependent packages count: 38.9%
Last synced: 6 months ago

Dependencies

.github/workflows/DocPreviewCleanup.yml actions
  • actions/checkout v2 composite
.github/workflows/Documenter.yml actions
  • actions/checkout v2 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/setup-julia latest composite
.github/workflows/Invalidations.yml actions
  • actions/checkout v3 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-invalidations v1 composite
  • julia-actions/setup-julia v1 composite
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/ci.yml actions
  • actions/checkout v3 composite
  • codecov/codecov-action v3 composite
  • coverallsapp/github-action master composite
  • julia-actions/cache v1 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-processcoverage v1 composite
  • julia-actions/julia-runtest v1 composite
  • julia-actions/setup-julia v1 composite
.github/workflows/CompatHelper.yml actions
.github/workflows/SpellCheck.yml actions
  • actions/checkout v4 composite
  • crate-ci/typos v1.16.26 composite