https://github.com/celeritas-project/celerpy

Experimental python front end to Celeritas

https://github.com/celeritas-project/celerpy

Science Score: 13.0%

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

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.9%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Experimental python front end to Celeritas

Basic Info
  • Host: GitHub
  • Owner: celeritas-project
  • License: other
  • Language: Python
  • Default Branch: main
  • Size: 24.4 KB
Statistics
  • Stars: 0
  • Watchers: 8
  • Forks: 2
  • Open Issues: 2
  • Releases: 0
Created about 2 years ago · Last pushed about 1 year ago
Metadata Files
Readme License

README.md

Warning This repository is experimental and bare-bones at the moment. It's not ready for use, but discussions and contributions are welcome!

Celeritas Python interface

You can pronounce this package like "slurpee," or really any other way you want. This celerpy package will be the Python-based front end to the Celeritas binary codes and include a user-friendly execution interface, visualization components, and postprocessing utilities.

Development

Development is a little weird if you're not used to modern python projects, especially because python development and packaging evolves so quickly. To isolate the development environment, pyenv and pip install a toolchain locally.

Setting up

External dependencies (easily installed through Homebrew or another package manager): - pyenv, which will install its own python versions in an isolated environment

After cloning the repository, run make pre-commit to: - Install the development version of python specified in .python-version to your pyenv prefix (default: ~/.pyenv, configurable with the PYENV_ROOT variable) - Set up a virtual environment in .venv that will contain all the development dependencies, including a celerpy symlink in its environment that will point to your working copy - Install pre-commit hooks that use the tools just installed in your virtual environment.

Testing and committing

At this point you can modify the python code and run tests without having to reinstall the dependencies, and every git commit will run the tests automatically. (Use git commit --no-verify to disable.)

The makefile specifies a few useful targets: - style: apply style fixups to all the python files in development - test: run tests - pip: reinstall all the dependencies in your virtual environment - rebuild_dependencies: update the requirements file if you add a new dependency to pyproject.toml

You can also test independently once your virtual environment is set up. For example, to run a single python test function from a single python test, with the most verbose output and sending stdout/stderr to the console, run: console $ . .venv/bin/activate $ pytest -vv -s test/test_process.py -k test_context

Owner

  • Name: Celeritas Project
  • Login: celeritas-project
  • Kind: organization

A collaboration targeting exascale simulation of high energy particle physics for detector modeling.

GitHub Events

Total
  • Push event: 4
  • Pull request review event: 4
  • Pull request event: 3
Last Year
  • Push event: 4
  • Pull request review event: 4
  • Pull request event: 3

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 1
  • Total pull requests: 3
  • Average time to close issues: N/A
  • Average time to close pull requests: 4 days
  • Total issue authors: 1
  • Total pull request authors: 1
  • Average comments per issue: 1.0
  • Average comments per pull request: 2.33
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 3
  • Average time to close issues: N/A
  • Average time to close pull requests: 4 days
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 1.0
  • Average comments per pull request: 2.33
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • sethrj (1)
Pull Request Authors
  • sethrj (7)
Top Labels
Issue Labels
Pull Request Labels
enhancement (3)

Dependencies

pyproject.toml pypi
  • pydantic ~=2.0
  • pydantic-settings *
  • typer *
requirements-dev.txt pypi
  • annotated-types ==0.6.0 development
  • attrs ==23.2.0 development
  • boltons ==24.0.0 development
  • build ==1.2.1 development
  • click ==8.1.7 development
  • coverage ==7.5.0 development
  • dapperdata ==0.4.0 development
  • face ==20.1.1 development
  • glom ==23.5.0 development
  • iniconfig ==2.0.0 development
  • markdown-it-py ==3.0.0 development
  • mdurl ==0.1.2 development
  • mypy ==1.10.0 development
  • mypy-extensions ==1.0.0 development
  • packaging ==24.0 development
  • pluggy ==1.5.0 development
  • pydantic ==2.7.1 development
  • pydantic-core ==2.18.2 development
  • pydantic-settings ==2.2.1 development
  • pygments ==2.17.2 development
  • pyproject-hooks ==1.1.0 development
  • pytest ==8.2.0 development
  • pytest-cov ==5.0.0 development
  • pytest-pretty ==1.2.0 development
  • python-dotenv ==1.0.1 development
  • rich ==13.7.1 development
  • ruamel-yaml ==0.18.6 development
  • ruamel-yaml-clib ==0.2.8 development
  • ruff ==0.4.2 development
  • shellingham ==1.5.4 development
  • toml-sort ==0.23.1 development
  • tomlkit ==0.12.4 development
  • typer ==0.12.3 development
  • typing-extensions ==4.11.0 development
  • uv ==0.1.39 development
requirements.txt pypi
  • annotated-types ==0.6.0
  • click ==8.1.7
  • markdown-it-py ==3.0.0
  • mdurl ==0.1.2
  • pydantic ==2.7.1
  • pydantic-core ==2.18.2
  • pydantic-settings ==2.2.1
  • pygments ==2.17.2
  • python-dotenv ==1.0.1
  • rich ==13.7.1
  • shellingham ==1.5.4
  • typer ==0.12.3
  • typing-extensions ==4.11.0
.github/workflows/lockfiles.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • tedivm/action-python-lockfile-update v2 composite
.github/workflows/pull_request.yml actions
  • re-actors/alls-green release/v1 composite
.github/workflows/push.yml actions
.github/workflows/pypi.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/test.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite