Skip to main content

Library for thermal neutron transport in crystals and other materials.

Project description

NCrystal : A library for thermal neutron transport in crystals and other materials

PyPI - Version Conda Version Conda Platform

This is a source distribution of NCrystal, a library and associated tools which enables calculations for Monte Carlo simulations of thermal neutrons in crystals and other materials. Supported is a range of physics including both coherent, incoherent, elastic and inelastic scatterings in a wide range of materials, including crystal powders, mosaic single crystals, layered single crystals, amorphous solids, and liquids. Multiphase materials or isotopically enriched material are supported as well, and the framework furthermore supports phase-contrast (SANS) physics. Written in C++, interfaces and infrastructure facilitate integration into existing simulation frameworks such as OpenMC (https://docs.openmc.org/), Geant4 (https://geant4.web.cern.ch/) or McStas (http://mcstas.org/), as well as allowing direct usage from C++, C or Python code or via command-line tools. While the C++ library is designed with a high degree of flexibility in mind for developers, typical end-user configuration is deliberately kept simple and uniform across various applications and APIs - this for instance allows tuning and validation of a particular material configuration to be performed in one tool before it is then deployed in another.

In addition to code and tools, the NCrystal distribution also includes a set of validated data files, covering many crystals important at neutron scattering facilities. For more information about the properties and validity of each file, users are referred to the dedicated page at:

https://github.com/mctools/ncrystal/wiki/Data-library

Supporting compilation with all modern C++ standards (C++11 and later), the code has no third-party dependencies and is available under the highly liberal open source Apache 2.0 license (see NOTICE and LICENSE files for usage conditions and the INSTALL file for build and installation instructions). NCrystal was developed in close collaboration by Xiao Xiao Cai (DTU, ESS) and Thomas Kittelmann (ESS) and was supported in part by the European Union's Horizon 2020 research and innovation programme under grant agreement No 676548 (the BrightnESS project) and 951782 (the HighNESS project).

A very substantial effort went into developing NCrystal. If you use it for your work, we would appreciate it if you would use the following primary reference in your work:

X.-X. Cai and T. Kittelmann, NCrystal: A library for thermal neutron transport, Computer Physics Communications 246 (2020) 106851, https://doi.org/10.1016/j.cpc.2019.07.015

For work benefitting from elastic physics (e.g. Bragg diffraction), we furthermore request that you additionally also use the following reference in your work:

T. Kittelmann and X.-X. Cai, Elastic neutron scattering models for NCrystal, Computer Physics Communications 267 (2021) 108082, https://doi.org/10.1016/j.cpc.2021.108082

For work benefitting from our inelastic physics, we furthermore request that you additionally also use the following reference in your work:

X.-X. Cai, T. Kittelmann, et. al., "Rejection-based sampling of inelastic neutron scattering", Journal of Computational Physics 380 (2019) 400-407, https://doi.org/10.1016/j.jcp.2018.11.043

The rest of this file gives a brief overview of the manners in which NCrystal capabilities can be utilised. Further instructions and documentation, along with the latest version of NCrystal, can be found at https://mctools.github.io/ncrystal/

Using the NCrystal installation from the command-line

After installing NCrystal and having sourced the setup.sh script mentioned in the INSTALL file, you can run any of the commands from the $NCRYSTALDIR/bin directory, which includes example code as well as the "nctool" command. Start by reading the usage instructions:

$> nctool --help

Assuming you chose to install data files, you can try to let NCrystal load one of the data files found in $NCRYSTALDIR/data/ (or provide the absolute path to a data file downloaded from https://github.com/mctools/ncrystal/wiki/Data-library) and either dump the derived information to the terminal...:

$> nctool --dump 'Al_sg225.ncmat;temp=10C'

Note that this included a choice of temperature. If you leave it out, it will usually default to room temperature (20C). You can also plot (powder) cross-sections and sampled scatter angles with:

$> nctool 'Al_sg225.ncmat;temp=10C'

Using the NCrystal installation from C++, C or Python code

If you wish to use NCrystal from Python code, there is no special setup needed, assuming NCrystal was installed correctly (cf. INSTALL.md). If you on the other hand wish to use NCrystal from your compiled C++ or C code, you must put appropriate build flags. The recommended way is using CMake to do this (see next section), but otherwise you must ensure that the NCrystal header files are in your compiler's include path, and that the NCrystal library is linked correctly. Here are some examples of how this could for instance be done, with a C and a C++ app respectively:

export LDFLAGS="${LDFLAGS:-} -Wl,-rpath,$(ncrystal-config --show libdir) $(ncrystal-config --show libpath)"
export CFLAGS="${CFLAGS:-} -I$(ncrystal-config --show includedir)"
export CXXFLAGS="${CXXFLAGS:-} -I$(ncrystal-config --show includedir)"
cc -std=c11 ${LDFLAGS} ${CFLAGS} my_c_code.c -o my_c_app
c++ -std=c++17 ${LDFLAGS} ${CXXFLAGS} my_cpp_code.cpp -o my_cpp_app

Then, in your code you can access the relevant APIs with with statements like:

#include "NCrystal/NCrystal.hh"     // C++ code, core NCrystal
#include "NCrystal/ncrystal.h"      // C code
import NCrystal                     ## Python code

In the ./examples/ directory of your NCrystal distribution that you got after downloading and unpacking the NCrystal source tar-ball, you will find small examples of code using NCrystal. For C++/C, there is currently no documentation beyond the header files and examples. In the case of Python, there is integrated documentation available via the usual "help" function, accessed with:

import NCrystal
help(NCrystal)

There are also several jupyter-lab notebooks showcasing the NCrystal python API at https://github.com/mctools/ncrystal-notebooks

Configuring CMake-based projects to use NCrystal

Assuming NCrystal was built and installed via CMake, it is possible and recommended for client projects to simply use NCrystal as a CMake package in order to correctly build their C/C++ code which depends on the NCrystal C++ or C APIs.

Depending on where NCrystal was installed on the system, it might be necessary to let CMake know about it via the usual mechanisms (for instance passing -DNCrystal_DIR=/path/to/ncrystalinstall as an argument to cmake on the command line).

CMake code for a small project using NCrystal might look like the following (assume that exampleapp.cc below includes the NCrystal/NCrystal.hh header):

cmake_minimum_required(VERSION 3.10...3.26) project(MyExampleProject LANGUAGES CXX) execute_process( COMMAND "ncrystal-config" "--show" "cmakedir" OUTPUT_VARIABLE NCrystal_DIR OUTPUT_STRIP_TRAILING_WHITESPACE ) find_package(NCrystal 4.0.0 REQUIRED) add_executable(exampleapp "${PROJECT_SOURCE_DIR}/exampleapp.cc") target_link_libraries( exampleapp NCrystal::NCrystal ) install( TARGETS exampleapp DESTINATION bin )

Note that the "execute_process( ... )" command above is optional, but is required before the code can work in an environment where the NCrystal CMake modules are not automatically injected into the CMake package search path (this notably includes NCrystal installed via "pip install ncrystal").

Using the NCrystal with Geant4

The instructions for the NCrystal-Geant4 bindings are currently being updated. Once complete, they will appear on https://github.com/mctools/ncrystal-geant4

Using NCrystal with OpenMC

Using NCrystal materials in OpenMc is supported since OpenMC release 13.3, and uses a nice simple syntax in the Python API:

mat = openmc.Material.from_ncrystal('Polyethylene_CH2.ncmat;temp=50C')

which when used in a complete OpenMC project, results in the following material entry being added to the materials.xml produced:

<material cfg="Polyethylene_CH2.ncmat;temp=50C" id="1" temperature="323.15">
  <density units="g/cm3" value="0.92" />
  <nuclide ao="0.66656284" name="H1" />
  <nuclide ao="0.00010382666666666666" name="H2" />
  <nuclide ao="0.32964066666666664" name="C12" />
  <nuclide ao="0.003692666666666666" name="C13" />
</material>

Temperature, density and material composition were all created automatically from the cfg-string, and the cfg-string itself was also encoded. Upon launching the simulation with the OpenMC binary executable openmc, it will handle the material as usual, except that low-energy neutron scattering physics (currently defined as ($E<5eV$) will be provided by the algorithms in NCrystal.

A few issues might warrent attention:

  1. If you try to assemble the above xml manually, it is rather unlikely that you will get the base densities and compositions right. It is safest to stick to let the Python API compose the xml for you.
  2. After creation with mat=openmc.Material.from_ncrystal(..), you can not use the usual OpenMC API to modify the material density, temperature, or composition. So be sure to reflect the final desired material inside the NCrystal cfg-string.
  3. The OpenMC binaries must have been built with NCrystal support, or your job will fail once you launch the simulation (you can check for this by running the command openmc -v). Specifically (as documented on https://docs.openmc.org/en/stable/usersguide/install.html) you must supply the CMake flag cmake -DOPENMC_USE_NCRYSTAL=on .. (and make sure NCrystal is available already). Note: we have agreement from OpenMC developers to enable NCrystal support by default in the conda-forge version of OpenMC. So in "the near future" (summer/fall 2023) conda users will always have NCrystal support available in OpenMC.

For more information, please consult the user guide at:

In particular note the sections concerning installation and usage of NCrystal in the sections:

Using NCrystal with McStas

NOTE: The following discussion concerns the modern McStas 3 branch, and might in particular not be 100% accurate for releases earlier than McStas 3.3 (probably OK for v3.2 though).

You can use NCrystal in two ways in McStas. You can either use it for advanced studies with the McStas Union sub-system through the NCrystal_process component, or it can be used via the dedicated NCrystal_sample.comp which is simpler but less feature rich. In any case, the McStas instrument file compilation will need to build against NCrystal, and it uses the ncrystal-config command to figure out the correct settings for doing so. Thus, you can always invoke "ncrystal-config -s" to find out if you have the right NCrystal installation available and active. Depending on how you installed McStas, NCrystal is most likely already available. If not, you can try one of the following ways of enabling it:

$> conda install conda-forge::ncrystal [if you are in a conda-forge env]
$> python3 -mpip install ncrystal [for non-conda users]

It is beyond the scope for this README to provide a full documentation of McStas, or the Union sub-system, but if you are using McStasScript to compose your instruments, you can add NCrystal materials into your Union geometry using code like:

from mcstasscript.tools.ncrystal_union import add_ncrystal_union_material
add_ncrystal_union_material(instr, name="myAl", cfgstr="Al_sg225.ncmat;temp=10C")

This creates the material and gives it the name "myAl", which you must later attach to a particular Union volume, like for instance:

myvol.set_parameters(radius=0.01, yheight=0.01,
                     material_string='"myAl"', priority=1)

If you are instead hand-editing your instrument files, you can generate code which defines Union materials from an NCrystal cfg-string by invoking:

$> python3 -mNCrystal.mcstasutils --union myAl 'Al_sg225.ncmat;temp=250K'

It should be noted that McStas 3.3 also provides a new SHELL syntax which can also be used to faciliate this invocation from with a classic .instr file.

On the other hand, the dedicated NCrystal_sample.comp component, embeds NCrystal material simulations into simple shapes (currently boxes, cylinders and spheres), and can be used for components representing samples, filters or monochromators, entrance windows, etc. The component is since McStas v3.3 part of the McStas release itself, and can be used in a .instr file - for instance if you wish to set up an r=1cm sphere with powdered sapphire you would write:

COMPONENT mysample = NCrystal_sample(cfg="Al2O3_sg167_Corundum.ncmat",radius=0.01) AT (0, 0, 0) RELATIVE PREVIOUS

For more documentation about the NCrystal_sample component, run:

$> mcdoc NCrystal_sample

Or consult the documentation online at https://www.mcstas.org/download/components/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ncrystal_core-4.1.2.tar.gz (2.0 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ncrystal_core-4.1.2-py3-none-win_arm64.whl (2.7 MB view details)

Uploaded Python 3Windows ARM64

ncrystal_core-4.1.2-py3-none-win_amd64.whl (2.8 MB view details)

Uploaded Python 3Windows x86-64

ncrystal_core-4.1.2-py3-none-win32.whl (2.7 MB view details)

Uploaded Python 3Windows x86

ncrystal_core-4.1.2-py3-none-musllinux_1_2_x86_64.whl (3.9 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

ncrystal_core-4.1.2-py3-none-musllinux_1_2_i686.whl (4.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

ncrystal_core-4.1.2-py3-none-musllinux_1_2_aarch64.whl (3.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

ncrystal_core-4.1.2-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.9 MB view details)

Uploaded Python 3manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ncrystal_core-4.1.2-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

Uploaded Python 3manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

ncrystal_core-4.1.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

ncrystal_core-4.1.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (2.9 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

ncrystal_core-4.1.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

ncrystal_core-4.1.2-py3-none-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

ncrystal_core-4.1.2-py3-none-macosx_10_9_x86_64.whl (2.4 MB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

Details for the file ncrystal_core-4.1.2.tar.gz.

File metadata

  • Download URL: ncrystal_core-4.1.2.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for ncrystal_core-4.1.2.tar.gz
Algorithm Hash digest
SHA256 285ed561f8b0a0542106455e502998967613450299f7eccf92a28628e76f9400
MD5 6a4acb98e87a7b0008a837cd6d09c74c
BLAKE2b-256 1b57f5f3ba33633c0697398c64a20ff52d7c13355582f4096ef5a896ffd76cfc

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2.tar.gz:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-win_arm64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 5164fbc7adaf672c2bdadb9f57c144d65d7195e79bcad1aed204023156d0b4c2
MD5 8b63bcd687bd57385efc1073f91bbc7f
BLAKE2b-256 3d1d5023ec841104d41e71f15337100df25d355c751bd34dfb42ed9f97be04a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-win_arm64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 784abd381d6dfc061a698eb2177618cb537024d6341fa5a781cf240768a8a800
MD5 c6107e75183d664ed7133b6d4b4f1280
BLAKE2b-256 221757ab48ba7b40ff94f349d571458d67a6a49c17a196bc3b5599550adf7f09

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-win_amd64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-win32.whl.

File metadata

  • Download URL: ncrystal_core-4.1.2-py3-none-win32.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-win32.whl
Algorithm Hash digest
SHA256 6122142e9c33551e5d8a19d22055d9ba4b161cdffe7aeb3a299ff6911d4bf40f
MD5 b29df38e4a7014a3a7258d48291e698e
BLAKE2b-256 b0e32002ce2f269b65d83959e50236955e87884c0385761602790d22cebb97ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-win32.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 781cf5d4565963df09aea03b2a2f6c2ad10173aa9ebc252d16448884f1d2c66d
MD5 27727f26306eb519d2d625cf0e2ac4a0
BLAKE2b-256 80e8c85d38ade81f062c2fad1dc2c848a6b43a6e2a97a77c12fefa9291a89e5f

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-musllinux_1_2_x86_64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 13fd4482a137d300083b04fb9e8c36b9dd4339216ef650aa5b137f31868720db
MD5 63f318aa5acfb3e1447dfa0b7bda442e
BLAKE2b-256 1755c99d63940ca832476dd4c95d919b57679c3c0c930ea5d1369f614eb4d10b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-musllinux_1_2_i686.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6eaaa1f8e35d125be738a05677f23195d3d3d0c5942379cf1cb93362b4750c7a
MD5 ecad8d039c309bbc04847a3b61825bf4
BLAKE2b-256 8a76024e1e7d52bbeff3fdabb4858000758b347840561357af5427eba45f10d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-musllinux_1_2_aarch64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ecd9e4d7685ed7ae3765b2de9d0d2c20728b23e58be879d000419713634e59ff
MD5 bf7b7705498cb6323d00df394b618080
BLAKE2b-256 58ae06322bbebb9fbe7e23811114b165504fbedb26af971b055a7c7919c1cde4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 93aa7ba350a036b10e3f5893188be1c9a0063aaf61b56d185a337ace5b8687f3
MD5 3f80103bcafb1f6d590e25d3ed88939d
BLAKE2b-256 928716acd99f7c6814d0cb95ea9ba620452125244c112de1ef1aa6bc12a2bec9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dc74bf7b33f94d313e72a58b52bc43f303ed35c55bf8de8dc59eb58c048ca348
MD5 792cb3ab52b1de589cae718ea9c8126a
BLAKE2b-256 1332f2809a47f91072bfbe0bf23b8008725803572a525ceda47765ffa490468a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0a591a24f320f2b7bd9fc5eef73630bef033875bd3277008a29bdd14100d71a3
MD5 56e35ed4d0b24debefb324f3bd7b7eda
BLAKE2b-256 c942e100852124214b9c7e4bdd1ecbadbe550ad8f9b2147131c12a0685cdb633

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0a3e6dc0e735745576803e738af276dad1f4229dd9fd1fe5b0c4ce66a0f5dec3
MD5 ff90c0ff0fcd65cf2f8654e675919ce2
BLAKE2b-256 daf4f3f3ea6895f608bf3bf208ea1e5cc80ff6f4df5e2c330099dbd2e904bc58

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 00f7b6daf8854773cfc1b67e2ab52c9dd1524b535c74dfcaf63bdfe592c70d49
MD5 5eb5bfaa853d61ffe19160d4061ec770
BLAKE2b-256 8aeac284ab906d67b803e9f8dc408261a0660c8c4e899050320484c3d4bedfb0

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-macosx_11_0_arm64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncrystal_core-4.1.2-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ncrystal_core-4.1.2-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8659fff205da62c44bb6380109c61a6e8d8b80803d3dd701fa4cde9c3311087d
MD5 e15c3ba9f585a0c024279ae4dc6699cf
BLAKE2b-256 4d49203c5b26d4d1575412dd5a31279bcace5d6dd9ff3f68012c754b378eb402

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncrystal_core-4.1.2-py3-none-macosx_10_9_x86_64.whl:

Publisher: pypi.yml on mctools/ncrystal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page