hall-symbols: Symmetry operations generater of Hall Symbols

[ bsd3, chemistry, library ] [ Propose Tags ]

Please see the README on GitHub at https://github.com/narumij/hall-symbols#readme


[Skip to Readme]
Versions [faq] 0.1.0.2, 0.1.0.3, 0.1.0.4, 0.1.0.5, 0.1.0.6
Change log ChangeLog.md
Dependencies base (>1 && <1), doctest, matrix, parsec [details]
License BSD-3-Clause
Copyright Jun Narumi
Author Jun Narumi
Maintainer narumij@gmail.com
Revised Revision 3 made by narumij at 2020-07-22T06:56:46Z
Category Chemistry
Home page https://github.com/narumij/hall-symbols#readme
Bug tracker https://github.com/narumij/hall-symbols/issues
Source repo head: git clone https://github.com/narumij/hall-symbols
Uploaded by narumij at 2020-07-20T12:44:36Z
Distributions NixOS:0.1.0.6
Downloads 973 total (15 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2020-07-20 [all 1 reports]

Modules

[Index] [Quick Jump]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees


Readme for hall-symbols-0.1.0.4

[back to package description]

hall-symbols

Haskell Hall Symbols Library

Quickstart

Make new stack project and move to project directory.

% stack new hmRepl
% cd hmRepl

Edit extra-deps part of stack.yaml like below.

extra-deps:
- matrix-as-xyz-0.1.1.1
- symmetry-operations-symbols-0.0.1.2
- hall-symbols-0.1.0.4

Build project.

% stack build

Then start repl.

% stack repl

Setup packages and load modules.

repl> :set -package matrix-as-xyz
repl> :set -package symmetry-operations-symbols
repl> :set -package hall-symbols
repl> :m Data.Matrix.AsXYZ Data.Matrix.SymmetryOperationsSymbols Crystallography.HallSymbols

Use like below.

-- print General Positions.
repl> prettyXYZ <$> fromHallSymbols' "C -2yc"
 ["x,y,z","x+1/2,y+1/2,z","x,-y,z+1/2","x+1/2,-y+1/2,z+1/2"]

repl> fromHallSymbols' "C -2yc" >>= fromMatrix'
[" 1 "," c  x,0,z"," t (1/2,1/2,0) "," n (1/2,0,1/2) x,1/4,z"]

Or use like below.

-- print Generators
repl> prettyXYZ <$> generatorsOfHallSymbols "C -2yc"
["x,y,z","x+1/2,y+1/2,z","x,-y,z+1/2"]

repl> generatorsOfHallSymbols "C -2yc" >>= fromMatrix'
[" 1 "," t (1/2,1/2,0) "," c  x,0,z"]

References

  1. Concise Space-Group Symbols http://cci.lbl.gov/sginfo/hall_symbols.html , See also : https://github.com/rwgk/sginfo

  2. Space-Group Notation with an Explicit Origin S.R. Hall; Space-Group Notation with an Explicit Origin ; Acta Cryst. (1981). A37, 517-525

  3. ITVB 2001 Table A1.4.2.7 Hall symbols http://cci.lbl.gov/sginfo/itvb_2001_table_a1427_hall_symbols.html

License

See the LICENSE file in the repository.