MyNixOS website logo
Description

Symmetry operations generater of Hall Symbols.

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

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.3
- symmetry-operations-symbols-0.0.1.2
- hall-symbols-0.1.0.6

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.

Metadata

Version

0.1.0.6

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows