https://github.com/clima/rootsolvers.jl

A simple GPU-capable root solver package

https://github.com/clima/rootsolvers.jl

Science Score: 36.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
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    2 of 6 committers (33.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.9%) to scientific vocabulary

Keywords from Contributors

climate heterogeneous-parallel-programming julialang ida julia-package numeric fluid-dynamics data-assimilation dae programming-language
Last synced: 10 months ago · JSON representation

Repository

A simple GPU-capable root solver package

Basic Info
Statistics
  • Stars: 7
  • Watchers: 2
  • Forks: 2
  • Open Issues: 1
  • Releases: 11
Created over 6 years ago · Last pushed 11 months ago
Metadata Files
Readme License

README.md

RootSolvers.jl Logo

RootSolvers.jl

A high-performance root solver package with GPU support and broadcasting across abstract types

RootSolvers.jl provides robust, efficient numerical methods for finding roots of nonlinear equations. It supports broadcasting across abstract types including GPU arrays and custom field types, making it ideal for high-performance computing applications in climate modeling, machine learning, and scientific computing.

| | | |--------------------------:|:-------------------------------------------------------------------------| | Stable Release | stable docs-stable | | Latest Documentation | dev | | Unit Tests | unit tests codecov | | Downloads | Downloads |

Features

  • Multiple Root-Finding Methods: Secant, Regula Falsi, Brent's method, Newton's method with automatic differentiation
  • GPU Support: Full GPU acceleration with CUDA.jl and other GPU array types
  • Broadcasting: Allows broadcasting over distributed arrays and custom field types
  • Dual Number Support: Compatible with automatic differentiation frameworks, allowing integration into differentiable models
  • Flexible Convergence Criteria: Multiple tolerance types for different applications
  • High-Performance: Optimized for large-scale parallel processing

Quick Example

```julia using RootSolvers

Simple scalar root finding

sol = find_zero(x -> x^2 - 4, SecantMethod(0.0, 3.0))

Broadcasting over arrays

x0 = rand(100, 100) x1 = rand(100, 100) f(x) = x.^2 .- 2.0 sol = find_zero.(f, SecantMethod(x0, x1), CompactSolution()) ```

Owner

  • Name: Climate Modeling Alliance
  • Login: CliMA
  • Kind: organization
  • Email: clima@caltech.edu

An alliance of scientists, engineers and applied mathematicians, dedicated to pioneering a new, data-informed approach to climate modeling

GitHub Events

Total
  • Create event: 33
  • Commit comment event: 12
  • Release event: 3
  • Issues event: 13
  • Watch event: 1
  • Delete event: 17
  • Issue comment event: 24
  • Push event: 282
  • Pull request review comment event: 34
  • Pull request review event: 30
  • Pull request event: 25
  • Fork event: 1
Last Year
  • Create event: 33
  • Commit comment event: 12
  • Release event: 3
  • Issues event: 13
  • Watch event: 1
  • Delete event: 17
  • Issue comment event: 24
  • Push event: 282
  • Pull request review comment event: 34
  • Pull request review event: 30
  • Pull request event: 25
  • Fork event: 1

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 46
  • Total Committers: 6
  • Avg Commits per committer: 7.667
  • Development Distribution Score (DDS): 0.152
Past Year
  • Commits: 10
  • Committers: 1
  • Avg Commits per committer: 10.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Charles Kawczynski k****s@g****m 39
Jake Bolewski j****i@g****m 3
Akshay Sridhar a****r@c****u 1
Jeremy E Kozdon j****n@n****u 1
Ben Mackay j****y@g****m 1
github-actions[bot] 4****] 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 15
  • Total pull requests: 60
  • Average time to close issues: over 1 year
  • Average time to close pull requests: 16 days
  • Total issue authors: 7
  • Total pull request authors: 10
  • Average comments per issue: 4.07
  • Average comments per pull request: 3.0
  • Merged pull requests: 51
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 5
  • Pull requests: 18
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 9 days
  • Issue authors: 4
  • Pull request authors: 4
  • Average comments per issue: 0.4
  • Average comments per pull request: 0.39
  • Merged pull requests: 14
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • charleskawczynski (6)
  • jkozdon (2)
  • glwagner (2)
  • tapios (2)
  • haakon-e (1)
  • imreddyTeja (1)
  • JuliaTagBot (1)
Pull Request Authors
  • charleskawczynski (33)
  • haakon-e (8)
  • tapios (8)
  • jakebolewski (4)
  • jkozdon (2)
  • dennisYatunin (2)
  • imreddyTeja (2)
  • akshaysridhar (1)
  • github-actions[bot] (1)
  • jb-mackay (1)
Top Labels
Issue Labels
enhancement (5) documentation (2) help wanted (1)
Pull Request Labels
Launch Buildkite (12) Bug fix :bug::hammer: (3) enhancement (1) CI (1)

Packages

  • Total packages: 1
  • Total downloads:
    • julia 219 total
  • Total dependent packages: 9
  • Total dependent repositories: 0
  • Total versions: 16
juliahub.com: RootSolvers

A simple GPU-capable root solver package

  • Versions: 16
  • Dependent Packages: 9
  • Dependent Repositories: 0
  • Downloads: 219 Total
Rankings
Dependent packages count: 7.6%
Dependent repos count: 9.9%
Average: 29.0%
Forks count: 40.4%
Stargazers count: 58.1%
Last synced: 10 months ago

Dependencies

.github/workflows/CodeCov.yml actions
  • actions/checkout v2 composite
  • codecov/codecov-action v1 composite
  • julia-actions/setup-julia latest composite
.github/workflows/CompatHelper.yml actions
  • julia-actions/setup-julia latest composite
.github/workflows/Docs.yml actions
  • actions/checkout v2 composite
  • julia-actions/setup-julia latest composite
.github/workflows/Linux-UnitTests.yml actions
  • actions/cache v1 composite
  • actions/checkout v2.2.0 composite
  • julia-actions/setup-julia latest composite
  • styfle/cancel-workflow-action 0.4.0 composite
.github/workflows/OS-UnitTests.yml actions
  • actions/cache v1 composite
  • actions/checkout v2.2.0 composite
  • dorny/paths-filter v2 composite
  • julia-actions/setup-julia latest composite
  • styfle/cancel-workflow-action 0.4.0 composite
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite