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 (>=4.8 && <5), doctest, matrix, parsec [details]
License BSD-3-Clause
Copyright Jun Narumi
Author Jun Narumi
Maintainer narumij@gmail.com
Revised Revision 2 made by narumij at 2020-07-21T08:12:56Z
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-21T00:56:09Z
Distributions NixOS:0.1.0.6
Downloads 972 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-21 [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.5

[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

Edit dependencies part of package.yaml like below.

dependencies:
- base >= 4.7 && < 5
- matrix-as-xyz
- symmetry-operations-symbols
- hall-symbols

Then start repl.

% stack repl

Setup packages and load modules.

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.