https://github.com/ctlee/gamer

Geometry-preserving Adaptive Mesher

https://github.com/ctlee/gamer

Science Score: 33.0%

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

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    3 of 7 committers (42.9%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.1%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Geometry-preserving Adaptive Mesher

Basic Info
Statistics
  • Stars: 34
  • Watchers: 4
  • Forks: 12
  • Open Issues: 10
  • Releases: 10
Created over 8 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Contributing License

README.md

Geometry-preserving Adaptive MeshER

DOI PyPI Main Build Status Documentation Status

GAMer is a surface mesh improvement library developed to condition surface meshes derived from noisy biological imaging data. Using Tetgen, GAMer can generate tetrahedral meshes suitable for finite elements simulations of reaction-diffusion systems among others. GAMer has the following main features:

  • Surface mesh improvement and decimation algorithms
  • Boundary marking and other features
  • Estimation of surface curvatures
  • Generation of mesh surfaces around biological molecules

Technical Features:

  • Code is implemented in C++ and supports Python using a pybind11 wrapper (pygamer).
  • Cross system compilation using CMake and runs on Linux (64 bit), Windows (32 or 64 bit) or MacOS (64 bit).
  • Blender addon which enables easy access to GAMer features using the pygamer API.
  • Uses the Colored Abstract Simplicial Complex data (CASC structure as the flexible underlying representation of surface and tetrahedral meshes.
  • Code is hosted by GitHub under the Lesser GNU public license (LGPLv2). Please post issues or reports there.

Acknowledging your use of GAMer

Thanks for using GAMer! The developers would love to hear how you are using the tool. Please send us an email or post on GitHub letting us know.

Please cite the above Zenodo DOI to acknowledge the software version and cite the following papers:
Lee, C. T.; Laughlin, J. G.; Moody, J. B.; Amaro, R. E.; McCammon, J. A.; Holst, M.; Rangamani, P. An Open-Source Mesh Generation Platform for Biophysical Modeling Using Realistic Cellular Geometries. Biophysical Journal 2020, 118 (5), 1003–1008.

Lee, C. T.; Laughlin, J. G.; Beaumelle, N. A. de L.; Amaro, R. E.; McCammon, J. A.; Ramamoorthi, R.; Holst, M.; Rangamani, P. 3D Mesh Processing Using GAMer 2 to Enable Reaction-Diffusion Simulations in Realistic Cellular Geometries. PLOS Computational Biology 2020, 16 (4), e1007756.

Installation

The following instructions are to build the base GAMer library. If you wish to additionally compile the Blender GAMer addon, GAMer documentation, or other features please refer to the Additional Options section prior to building.

First, download a copy of the source from releases or clone the master branch.
bash git clone https://github.com/ctlee/gamer.git cd gamer

Linux and Mac: bash mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DGAMER_TESTS=on -DCMAKE_BUILD_TYPE=Release .. make

For Windows, we support building using Microsoft Visual Studio (MSVS) through the use of CMake generators: bash mkdir build64 cd build64 cmake -DBUILD_BLENDGAMER=TRUE -G "Visual Studio 15 2017 Win64" -A x64 .. cmake --build . --config Release

For a complete guide to installation, including configuration of PyGAMer and BlendGAMer please checkout the online installation documentation.

External libraries bundled/downloaded with/by GAMer

  • GAMer uses Tetgen to generate tetrahedralizations.

  • GAMer uses Eigen to compute eigenvalues/eigenvectors of the Local Structure Tensor.

  • GAMer uses casc as the underlying simplicial complex data structure.

  • GAMer uses GoogleTest to handle testing.

  • GAMer uses Pybind11

  • Mesh checks in the GAMer Blender addon are inspired or borrowed from 3D Print Toolbox by Campbell Barton and Meshalyzer from CellBlender.

  • Triangle is also bundled with GAMer but not currently used.

Development Build Status

Development Build Status Documentation Status

Owner

  • Name: Christopher Lee
  • Login: ctlee
  • Kind: user
  • Location: San Diego, CA
  • Company: University of California, San Diego

Postdoctoral Fellow working on computational biophysics in the Rangamani and Holst groups at UCSD.

GitHub Events

Total
  • Watch event: 2
  • Pull request event: 1
  • Fork event: 2
Last Year
  • Watch event: 2
  • Pull request event: 1
  • Fork event: 2

Committers

Last synced: over 3 years ago

All Time
  • Total Commits: 481
  • Total Committers: 7
  • Avg Commits per committer: 68.714
  • Development Distribution Score (DDS): 0.212
Top Committers
Name Email Commits
ctlee c****e@u****u 379
John B Moody b****n@g****m 86
Justin j****n@g****m 10
Mason Holst m****n@c****u 3
Michael Holst m****n@g****m 1
Christopher Lee c****e@c****e@c****u 1
Justin Laughlin j****n@u****l 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 36
  • Total pull requests: 31
  • Average time to close issues: 6 months
  • Average time to close pull requests: about 2 months
  • Total issue authors: 16
  • Total pull request authors: 6
  • Average comments per issue: 1.03
  • Average comments per pull request: 0.1
  • Merged pull requests: 26
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 1
  • Pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 1
Top Authors
Issue Authors
  • ctlee (14)
  • justinlaughlin (8)
  • jrsacher (1)
  • rmendelsohn2020 (1)
  • chang-github-00 (1)
  • MCKersting12 (1)
  • ljmartin (1)
  • dupaysjm (1)
  • quasiTriestino (1)
  • musicinmybrain (1)
  • torquil (1)
  • WeiliangChenOIST (1)
  • BJWiley233 (1)
  • TrystanMayfaire (1)
  • MartinAchondo (1)
Pull Request Authors
  • ctlee (23)
  • justinlaughlin (4)
  • dependabot[bot] (2)
  • ishantimalsina (1)
  • jrsacher (1)
  • pskepslilly (1)
Top Labels
Issue Labels
enhancement (7) bug (5) good first issue (1)
Pull Request Labels
dependencies (2) enhancement (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 282 last-month
  • Total dependent packages: 1
  • Total dependent repositories: 1
  • Total versions: 8
  • Total maintainers: 1
pypi.org: pygamer

PyGAMer: Geometry-preserving Adaptive Mesher

  • Versions: 8
  • Dependent Packages: 1
  • Dependent Repositories: 1
  • Downloads: 282 Last month
Rankings
Downloads: 9.5%
Dependent packages count: 10.0%
Forks count: 10.9%
Stargazers count: 11.6%
Average: 12.7%
Dependent repos count: 21.8%
Maintainers (1)
Last synced: 10 months ago

Dependencies

docs/rtd-requirements.txt pypi
  • breathe ==4.30.0
  • cmake *
  • docutils ==0.16
  • exhale ==0.2.3
  • jupyter_sphinx ==0.3.1
  • nbsphinx ==0.8.5
  • numpy *
  • pytest ==6.2.3
  • scikit-build *
  • sphinx ==4.0.2
  • sphinx-issues ==1.2.0
  • threevis *
requirements.txt pypi
  • breathe >=4.30.0
  • cmake >=3.10
  • exhale >=0.2.3
  • jupyter_sphinx *
  • nbsphinx *
  • ninja *
  • numpy *
  • pytest *
  • scikit-build *
  • sphinx >=3.0
  • sphinx-issues *
  • sphinx-rtd-theme *
  • threevis *
setup.py pypi
  • numpy >=1.8.0