wanniercli.jl

A collection of convenience scripts to ease the usage of Wannier.jl in command line.

https://github.com/qiaojunfeng/wanniercli.jl

Science Score: 44.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
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.8%) to scientific vocabulary

Keywords from Contributors

interactive packaging network-simulation hacking autograding embedded optim standardization projection generic
Last synced: 8 months ago · JSON representation ·

Repository

A collection of convenience scripts to ease the usage of Wannier.jl in command line.

Basic Info
  • Host: GitHub
  • Owner: qiaojunfeng
  • License: mit
  • Language: Julia
  • Default Branch: main
  • Size: 117 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 1
  • Releases: 0
Created about 2 years ago · Last pushed about 1 year ago
Metadata Files
Readme License Citation

README.md

WannierCLI

Stable Dev Build Status Coverage Code Style: Blue

Why do we need this package?

When using the code in practice, some times we want to quickly run a Wannierization or interpolation of band structure and save the results to a file, without the need of launching julia shell and typing boilerplate code, e.g., loading/saving files.

These kind of routine tasks are better done in a command line interface, to provide some pre-defined workflows, which can also help encode conventional wisdom of how to use the code, e.g., choosing proper kpoint grids for interpolating Fermi surface, etc.

This package installs a CLI command wjl in ~/.julia/bin, somewhat mimicking the behavior of the wannier90.x executable. However, the goal of this package is NOT to: - write general-enough CLI commands that can handle all the possible use cases - provide a compatible interface to wannier90.x that parses the win file and runs the code in the respective modes

But rather to provide: - some quick commands for the most common use cases - templates for users to quickly copy & modify to suit their needs

That is, if the user needs to do some complicated tasks, it is better to directly write them in a julia script to call the functions in Wannier.jl, rather than designing a complicated input file format, e.g., win file or any other formats, to control the behavior of the code--this is where julia's interactivity shines than a compiled language.

In addition, the separation of this package from the Wannier.jl also improves the developer experience of the Wannier.jl package, by reducing the compilation time as well as avoiding name clashes^1.

Installation

shell julia --project deps/build.jl

or

julia julia> ] # enter the package manager (@v1.10) pkg> add WannierCLI (@v1.10) pkg> build

[^1]: If the code of WannierCLI.jl were inside the Wannier.jl package, I had to use a different name for the CLI subcommands, because Comonicon.jl would possibly return wrong docstring when there are multiple functions having the same name, e.g., disentangle.

Owner

  • Name: Junfeng Qiao
  • Login: qiaojunfeng
  • Kind: user
  • Location: Switzerland
  • Company: EPFL

Citation (CITATION.bib)

@misc{WannierCLI.jl,
	author  = {Junfeng Qiao <qiaojunfeng@outlook.com> and contributors},
	title   = {WannierCLI.jl},
	url     = {https://github.com/qiaojunfeng/WannierCLI.jl},
	version = {v1.0.0-DEV},
	year    = {2024},
	month   = {1}
}

GitHub Events

Total
  • Push event: 3
  • Pull request event: 1
  • Create event: 1
Last Year
  • Push event: 3
  • Pull request event: 1
  • Create event: 1

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 23
  • Total Committers: 2
  • Avg Commits per committer: 11.5
  • Development Distribution Score (DDS): 0.13
Past Year
  • Commits: 10
  • Committers: 1
  • Avg Commits per committer: 10.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Junfeng Qiao q****g@o****m 20
dependabot[bot] 4****] 3

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 0
  • Total pull requests: 4
  • Average time to close issues: N/A
  • Average time to close pull requests: about 10 hours
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 4
Past Year
  • Issues: 0
  • Pull requests: 3
  • Average time to close issues: N/A
  • Average time to close pull requests: about 5 hours
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 3
Top Authors
Issue Authors
Pull Request Authors
  • dependabot[bot] (5)
Top Labels
Issue Labels
Pull Request Labels
dependencies (5)

Dependencies

.github/workflows/CI.yml actions
  • actions/checkout v4 composite
  • codecov/codecov-action v3 composite
  • julia-actions/cache v1 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-docdeploy 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/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite