Documentation for Crystallography.

See the Index for the complete list of documented functions and types.

The code, which is hosted on GitHub, is tested using various continuous integration services for its validity.

This repository is created and maintained by @singularitti, and contributions are highly welcome.

Package features


The package can be installed with the Julia package manager. From the Julia REPL, type ] to enter the Pkg mode and run:

pkg> add Crystallography

Or, equivalently, via Pkg.jl:

julia> import Pkg; Pkg.add("Crystallography")   Resolving package versions...
   Installed EnumX ─────────────── v1.0.4
   Installed Crystallography ───── v0.6.0
   Installed Functors ──────────── v0.4.5
   Installed CrystallographyBase ─ v0.10.1
    Updating `~/work/Crystallography.jl/Crystallography.jl/docs/Project.toml`
  [3bff3928] ~ Crystallography v0.6.0 `~/.julia/dev/Crystallography` ⇒ v0.6.0
⌅ [93b1d1cd] ↓ CrystallographyBase v0.11.0 ⇒ v0.10.1
    Updating `~/work/Crystallography.jl/Crystallography.jl/docs/Manifest.toml`
  [1b8a1bdb] - AnonymousEnums v0.1.1
  [a8cc5b0e] - Crayons v4.1.1
  [6007d9b0] - CrystalInfoFramework v0.6.0
  [3bff3928] ~ Crystallography v0.6.0 `~/.julia/dev/Crystallography` ⇒ v0.6.0
⌅ [93b1d1cd] ↓ CrystallographyBase v0.11.0 ⇒ v0.10.1
  [9a962f9c] - DataAPI v1.15.0
  [a93c6f00] - DataFrames v1.6.1
  [864edb3b] - DataStructures v0.18.15
  [e2d170a0] - DataValueInterfaces v1.0.0
  [4e289a0a] + EnumX v1.0.4
  [8fc22ac5] - FilePaths v0.8.3
  [48062228] - FilePathsBase v0.9.20
  [d9f16b24] + Functors v0.4.5
  [842dd82b] - InlineStrings v1.4.0
  [41ab1584] - InvertedIndices v1.3.0
  [82899510] - IteratorInterfaceExtensions v1.0.0
  [692b3bcd] - JLLWrappers v1.5.0
  [b964fa9f] - LaTeXStrings v1.3.0
  [d42ef402] - Lerche v0.5.4
  [1914dd2f] - MacroTools v0.5.10
  [e1d29d7a] - Missings v1.1.0
  [bac558e1] - OrderedCollections v1.6.2
  [2dfb63ee] - PooledArrays v1.4.2
  [08abe8d2] - PrettyTables v2.2.7
  [189a3867] - Reexport v1.2.2
  [ae029012] - Requires v1.3.0
  [91c51154] - SentinelArrays v1.4.0
  [a2af1166] - SortingAlgorithms v1.1.1
  [f761d5c5] - Spglib v0.8.0
  [892a3eda] - StringManipulation v0.3.0
  [3783bdb8] - TableTraits v1.0.1
  [bd369af6] - Tables v1.10.1
  [30578b45] - URIParser v0.4.1
  [a51ab1cf] - ICU_jll v69.1.0+0
  [1d63c593] - LLVMOpenMP_jll v15.0.4+0
  [76ed43ae] - SQLite_jll v3.42.0+0
  [6fcef0ae] - cif_api_jll v0.4.2+0
  [ac4a9f1e] - spglib_jll v2.0.2+0
  [0dad84c5] - ArgTools v1.1.1
  [f43a241f] - Downloads v1.6.0
  [7b1f6079] - FileWatching
  [9fa8497b] - Future
  [b27032c2] - LibCURL v0.6.3
  [44cfe95a] - Pkg v1.9.2
  [2f01184e] - SparseArrays
  [10745b16] - Statistics v1.9.0
  [a4e569a6] - Tar v1.10.0
  [deac9b47] - LibCURL_jll v7.84.0+0
  [29816b5a] - LibSSH2_jll v1.10.2+0
  [c8ffd9c3] - MbedTLS_jll v2.28.2+0
  [14a3606d] - MozillaCACerts_jll v2022.10.11
  [bea87d4a] - SuiteSparse_jll v5.10.1+6
  [83775a58] - Zlib_jll v1.2.13+0
  [8e850ede] - nghttp2_jll v1.48.0+0
  [3f19e933] - p7zip_jll v17.4.0+0
        Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`
Precompiling project...
  4 dependencies successfully precompiled in 6 seconds. 19 already precompiled.
  2 dependencies precompiled but different versions are currently loaded. Restart julia to access the new versions


  • STABLEdocumentation of the most recently tagged version.
  • DEVdocumentation of the in-development version.

Project status

The package is developed for and tested against Julia v1.6 and above on Linux, macOS, and Windows.

Questions and contributions

You can post usage questions on our discussion page.

We welcome contributions, feature requests, and suggestions. If you encounter any problems, please open an issue. The Contributing page has a few guidelines that should be followed when opening pull requests and contributing code.

Manual outline

Library outline