cycless

Algorithms for cycles in a graph

https://github.com/vitroid/cycless

Science Score: 39.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
    Found 4 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (4.7%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Algorithms for cycles in a graph

Basic Info
  • Host: GitHub
  • Owner: vitroid
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 2.67 MB
Statistics
  • Stars: 6
  • Watchers: 2
  • Forks: 1
  • Open Issues: 1
  • Releases: 0
Created over 5 years ago · Last pushed over 1 year ago
Metadata Files
Readme Citation

README.md

cycless

A collection of algorithms to analyze a graph as a set of cycles.

Some codes come from https://github.com/vitroid/Polyhed and https://github.com/vitroid/countrings are integrated and improved.

Version 0.5

API

API manual is here.

cycles.py

A simple algorithm to enumerate all irreducible cycles of n-members and smaller in an undirected graph. [Matsumoto 2007]

```python import cycless.cycles as cy import networkx as nx

g = nx.cubical_graph()

for cycle in cy.cycles_iter(g, maxsize=6): print(cycle) ```

dicycles.py

An algorithm to enumerate the directed cycles of a size in a dircted graph. [Matsumoto 2021]

```python from genice2.genice import GenIce from genice2.plugin import Lattice, Format, Molecule import cycless.dicycles as dc

Generate an ice I structure as a directed graph

lattice = Lattice("1h") formatter = Format("raw", stage=(3,)) raw = GenIce(lattice, signature="ice 1h", rep=[2, 2, 2]).generate_ice(formatter)

for cycle in dc.dicycles_iter(raw["digraph"], size=6): print(cycle) ```

polyhed.py

An algorithm to enumerate the quasi-polyhedral hull made of cycles in an undirected graph. A quasi-polyhedral hull (vitrite) obeys the following conditions: [Matsumoto 2007]

  1. The surface of the hull is made of irreducible cycles.
  2. Two or three cycles shares a vertex of the hull.
  3. Two cycles shares an edge of the hull.
  4. Its Euler index (F-E+V) is two.

```python import cycless.cycles as cy import cycless.polyhed as ph import networkx as nx

g = nx.dodecahedral_graph()

cycles = [cycle for cycle in cy.cyclesiter(g, maxsize=6)] for polyhed in ph.polyhedraiter(cycles): print(polyhed) ```

simplex.py

Enumerate triangle, tetrahedral, and octahedral subgraphs found in the given graph.

References

  1. M. Matsumoto, A. Baba, and I. Ohmine, Topological building blocks of hydrogen bond network in water, J. Chem. Phys. 127, 134504 (2007). http://doi.org/10.1063/1.2772627
  2. Matsumoto, M., Yagasaki, T. & Tanaka, H. On the anomalous homogeneity of hydrogen-disordered ice and its origin. J. Chem. Phys. 155, 164502 (2021). https://doi.org/10.1063/5.0065215

Owner

  • Name: Masakazu Matsumoto
  • Login: vitroid
  • Kind: user
  • Location: Okayama, Japan
  • Company: Okayama University

Citation (CITATION.cff)


      

GitHub Events

Total
  • Issues event: 1
  • Watch event: 1
  • Push event: 8
  • Fork event: 1
Last Year
  • Issues event: 1
  • Watch event: 1
  • Push event: 8
  • Fork event: 1

Committers

Last synced: over 3 years ago

All Time
  • Total Commits: 13
  • Total Committers: 1
  • Avg Commits per committer: 13.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Masakazu Matsumoto v****d@g****m 13

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 2
  • Total pull requests: 0
  • Average time to close issues: about 1 hour
  • Average time to close pull requests: N/A
  • Total issue authors: 2
  • Total pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • abhigyanh (1)
  • vitroid (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 351 last-month
  • Total dependent packages: 3
  • Total dependent repositories: 5
  • Total versions: 13
  • Total maintainers: 1
pypi.org: cycless

A collection of algorithms for cycles in a graph.

  • Versions: 13
  • Dependent Packages: 3
  • Dependent Repositories: 5
  • Downloads: 351 Last month
Rankings
Dependent packages count: 3.2%
Dependent repos count: 6.6%
Average: 7.5%
Downloads: 12.7%
Maintainers (1)
Last synced: 11 months ago

Dependencies

setup.py pypi
  • methodtools *
  • networkx >=2.0.dev20160901144005
  • numpy *
  • wheel *
Pipfile pypi
  • cycless * develop
  • genice2 * develop
  • jinja2 * develop
  • jupyter * develop
  • mdanalysis * develop
  • networkx * develop
  • pairlist * develop
  • pdoc3 * develop
  • py3dmol * develop
  • toml * develop
  • twine * develop
  • networkx *
  • numpy *
pyproject.toml pypi