ncrystal-python 3.9.86__tar.gz → 3.9.88__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ncrystal_python-3.9.86/ncrystal_python.egg-info → ncrystal_python-3.9.88}/PKG-INFO +31 -36
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88}/README.md +30 -35
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/__init__.py +3 -3
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/__main__.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_chooks.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_cif2ncmat.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_endf2ncmat.py +2 -2
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_hfg2ncmat.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_mcstasunion.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_ncmat2cpp.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_ncmat2hkl.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_nctool.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_vdos2ncmat.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cli_verifyatompos.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cliimpl.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_cliwrap_config.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_common.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_coreimpl.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_hfgdata.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_hklobjects.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_locatelib.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_miscimpl.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_mmc.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_msg.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_ncmat2cpp_impl.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_ncmatimpl.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_numpy.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_testimpl.py +2 -2
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/api.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/atomdata.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/cfgstr.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/cifutils.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/cli.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/constants.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/core.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/datasrc.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/exceptions.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/hfg2ncmat.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/mcstasutils.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/misc.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/mmc.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/ncmat.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/ncmat2cpp.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/obsolete.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/plot.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/plugins.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/test.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/vdos.py +1 -1
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src/ncrystal_python.egg-info}/PKG-INFO +31 -36
- ncrystal_python-3.9.88/src/ncrystal_python.egg-info/SOURCES.txt +56 -0
- ncrystal_python-3.9.86/ncrystal_python.egg-info/SOURCES.txt +0 -56
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88}/LICENSE +0 -0
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88}/pyproject.toml +0 -0
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88}/setup.cfg +0 -0
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/NCrystal/_is_std.py +0 -0
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/ncrystal_python.egg-info/dependency_links.txt +0 -0
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/ncrystal_python.egg-info/entry_points.txt +0 -0
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/ncrystal_python.egg-info/requires.txt +0 -0
- {ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/ncrystal_python.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: ncrystal-python
|
|
3
|
-
Version: 3.9.
|
|
3
|
+
Version: 3.9.88
|
|
4
4
|
Summary: Library for thermal neutron transport in crystals and other materials.
|
|
5
5
|
Author: NCrystal developers (Thomas Kittelmann, Xiao Xiao Cai)
|
|
6
6
|
License: The Apache 2.0 license is reproduced in the following. See the NOTICE file for
|
|
@@ -236,8 +236,8 @@ facilitate integration into existing simulation frameworks such as OpenMC
|
|
|
236
236
|
code or via command-line tools. While the C++ library is designed with a high
|
|
237
237
|
degree of flexibility in mind for developers, typical end-user configuration is
|
|
238
238
|
deliberately kept simple and uniform across various applications and APIs - this
|
|
239
|
-
for instance allows tuning and validation of a particular
|
|
240
|
-
performed in one tool before it is then deployed in another.
|
|
239
|
+
for instance allows tuning and validation of a particular material configuration
|
|
240
|
+
to be performed in one tool before it is then deployed in another.
|
|
241
241
|
|
|
242
242
|
In addition to code and tools, the NCrystal distribution also includes a set of
|
|
243
243
|
validated data files, covering many crystals important at neutron scattering
|
|
@@ -309,16 +309,17 @@ $> nctool 'Al_sg225.ncmat;temp=10C'
|
|
|
309
309
|
|
|
310
310
|
|
|
311
311
|
|
|
312
|
-
Using the NCrystal installation from C
|
|
312
|
+
Using the NCrystal installation from C++, C or Python code
|
|
313
313
|
-----------------------------------------------------------------------------
|
|
314
314
|
|
|
315
|
-
If you wish to use NCrystal from Python code, there is no special setup
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
315
|
+
If you wish to use NCrystal from Python code, there is no special setup needed,
|
|
316
|
+
assuming NCrystal was installed correctly (cf. INSTALL.md). If you on the other
|
|
317
|
+
hand wish to use NCrystal from your compiled C++ or C code, you must put
|
|
318
|
+
appropriate build flags. The recommended way is using CMake to do this (see next
|
|
319
|
+
section), but otherwise you must ensure that the NCrystal header files are in
|
|
320
|
+
your compiler's include path, and that the NCrystal library is linked
|
|
321
|
+
correctly. Here are some examples of how this could for instance be done, with a
|
|
322
|
+
C and a C++ app respectively:
|
|
322
323
|
|
|
323
324
|
export LDFLAGS="${LDFLAGS:-} -Wl,-rpath,$(ncrystal-config --show libdir) $(ncrystal-config --show libpath)"
|
|
324
325
|
export CFLAGS="${CFLAGS:-} -I$(ncrystal-config --show includedir)"
|
|
@@ -326,22 +327,17 @@ done, with a C and a C++ app respectively:
|
|
|
326
327
|
cc -std=c11 ${LDFLAGS} ${CFLAGS} my_c_code.c -o my_c_app
|
|
327
328
|
c++ -std=c++17 ${LDFLAGS} ${CXXFLAGS} my_cpp_code.cpp -o my_cpp_app
|
|
328
329
|
|
|
329
|
-
If using the NCrystal-Geant4 interfaces, you should also add "-lG4NCrystal" to
|
|
330
|
-
the link flags.
|
|
331
|
-
|
|
332
330
|
Then, in your code you can access the relevant APIs with with statements like:
|
|
333
331
|
|
|
334
332
|
#include "NCrystal/NCrystal.hh" // C++ code, core NCrystal
|
|
335
|
-
#include "G4NCrystal/G4NCrystal.hh" // C++ code, for Geant4 users
|
|
336
333
|
#include "NCrystal/ncrystal.h" // C code
|
|
337
334
|
import NCrystal ## Python code
|
|
338
335
|
|
|
339
336
|
In the ./examples/ directory of your NCrystal distribution that you got after
|
|
340
337
|
downloading and unpacking the NCrystal source tar-ball, you will find small
|
|
341
|
-
examples of code using NCrystal. For C++/C
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
with:
|
|
338
|
+
examples of code using NCrystal. For C++/C, there is currently no documentation
|
|
339
|
+
beyond the header files and examples. In the case of Python, there is integrated
|
|
340
|
+
documentation available via the usual "help" function, accessed with:
|
|
345
341
|
|
|
346
342
|
import NCrystal
|
|
347
343
|
help(NCrystal)
|
|
@@ -369,10 +365,10 @@ CMake code for a small project using NCrystal might look like the following
|
|
|
369
365
|
|
|
370
366
|
cmake_minimum_required(VERSION 3.10...3.26)
|
|
371
367
|
project(MyExampleProject LANGUAGES CXX)
|
|
372
|
-
execute_process( COMMAND ncrystal-config --show cmakedir
|
|
368
|
+
execute_process( COMMAND "ncrystal-config" "--show" "cmakedir"
|
|
373
369
|
OUTPUT_VARIABLE NCrystal_DIR
|
|
374
370
|
OUTPUT_STRIP_TRAILING_WHITESPACE )
|
|
375
|
-
find_package(NCrystal REQUIRED)
|
|
371
|
+
find_package(NCrystal 4.0.0 REQUIRED)
|
|
376
372
|
add_executable(exampleapp "${PROJECT_SOURCE_DIR}/exampleapp.cc")
|
|
377
373
|
target_link_libraries( exampleapp NCrystal::NCrystal )
|
|
378
374
|
install( TARGETS exampleapp DESTINATION bin )
|
|
@@ -382,22 +378,21 @@ required before the code can work in an environment where the NCrystal CMake
|
|
|
382
378
|
modules are not automatically injected into the CMake package search path (this
|
|
383
379
|
notably includes NCrystal installed via "pip install ncrystal").
|
|
384
380
|
|
|
385
|
-
If the NCrystal-Geant4 bindings are needed, they must be explicitly requested,
|
|
386
|
-
and the NCrystal::G4NCrystal target added as a dependency for downstream code:
|
|
387
381
|
|
|
388
|
-
find_package(NCrystal REQUIRED COMPONENTS GEANT4BINDINGS )
|
|
389
|
-
target_link_libraries( exampleapp NCrystal::G4NCrystal )
|
|
390
382
|
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
2024), NCrystal conda and pip packages are built *without* Geant4 support.
|
|
383
|
+
Using the NCrystal with Geant4
|
|
384
|
+
------------------------------
|
|
394
385
|
|
|
386
|
+
The instructions for the NCrystal-Geant4 bindings are currently being
|
|
387
|
+
updated. Once complete, they will appear on
|
|
388
|
+
https://github.com/mctools/ncrystal-geant4
|
|
395
389
|
|
|
396
390
|
|
|
397
|
-
Using the NCrystal installation from OpenMC
|
|
398
|
-
-----------------------------------------------------------------------------
|
|
399
391
|
|
|
400
|
-
Using NCrystal
|
|
392
|
+
Using NCrystal with OpenMC
|
|
393
|
+
--------------------------
|
|
394
|
+
|
|
395
|
+
Using NCrystal materials in OpenMc is supported since OpenMC release 13.3, and
|
|
401
396
|
uses a nice simple syntax in the Python API:
|
|
402
397
|
|
|
403
398
|
```
|
|
@@ -454,8 +449,8 @@ the sections:
|
|
|
454
449
|
|
|
455
450
|
|
|
456
451
|
|
|
457
|
-
Using
|
|
458
|
-
|
|
452
|
+
Using NCrystal with McStas
|
|
453
|
+
--------------------------
|
|
459
454
|
|
|
460
455
|
NOTE: The following discussion concerns the modern McStas 3 branch, and might in
|
|
461
456
|
particular not be 100% accurate for releases earlier than McStas 3.3 (probably
|
|
@@ -471,9 +466,8 @@ the correct settings for doing so. Thus, you can always invoke "ncrystal-config
|
|
|
471
466
|
active. Depending on how you installed McStas, NCrystal is most likely already
|
|
472
467
|
available. If not, you can try one of the following ways of enabling it:
|
|
473
468
|
|
|
474
|
-
$> conda install
|
|
469
|
+
$> conda install conda-forge::ncrystal [if you are in a conda-forge env]
|
|
475
470
|
$> python3 -mpip install ncrystal [for non-conda users]
|
|
476
|
-
$> . $MCSTAS/setup.sh [obsolete way]
|
|
477
471
|
|
|
478
472
|
It is beyond the scope for this README to provide a full documentation of
|
|
479
473
|
McStas, or the Union sub-system, but if you are using McStasScript to compose
|
|
@@ -511,4 +505,5 @@ For more documentation about the NCrystal_sample component, run:
|
|
|
511
505
|
|
|
512
506
|
$> mcdoc NCrystal_sample
|
|
513
507
|
|
|
514
|
-
Or consult the documentation online at
|
|
508
|
+
Or consult the documentation online at
|
|
509
|
+
https://www.mcstas.org/download/components/
|
|
@@ -15,8 +15,8 @@ facilitate integration into existing simulation frameworks such as OpenMC
|
|
|
15
15
|
code or via command-line tools. While the C++ library is designed with a high
|
|
16
16
|
degree of flexibility in mind for developers, typical end-user configuration is
|
|
17
17
|
deliberately kept simple and uniform across various applications and APIs - this
|
|
18
|
-
for instance allows tuning and validation of a particular
|
|
19
|
-
performed in one tool before it is then deployed in another.
|
|
18
|
+
for instance allows tuning and validation of a particular material configuration
|
|
19
|
+
to be performed in one tool before it is then deployed in another.
|
|
20
20
|
|
|
21
21
|
In addition to code and tools, the NCrystal distribution also includes a set of
|
|
22
22
|
validated data files, covering many crystals important at neutron scattering
|
|
@@ -88,16 +88,17 @@ $> nctool 'Al_sg225.ncmat;temp=10C'
|
|
|
88
88
|
|
|
89
89
|
|
|
90
90
|
|
|
91
|
-
Using the NCrystal installation from C
|
|
91
|
+
Using the NCrystal installation from C++, C or Python code
|
|
92
92
|
-----------------------------------------------------------------------------
|
|
93
93
|
|
|
94
|
-
If you wish to use NCrystal from Python code, there is no special setup
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
94
|
+
If you wish to use NCrystal from Python code, there is no special setup needed,
|
|
95
|
+
assuming NCrystal was installed correctly (cf. INSTALL.md). If you on the other
|
|
96
|
+
hand wish to use NCrystal from your compiled C++ or C code, you must put
|
|
97
|
+
appropriate build flags. The recommended way is using CMake to do this (see next
|
|
98
|
+
section), but otherwise you must ensure that the NCrystal header files are in
|
|
99
|
+
your compiler's include path, and that the NCrystal library is linked
|
|
100
|
+
correctly. Here are some examples of how this could for instance be done, with a
|
|
101
|
+
C and a C++ app respectively:
|
|
101
102
|
|
|
102
103
|
export LDFLAGS="${LDFLAGS:-} -Wl,-rpath,$(ncrystal-config --show libdir) $(ncrystal-config --show libpath)"
|
|
103
104
|
export CFLAGS="${CFLAGS:-} -I$(ncrystal-config --show includedir)"
|
|
@@ -105,22 +106,17 @@ done, with a C and a C++ app respectively:
|
|
|
105
106
|
cc -std=c11 ${LDFLAGS} ${CFLAGS} my_c_code.c -o my_c_app
|
|
106
107
|
c++ -std=c++17 ${LDFLAGS} ${CXXFLAGS} my_cpp_code.cpp -o my_cpp_app
|
|
107
108
|
|
|
108
|
-
If using the NCrystal-Geant4 interfaces, you should also add "-lG4NCrystal" to
|
|
109
|
-
the link flags.
|
|
110
|
-
|
|
111
109
|
Then, in your code you can access the relevant APIs with with statements like:
|
|
112
110
|
|
|
113
111
|
#include "NCrystal/NCrystal.hh" // C++ code, core NCrystal
|
|
114
|
-
#include "G4NCrystal/G4NCrystal.hh" // C++ code, for Geant4 users
|
|
115
112
|
#include "NCrystal/ncrystal.h" // C code
|
|
116
113
|
import NCrystal ## Python code
|
|
117
114
|
|
|
118
115
|
In the ./examples/ directory of your NCrystal distribution that you got after
|
|
119
116
|
downloading and unpacking the NCrystal source tar-ball, you will find small
|
|
120
|
-
examples of code using NCrystal. For C++/C
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
with:
|
|
117
|
+
examples of code using NCrystal. For C++/C, there is currently no documentation
|
|
118
|
+
beyond the header files and examples. In the case of Python, there is integrated
|
|
119
|
+
documentation available via the usual "help" function, accessed with:
|
|
124
120
|
|
|
125
121
|
import NCrystal
|
|
126
122
|
help(NCrystal)
|
|
@@ -148,10 +144,10 @@ CMake code for a small project using NCrystal might look like the following
|
|
|
148
144
|
|
|
149
145
|
cmake_minimum_required(VERSION 3.10...3.26)
|
|
150
146
|
project(MyExampleProject LANGUAGES CXX)
|
|
151
|
-
execute_process( COMMAND ncrystal-config --show cmakedir
|
|
147
|
+
execute_process( COMMAND "ncrystal-config" "--show" "cmakedir"
|
|
152
148
|
OUTPUT_VARIABLE NCrystal_DIR
|
|
153
149
|
OUTPUT_STRIP_TRAILING_WHITESPACE )
|
|
154
|
-
find_package(NCrystal REQUIRED)
|
|
150
|
+
find_package(NCrystal 4.0.0 REQUIRED)
|
|
155
151
|
add_executable(exampleapp "${PROJECT_SOURCE_DIR}/exampleapp.cc")
|
|
156
152
|
target_link_libraries( exampleapp NCrystal::NCrystal )
|
|
157
153
|
install( TARGETS exampleapp DESTINATION bin )
|
|
@@ -161,22 +157,21 @@ required before the code can work in an environment where the NCrystal CMake
|
|
|
161
157
|
modules are not automatically injected into the CMake package search path (this
|
|
162
158
|
notably includes NCrystal installed via "pip install ncrystal").
|
|
163
159
|
|
|
164
|
-
If the NCrystal-Geant4 bindings are needed, they must be explicitly requested,
|
|
165
|
-
and the NCrystal::G4NCrystal target added as a dependency for downstream code:
|
|
166
160
|
|
|
167
|
-
find_package(NCrystal REQUIRED COMPONENTS GEANT4BINDINGS )
|
|
168
|
-
target_link_libraries( exampleapp NCrystal::G4NCrystal )
|
|
169
161
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
2024), NCrystal conda and pip packages are built *without* Geant4 support.
|
|
162
|
+
Using the NCrystal with Geant4
|
|
163
|
+
------------------------------
|
|
173
164
|
|
|
165
|
+
The instructions for the NCrystal-Geant4 bindings are currently being
|
|
166
|
+
updated. Once complete, they will appear on
|
|
167
|
+
https://github.com/mctools/ncrystal-geant4
|
|
174
168
|
|
|
175
169
|
|
|
176
|
-
Using the NCrystal installation from OpenMC
|
|
177
|
-
-----------------------------------------------------------------------------
|
|
178
170
|
|
|
179
|
-
Using NCrystal
|
|
171
|
+
Using NCrystal with OpenMC
|
|
172
|
+
--------------------------
|
|
173
|
+
|
|
174
|
+
Using NCrystal materials in OpenMc is supported since OpenMC release 13.3, and
|
|
180
175
|
uses a nice simple syntax in the Python API:
|
|
181
176
|
|
|
182
177
|
```
|
|
@@ -233,8 +228,8 @@ the sections:
|
|
|
233
228
|
|
|
234
229
|
|
|
235
230
|
|
|
236
|
-
Using
|
|
237
|
-
|
|
231
|
+
Using NCrystal with McStas
|
|
232
|
+
--------------------------
|
|
238
233
|
|
|
239
234
|
NOTE: The following discussion concerns the modern McStas 3 branch, and might in
|
|
240
235
|
particular not be 100% accurate for releases earlier than McStas 3.3 (probably
|
|
@@ -250,9 +245,8 @@ the correct settings for doing so. Thus, you can always invoke "ncrystal-config
|
|
|
250
245
|
active. Depending on how you installed McStas, NCrystal is most likely already
|
|
251
246
|
available. If not, you can try one of the following ways of enabling it:
|
|
252
247
|
|
|
253
|
-
$> conda install
|
|
248
|
+
$> conda install conda-forge::ncrystal [if you are in a conda-forge env]
|
|
254
249
|
$> python3 -mpip install ncrystal [for non-conda users]
|
|
255
|
-
$> . $MCSTAS/setup.sh [obsolete way]
|
|
256
250
|
|
|
257
251
|
It is beyond the scope for this README to provide a full documentation of
|
|
258
252
|
McStas, or the Union sub-system, but if you are using McStasScript to compose
|
|
@@ -290,4 +284,5 @@ For more documentation about the NCrystal_sample component, run:
|
|
|
290
284
|
|
|
291
285
|
$> mcdoc NCrystal_sample
|
|
292
286
|
|
|
293
|
-
Or consult the documentation online at
|
|
287
|
+
Or consult the documentation online at
|
|
288
|
+
https://www.mcstas.org/download/components/
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -30,7 +30,7 @@ Please find more information about NCrystal at the website:
|
|
|
30
30
|
|
|
31
31
|
In particular, a small example using the NCrystal python module can be found at:
|
|
32
32
|
|
|
33
|
-
https://github.com/mctools/ncrystal/blob/
|
|
33
|
+
https://github.com/mctools/ncrystal/blob/HEAD/examples/ncrystal_example_py
|
|
34
34
|
|
|
35
35
|
A substantial effort went into developing NCrystal. If you use it for your work,
|
|
36
36
|
we would appreciate it if you would use the following reference in your work:
|
|
@@ -55,7 +55,7 @@ For detailed usage conditions and licensing of this open source project, see:
|
|
|
55
55
|
|
|
56
56
|
#NB: Synchronize meta-data below with fields in setup.py+template_setup.py.in meta data:
|
|
57
57
|
__license__ = "Apache 2.0, http://www.apache.org/licenses/LICENSE-2.0"
|
|
58
|
-
__version__ = '3.9.
|
|
58
|
+
__version__ = '3.9.88'
|
|
59
59
|
__status__ = "Production"
|
|
60
60
|
__author__ = "NCrystal developers (Thomas Kittelmann, Xiao Xiao Cai)"
|
|
61
61
|
__copyright__ = "Copyright 2015-2024 %s"%__author__
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -305,7 +305,7 @@ Note that this script exists for the benefit of experts only. Most users are
|
|
|
305
305
|
recommended to simply download and use one of the pre-converted files shipped
|
|
306
306
|
with NCrystal or found at:
|
|
307
307
|
|
|
308
|
-
https://github.com/mctools/ncrystal-extra/tree/
|
|
308
|
+
https://github.com/mctools/ncrystal-extra/tree/HEAD/data
|
|
309
309
|
|
|
310
310
|
Only information for NCMAT @DYNINFO sections are extracted from ENDF files, so
|
|
311
311
|
it is recommended to provide the initial parts of the target NCMAT file in a
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -138,7 +138,7 @@ def _actualtest( verbose ):
|
|
|
138
138
|
#and to avoid consuming random numbers from other streams.
|
|
139
139
|
alpc = NC.createScatterIndependentRNG(_cfgstr2)
|
|
140
140
|
prfct('Verifying loaded Scatter object')
|
|
141
|
-
require( alpc.name == '
|
|
141
|
+
require( alpc.name == 'PowderBragg' )
|
|
142
142
|
require( isinstance(alpc.name,str) )
|
|
143
143
|
require( alpc.refCount() in (1,2) )
|
|
144
144
|
require( type(alpc.refCount()) == int ) # noqa E721
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## ##
|
|
4
4
|
## This file is part of NCrystal (see https://mctools.github.io/ncrystal/) ##
|
|
5
5
|
## ##
|
|
6
|
-
## Copyright 2015-
|
|
6
|
+
## Copyright 2015-2025 NCrystal developers ##
|
|
7
7
|
## ##
|
|
8
8
|
## Licensed under the Apache License, Version 2.0 (the "License"); ##
|
|
9
9
|
## you may not use this file except in compliance with the License. ##
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: ncrystal-python
|
|
3
|
-
Version: 3.9.
|
|
3
|
+
Version: 3.9.88
|
|
4
4
|
Summary: Library for thermal neutron transport in crystals and other materials.
|
|
5
5
|
Author: NCrystal developers (Thomas Kittelmann, Xiao Xiao Cai)
|
|
6
6
|
License: The Apache 2.0 license is reproduced in the following. See the NOTICE file for
|
|
@@ -236,8 +236,8 @@ facilitate integration into existing simulation frameworks such as OpenMC
|
|
|
236
236
|
code or via command-line tools. While the C++ library is designed with a high
|
|
237
237
|
degree of flexibility in mind for developers, typical end-user configuration is
|
|
238
238
|
deliberately kept simple and uniform across various applications and APIs - this
|
|
239
|
-
for instance allows tuning and validation of a particular
|
|
240
|
-
performed in one tool before it is then deployed in another.
|
|
239
|
+
for instance allows tuning and validation of a particular material configuration
|
|
240
|
+
to be performed in one tool before it is then deployed in another.
|
|
241
241
|
|
|
242
242
|
In addition to code and tools, the NCrystal distribution also includes a set of
|
|
243
243
|
validated data files, covering many crystals important at neutron scattering
|
|
@@ -309,16 +309,17 @@ $> nctool 'Al_sg225.ncmat;temp=10C'
|
|
|
309
309
|
|
|
310
310
|
|
|
311
311
|
|
|
312
|
-
Using the NCrystal installation from C
|
|
312
|
+
Using the NCrystal installation from C++, C or Python code
|
|
313
313
|
-----------------------------------------------------------------------------
|
|
314
314
|
|
|
315
|
-
If you wish to use NCrystal from Python code, there is no special setup
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
315
|
+
If you wish to use NCrystal from Python code, there is no special setup needed,
|
|
316
|
+
assuming NCrystal was installed correctly (cf. INSTALL.md). If you on the other
|
|
317
|
+
hand wish to use NCrystal from your compiled C++ or C code, you must put
|
|
318
|
+
appropriate build flags. The recommended way is using CMake to do this (see next
|
|
319
|
+
section), but otherwise you must ensure that the NCrystal header files are in
|
|
320
|
+
your compiler's include path, and that the NCrystal library is linked
|
|
321
|
+
correctly. Here are some examples of how this could for instance be done, with a
|
|
322
|
+
C and a C++ app respectively:
|
|
322
323
|
|
|
323
324
|
export LDFLAGS="${LDFLAGS:-} -Wl,-rpath,$(ncrystal-config --show libdir) $(ncrystal-config --show libpath)"
|
|
324
325
|
export CFLAGS="${CFLAGS:-} -I$(ncrystal-config --show includedir)"
|
|
@@ -326,22 +327,17 @@ done, with a C and a C++ app respectively:
|
|
|
326
327
|
cc -std=c11 ${LDFLAGS} ${CFLAGS} my_c_code.c -o my_c_app
|
|
327
328
|
c++ -std=c++17 ${LDFLAGS} ${CXXFLAGS} my_cpp_code.cpp -o my_cpp_app
|
|
328
329
|
|
|
329
|
-
If using the NCrystal-Geant4 interfaces, you should also add "-lG4NCrystal" to
|
|
330
|
-
the link flags.
|
|
331
|
-
|
|
332
330
|
Then, in your code you can access the relevant APIs with with statements like:
|
|
333
331
|
|
|
334
332
|
#include "NCrystal/NCrystal.hh" // C++ code, core NCrystal
|
|
335
|
-
#include "G4NCrystal/G4NCrystal.hh" // C++ code, for Geant4 users
|
|
336
333
|
#include "NCrystal/ncrystal.h" // C code
|
|
337
334
|
import NCrystal ## Python code
|
|
338
335
|
|
|
339
336
|
In the ./examples/ directory of your NCrystal distribution that you got after
|
|
340
337
|
downloading and unpacking the NCrystal source tar-ball, you will find small
|
|
341
|
-
examples of code using NCrystal. For C++/C
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
with:
|
|
338
|
+
examples of code using NCrystal. For C++/C, there is currently no documentation
|
|
339
|
+
beyond the header files and examples. In the case of Python, there is integrated
|
|
340
|
+
documentation available via the usual "help" function, accessed with:
|
|
345
341
|
|
|
346
342
|
import NCrystal
|
|
347
343
|
help(NCrystal)
|
|
@@ -369,10 +365,10 @@ CMake code for a small project using NCrystal might look like the following
|
|
|
369
365
|
|
|
370
366
|
cmake_minimum_required(VERSION 3.10...3.26)
|
|
371
367
|
project(MyExampleProject LANGUAGES CXX)
|
|
372
|
-
execute_process( COMMAND ncrystal-config --show cmakedir
|
|
368
|
+
execute_process( COMMAND "ncrystal-config" "--show" "cmakedir"
|
|
373
369
|
OUTPUT_VARIABLE NCrystal_DIR
|
|
374
370
|
OUTPUT_STRIP_TRAILING_WHITESPACE )
|
|
375
|
-
find_package(NCrystal REQUIRED)
|
|
371
|
+
find_package(NCrystal 4.0.0 REQUIRED)
|
|
376
372
|
add_executable(exampleapp "${PROJECT_SOURCE_DIR}/exampleapp.cc")
|
|
377
373
|
target_link_libraries( exampleapp NCrystal::NCrystal )
|
|
378
374
|
install( TARGETS exampleapp DESTINATION bin )
|
|
@@ -382,22 +378,21 @@ required before the code can work in an environment where the NCrystal CMake
|
|
|
382
378
|
modules are not automatically injected into the CMake package search path (this
|
|
383
379
|
notably includes NCrystal installed via "pip install ncrystal").
|
|
384
380
|
|
|
385
|
-
If the NCrystal-Geant4 bindings are needed, they must be explicitly requested,
|
|
386
|
-
and the NCrystal::G4NCrystal target added as a dependency for downstream code:
|
|
387
381
|
|
|
388
|
-
find_package(NCrystal REQUIRED COMPONENTS GEANT4BINDINGS )
|
|
389
|
-
target_link_libraries( exampleapp NCrystal::G4NCrystal )
|
|
390
382
|
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
2024), NCrystal conda and pip packages are built *without* Geant4 support.
|
|
383
|
+
Using the NCrystal with Geant4
|
|
384
|
+
------------------------------
|
|
394
385
|
|
|
386
|
+
The instructions for the NCrystal-Geant4 bindings are currently being
|
|
387
|
+
updated. Once complete, they will appear on
|
|
388
|
+
https://github.com/mctools/ncrystal-geant4
|
|
395
389
|
|
|
396
390
|
|
|
397
|
-
Using the NCrystal installation from OpenMC
|
|
398
|
-
-----------------------------------------------------------------------------
|
|
399
391
|
|
|
400
|
-
Using NCrystal
|
|
392
|
+
Using NCrystal with OpenMC
|
|
393
|
+
--------------------------
|
|
394
|
+
|
|
395
|
+
Using NCrystal materials in OpenMc is supported since OpenMC release 13.3, and
|
|
401
396
|
uses a nice simple syntax in the Python API:
|
|
402
397
|
|
|
403
398
|
```
|
|
@@ -454,8 +449,8 @@ the sections:
|
|
|
454
449
|
|
|
455
450
|
|
|
456
451
|
|
|
457
|
-
Using
|
|
458
|
-
|
|
452
|
+
Using NCrystal with McStas
|
|
453
|
+
--------------------------
|
|
459
454
|
|
|
460
455
|
NOTE: The following discussion concerns the modern McStas 3 branch, and might in
|
|
461
456
|
particular not be 100% accurate for releases earlier than McStas 3.3 (probably
|
|
@@ -471,9 +466,8 @@ the correct settings for doing so. Thus, you can always invoke "ncrystal-config
|
|
|
471
466
|
active. Depending on how you installed McStas, NCrystal is most likely already
|
|
472
467
|
available. If not, you can try one of the following ways of enabling it:
|
|
473
468
|
|
|
474
|
-
$> conda install
|
|
469
|
+
$> conda install conda-forge::ncrystal [if you are in a conda-forge env]
|
|
475
470
|
$> python3 -mpip install ncrystal [for non-conda users]
|
|
476
|
-
$> . $MCSTAS/setup.sh [obsolete way]
|
|
477
471
|
|
|
478
472
|
It is beyond the scope for this README to provide a full documentation of
|
|
479
473
|
McStas, or the Union sub-system, but if you are using McStasScript to compose
|
|
@@ -511,4 +505,5 @@ For more documentation about the NCrystal_sample component, run:
|
|
|
511
505
|
|
|
512
506
|
$> mcdoc NCrystal_sample
|
|
513
507
|
|
|
514
|
-
Or consult the documentation online at
|
|
508
|
+
Or consult the documentation online at
|
|
509
|
+
https://www.mcstas.org/download/components/
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
LICENSE
|
|
2
|
+
README.md
|
|
3
|
+
pyproject.toml
|
|
4
|
+
src/NCrystal/__init__.py
|
|
5
|
+
src/NCrystal/__main__.py
|
|
6
|
+
src/NCrystal/_chooks.py
|
|
7
|
+
src/NCrystal/_cli_cif2ncmat.py
|
|
8
|
+
src/NCrystal/_cli_endf2ncmat.py
|
|
9
|
+
src/NCrystal/_cli_hfg2ncmat.py
|
|
10
|
+
src/NCrystal/_cli_mcstasunion.py
|
|
11
|
+
src/NCrystal/_cli_ncmat2cpp.py
|
|
12
|
+
src/NCrystal/_cli_ncmat2hkl.py
|
|
13
|
+
src/NCrystal/_cli_nctool.py
|
|
14
|
+
src/NCrystal/_cli_vdos2ncmat.py
|
|
15
|
+
src/NCrystal/_cli_verifyatompos.py
|
|
16
|
+
src/NCrystal/_cliimpl.py
|
|
17
|
+
src/NCrystal/_cliwrap_config.py
|
|
18
|
+
src/NCrystal/_common.py
|
|
19
|
+
src/NCrystal/_coreimpl.py
|
|
20
|
+
src/NCrystal/_hfgdata.py
|
|
21
|
+
src/NCrystal/_hklobjects.py
|
|
22
|
+
src/NCrystal/_is_std.py
|
|
23
|
+
src/NCrystal/_locatelib.py
|
|
24
|
+
src/NCrystal/_miscimpl.py
|
|
25
|
+
src/NCrystal/_mmc.py
|
|
26
|
+
src/NCrystal/_msg.py
|
|
27
|
+
src/NCrystal/_ncmat2cpp_impl.py
|
|
28
|
+
src/NCrystal/_ncmatimpl.py
|
|
29
|
+
src/NCrystal/_numpy.py
|
|
30
|
+
src/NCrystal/_testimpl.py
|
|
31
|
+
src/NCrystal/api.py
|
|
32
|
+
src/NCrystal/atomdata.py
|
|
33
|
+
src/NCrystal/cfgstr.py
|
|
34
|
+
src/NCrystal/cifutils.py
|
|
35
|
+
src/NCrystal/cli.py
|
|
36
|
+
src/NCrystal/constants.py
|
|
37
|
+
src/NCrystal/core.py
|
|
38
|
+
src/NCrystal/datasrc.py
|
|
39
|
+
src/NCrystal/exceptions.py
|
|
40
|
+
src/NCrystal/hfg2ncmat.py
|
|
41
|
+
src/NCrystal/mcstasutils.py
|
|
42
|
+
src/NCrystal/misc.py
|
|
43
|
+
src/NCrystal/mmc.py
|
|
44
|
+
src/NCrystal/ncmat.py
|
|
45
|
+
src/NCrystal/ncmat2cpp.py
|
|
46
|
+
src/NCrystal/obsolete.py
|
|
47
|
+
src/NCrystal/plot.py
|
|
48
|
+
src/NCrystal/plugins.py
|
|
49
|
+
src/NCrystal/test.py
|
|
50
|
+
src/NCrystal/vdos.py
|
|
51
|
+
src/ncrystal_python.egg-info/PKG-INFO
|
|
52
|
+
src/ncrystal_python.egg-info/SOURCES.txt
|
|
53
|
+
src/ncrystal_python.egg-info/dependency_links.txt
|
|
54
|
+
src/ncrystal_python.egg-info/entry_points.txt
|
|
55
|
+
src/ncrystal_python.egg-info/requires.txt
|
|
56
|
+
src/ncrystal_python.egg-info/top_level.txt
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
LICENSE
|
|
2
|
-
README.md
|
|
3
|
-
pyproject.toml
|
|
4
|
-
NCrystal/__init__.py
|
|
5
|
-
NCrystal/__main__.py
|
|
6
|
-
NCrystal/_chooks.py
|
|
7
|
-
NCrystal/_cli_cif2ncmat.py
|
|
8
|
-
NCrystal/_cli_endf2ncmat.py
|
|
9
|
-
NCrystal/_cli_hfg2ncmat.py
|
|
10
|
-
NCrystal/_cli_mcstasunion.py
|
|
11
|
-
NCrystal/_cli_ncmat2cpp.py
|
|
12
|
-
NCrystal/_cli_ncmat2hkl.py
|
|
13
|
-
NCrystal/_cli_nctool.py
|
|
14
|
-
NCrystal/_cli_vdos2ncmat.py
|
|
15
|
-
NCrystal/_cli_verifyatompos.py
|
|
16
|
-
NCrystal/_cliimpl.py
|
|
17
|
-
NCrystal/_cliwrap_config.py
|
|
18
|
-
NCrystal/_common.py
|
|
19
|
-
NCrystal/_coreimpl.py
|
|
20
|
-
NCrystal/_hfgdata.py
|
|
21
|
-
NCrystal/_hklobjects.py
|
|
22
|
-
NCrystal/_is_std.py
|
|
23
|
-
NCrystal/_locatelib.py
|
|
24
|
-
NCrystal/_miscimpl.py
|
|
25
|
-
NCrystal/_mmc.py
|
|
26
|
-
NCrystal/_msg.py
|
|
27
|
-
NCrystal/_ncmat2cpp_impl.py
|
|
28
|
-
NCrystal/_ncmatimpl.py
|
|
29
|
-
NCrystal/_numpy.py
|
|
30
|
-
NCrystal/_testimpl.py
|
|
31
|
-
NCrystal/api.py
|
|
32
|
-
NCrystal/atomdata.py
|
|
33
|
-
NCrystal/cfgstr.py
|
|
34
|
-
NCrystal/cifutils.py
|
|
35
|
-
NCrystal/cli.py
|
|
36
|
-
NCrystal/constants.py
|
|
37
|
-
NCrystal/core.py
|
|
38
|
-
NCrystal/datasrc.py
|
|
39
|
-
NCrystal/exceptions.py
|
|
40
|
-
NCrystal/hfg2ncmat.py
|
|
41
|
-
NCrystal/mcstasutils.py
|
|
42
|
-
NCrystal/misc.py
|
|
43
|
-
NCrystal/mmc.py
|
|
44
|
-
NCrystal/ncmat.py
|
|
45
|
-
NCrystal/ncmat2cpp.py
|
|
46
|
-
NCrystal/obsolete.py
|
|
47
|
-
NCrystal/plot.py
|
|
48
|
-
NCrystal/plugins.py
|
|
49
|
-
NCrystal/test.py
|
|
50
|
-
NCrystal/vdos.py
|
|
51
|
-
ncrystal_python.egg-info/PKG-INFO
|
|
52
|
-
ncrystal_python.egg-info/SOURCES.txt
|
|
53
|
-
ncrystal_python.egg-info/dependency_links.txt
|
|
54
|
-
ncrystal_python.egg-info/entry_points.txt
|
|
55
|
-
ncrystal_python.egg-info/requires.txt
|
|
56
|
-
ncrystal_python.egg-info/top_level.txt
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/ncrystal_python.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/ncrystal_python.egg-info/entry_points.txt
RENAMED
|
File without changes
|
|
File without changes
|
{ncrystal_python-3.9.86 → ncrystal_python-3.9.88/src}/ncrystal_python.egg-info/top_level.txt
RENAMED
|
File without changes
|