diff --git a/.github/workflows/mcstas-basictest.yml b/.github/workflows/mcstas-basictest.yml index 27c821814..3ddf1beeb 100644 --- a/.github/workflows/mcstas-basictest.yml +++ b/.github/workflows/mcstas-basictest.yml @@ -429,13 +429,14 @@ jobs: export DIFFBASE=$(git merge-base origin/main HEAD) fi echo "Diffing against: $DIFFBASE" - + export RUNALL="NO" export CHANGEDCOMPS=$(git diff --name-only $DIFFBASE HEAD | grep '\.comp$' | grep mcstas-comps | xargs -n1 basename | sed 's/\.comp//g' | sort | uniq | xargs echo) export NUMCHANGEDCOMPS=$(git diff --name-only $DIFFBASE HEAD | grep '\.comp$' | grep mcstas-comps | wc -l | xargs echo) cd - compindex=0 if [ "$NUMCHANGEDCOMPS" != "0" ]; then + if [ "$NUMCHANGEDCOMPS" -lt "5" ]; then for comp in $CHANGEDCOMPS; do echo Finding tests including component $comp @@ -448,10 +449,12 @@ jobs: echo No matching tests found fi done + else + export RUNALL="YES" + fi fi cd src - export RUNALL="NO" export CHANGEDINSTR=$(git diff --name-only $DIFFBASE HEAD | grep '\.instr$' | grep mcstas-comps | xargs -n1 basename | sed 's/\.instr//g' | sort | uniq | xargs echo | sed 's/ /,/g') export NUMCHANGEDINSTR=$(git diff --name-only $DIFFBASE HEAD | grep '\.instr$' | grep mcstas-comps | wc -l | xargs echo) echo ---- diff --git a/.github/workflows/mcxtrace-basictest.yml b/.github/workflows/mcxtrace-basictest.yml index 4f9cb5a0b..36ded9b84 100644 --- a/.github/workflows/mcxtrace-basictest.yml +++ b/.github/workflows/mcxtrace-basictest.yml @@ -436,13 +436,14 @@ jobs: export DIFFBASE=$(git merge-base origin/main HEAD) fi echo "Diffing against: $DIFFBASE" - - export CHANGEDCOMPS=$(git diff --name-only $DIFFBASE HEAD | grep '\.comp$' | grep mcxtrace-comps | xargs -n1 basename | sed 's/\.comp//g' | sort | uniq | xargs echo) - export NUMCHANGEDCOMPS=$(git diff --name-only $DIFFBASE HEAD | grep '\.comp$' | grep mcxtrace-comps | wc -l | xargs echo) + export RUNALL="NO" + export CHANGEDCOMPS=$(git diff --name-only $DIFFBASE HEAD | grep '\.comp$' | grep mcstas-comps | xargs -n1 basename | sed 's/\.comp//g' | sort | uniq | xargs echo) + export NUMCHANGEDCOMPS=$(git diff --name-only $DIFFBASE HEAD | grep '\.comp$' | grep mcstas-comps | wc -l | xargs echo) cd - compindex=0 if [ "$NUMCHANGEDCOMPS" != "0" ]; then + if [ "$NUMCHANGEDCOMPS" -lt "5" ]; then for comp in $CHANGEDCOMPS; do echo Finding tests including component $comp @@ -455,10 +456,12 @@ jobs: echo No matching tests found fi done + else + export RUNALL="YES" + fi fi cd src - export RUNALL="NO" export CHANGEDINSTR=$(git diff --name-only $DIFFBASE HEAD | grep '\.instr$' | grep mcxtrace-comps | xargs -n1 basename | sed 's/\.instr//g' | sort | uniq | xargs echo | sed 's/ /,/g') export NUMCHANGEDINSTR=$(git diff --name-only $DIFFBASE HEAD | grep '\.instr$' | grep mcxtrace-comps | wc -l | xargs echo) echo ---- diff --git a/mcstas-comps/data/autogen_Al2Ca3F14Na2_sg199_cod1000236.ncmat b/mcstas-comps/data/autogen_Al2Ca3F14Na2_sg199_cod1000236.ncmat new file mode 100644 index 000000000..34c00bc53 --- /dev/null +++ b/mcstas-comps/data/autogen_Al2Ca3F14Na2_sg199_cod1000236.ncmat @@ -0,0 +1,168 @@ +NCMAT v7 +# +# Al2Ca3F14Na2 (cubic, SG-199) +# +# Atoms per unit cell: 8xAl+12xCa+56xF+8xNa +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Na~2~ Ca~3~ Al~2~ F~14~: A New Example of a Structure with "Independent +# F^-^" - A New Method of Comparison between Fluorides and Oxides of +# Different Formula" +# Courbion, G and Ferey, G [Journal of Solid State Chemistry, 1988] +# DOI: https://dx.doi.org/10.1016/0022-4596(88)90239-3 +# Crystallography Open Database entry 1000236 +# https://www.crystallography.net/cod/1000236.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# Notice: The following WARNINGS were emitted when loading the CIF data: +# +# NCrystalUserWarning : ignoring uiso info present in CIF input for "Al" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : Anisotropic displacement for Al ignored (u11=0.0075, u12=-0.0002, u13=-0.0002, u22=0.0075, u23=-0.0002, u33=0.0075) +# NCrystalUserWarning : ignoring uiso info present in CIF input for "Ca" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : Anisotropic displacement for Ca ignored (u11=0.0078, u12=0, u13=0, u22=0.0091, u23=0, u33=0.0078) +# (3x) NCrystalUserWarning : ignoring uiso info present in CIF input for "F" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : Anisotropic displacement for F ignored (u11=0.0104, u12=0.0014, u13=0.0014, u22=0.0104, u23=0.0014, u33=0.0104) +# NCrystalUserWarning : Anisotropic displacement for F ignored (u11=0.0114, u12=0.0025, u13=-0.0029, u22=0.0127, u23=-0.0007, u33=0.0125) +# NCrystalUserWarning : Anisotropic displacement for F ignored (u11=0.0131, u12=0.0026, u13=-0.0006, u22=0.0147, u23=-0.0059, u33=0.0154) +# NCrystalUserWarning : ignoring uiso info present in CIF input for "Na" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : Anisotropic displacement for Na ignored (u11=0.0273, u12=-0.0088, u13=-0.0088, u22=0.0273, u23=-0.0088, u33=0.0273) +# +# WARNING: Fallback (dummy) Debye temperature values were used for 6 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + cubic 10.257 +@SPACEGROUP + 199 +@ATOMPOSITIONS + Al .2482 .2482 .2482 + Al .2482 .7518 .2518 + Al .2518 .2482 .7518 + Al .2518 .7518 .7482 + Al .7482 .2518 .7518 + Al .7482 .7482 .7482 + Al .7518 .2518 .2482 + Al .7518 .7482 .2518 + Ca 0 1/4 .4667 + Ca 0 3/4 .0333 + Ca .0333 0 3/4 + Ca 1/4 .4667 0 + Ca 1/4 .5333 1/2 + Ca .4667 0 1/4 + Ca 1/2 1/4 .5333 + Ca 1/2 3/4 .9667 + Ca .5333 1/2 1/4 + Ca 3/4 .0333 0 + Ca 3/4 .9667 1/2 + Ca .9667 1/2 3/4 + Na .0847 .0847 .0847 + Na .0847 .9153 .4153 + Na .4153 .0847 .9153 + Na .4153 .9153 .5847 + Na .5847 .4153 .9153 + Na .5847 .5847 .5847 + Na .9153 .4153 .0847 + Na .9153 .5847 .4153 + X1 .0386 .4614 .5386 + X1 .0386 .5386 .9614 + X1 .4614 .4614 .4614 + X1 .4614 .5386 .0386 + X1 .5386 .0386 .4614 + X1 .5386 .9614 .0386 + X1 .9614 .0386 .5386 + X1 .9614 .9614 .9614 + X2 .1206 .1387 .3062 + X2 .1206 .8613 .1938 + X2 .1387 .3062 .1206 + X2 .1387 .6938 .3794 + X2 .1938 .1206 .8613 + X2 .1938 .8794 .6387 + X2 .3062 .1206 .1387 + X2 .3062 .8794 .3613 + X2 .3613 .3062 .8794 + X2 .3613 .6938 .6206 + X2 .3794 .1387 .6938 + X2 .3794 .8613 .8062 + X2 .6206 .3613 .6938 + X2 .6206 .6387 .8062 + X2 .6387 .1938 .8794 + X2 .6387 .8062 .6206 + X2 .6938 .3794 .1387 + X2 .6938 .6206 .3613 + X2 .8062 .3794 .8613 + X2 .8062 .6206 .6387 + X2 .8613 .1938 .1206 + X2 .8613 .8062 .3794 + X2 .8794 .3613 .3062 + X2 .8794 .6387 .1938 + X3 .136 .3627 .8127 + X3 .136 .6373 .6873 + X3 .1373 .1873 .636 + X3 .1373 .8127 .864 + X3 .1873 .364 .3627 + X3 .1873 .636 .1373 + X3 .3127 .364 .6373 + X3 .3127 .636 .8627 + X3 .3627 .1873 .364 + X3 .3627 .8127 .136 + X3 .364 .3627 .1873 + X3 .364 .6373 .3127 + X3 .636 .1373 .1873 + X3 .636 .8627 .3127 + X3 .6373 .3127 .364 + X3 .6373 .6873 .136 + X3 .6873 .136 .6373 + X3 .6873 .864 .8627 + X3 .8127 .136 .3627 + X3 .8127 .864 .1373 + X3 .8627 .3127 .636 + X3 .8627 .6873 .864 + X3 .864 .1373 .8127 + X3 .864 .8627 .6873 +@ATOMDB + X1 is F + X2 is F + X3 is F +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Al + fraction 2/21 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Ca + fraction 1/7 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element X1 + fraction 2/21 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element X2 + fraction 2/7 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element X3 + fraction 2/7 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Na + fraction 2/21 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_AlCu2Mn_sg225_cod5910083.ncmat b/mcstas-comps/data/autogen_AlCu2Mn_sg225_cod5910083.ncmat new file mode 100644 index 000000000..4d1325b95 --- /dev/null +++ b/mcstas-comps/data/autogen_AlCu2Mn_sg225_cod5910083.ncmat @@ -0,0 +1,68 @@ +NCMAT v7 +# +# AlCu2Mn (cubic, SG-225) +# +# Atoms per unit cell: 4xAl+8xCu+4xMn +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Page 260 from the second edition of Structure of Crystals by Wyckoff +# published by The Chemical Catalog Company, INC, New York in 1931 +# & http://cimesg1.epfl.ch/CIOLS/crystal2.pl" +# Wyckoff, R. W. G. [The second edition of Structure of Crystals, 1931] +# CIF creation method: Page 260 from the second edition of Structure of Crystals by Wyckoff +# published by The Chemical Catalog Company, INC, New York in 1931 +# & http://cimesg1.epfl.ch/CIOLS/crystal2.pl +# CIF creation date: 2005-28-12 +# Crystallography Open Database entry 5910083 +# https://www.crystallography.net/cod/5910083.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# WARNING: Fallback (dummy) Debye temperature values were used for 3 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + cubic 5.95 +@SPACEGROUP + 225 +@ATOMPOSITIONS + Al 0 0 0 + Al 0 1/2 1/2 + Al 1/2 0 1/2 + Al 1/2 1/2 0 + Cu 1/4 1/4 1/4 + Cu 1/4 1/4 3/4 + Cu 1/4 3/4 1/4 + Cu 1/4 3/4 3/4 + Cu 3/4 1/4 1/4 + Cu 3/4 1/4 3/4 + Cu 3/4 3/4 1/4 + Cu 3/4 3/4 3/4 + Mn 0 0 1/2 + Mn 0 1/2 0 + Mn 1/2 0 0 + Mn 1/2 1/2 1/2 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Al + fraction 1/4 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Cu + fraction 1/2 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Mn + fraction 1/4 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_Ba2Cu3O7Y_sg47_cod1530713.ncmat b/mcstas-comps/data/autogen_Ba2Cu3O7Y_sg47_cod1530713.ncmat new file mode 100644 index 000000000..16a144a90 --- /dev/null +++ b/mcstas-comps/data/autogen_Ba2Cu3O7Y_sg47_cod1530713.ncmat @@ -0,0 +1,67 @@ +NCMAT v7 +# +# Ba2Cu3O7Y (orthorombic, SG-47) +# +# Atoms per unit cell: 2xBa+3xCu+7xO+1xY +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Structural anomalies of Y Ba2 Cu3 O6.9 at the superconducting transition +# temperature" +# Schaefer, W., et al. [Materials Research Bulletin, 1988] +# Crystallography Open Database entry 1530713 +# https://www.crystallography.net/cod/1530713.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# WARNING: Fallback (dummy) Debye temperature values were used for 4 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + lengths 3.8181 3.8825 11.639 + angles 90 90 90 +@SPACEGROUP + 47 +@ATOMPOSITIONS + Ba 1/2 1/2 .185 + Ba 1/2 1/2 .815 + Cu 0 0 0 + Cu 0 0 .3547 + Cu 0 0 .6453 + O 0 0 .1606 + O 0 0 .8394 + O 0 1/2 0 + O 0 1/2 .3768 + O 0 1/2 .6232 + O 1/2 0 .3782 + O 1/2 0 .6218 + Y 1/2 1/2 1/2 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Ba + fraction 2/13 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Cu + fraction 3/13 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element O + fraction 7/13 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Y + fraction 1/13 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_C6H13NO2_sg4_cod5000110.ncmat b/mcstas-comps/data/autogen_C6H13NO2_sg4_cod5000110.ncmat new file mode 100644 index 000000000..5d1b95e7d --- /dev/null +++ b/mcstas-comps/data/autogen_C6H13NO2_sg4_cod5000110.ncmat @@ -0,0 +1,146 @@ +NCMAT v7 +# +# C6H13NO2 (monoclinic, SG-4) +# +# Atoms per unit cell: 24xC+52xH+4xN+8xO +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Structure of L-leucine: a redetermination" +# Coll, M., et al. [Acta Crystallographica Section C, 1986] +# DOI: https://dx.doi.org/10.1107/S0108270186095240 +# Crystallography Open Database entry 5000110 +# https://www.crystallography.net/cod/5000110.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# Notice: The following WARNINGS were emitted when loading the CIF data: +# +# NCrystalUserWarning : Structure received major corrections by spglib (at the 36.1391% level) +# +# WARNING: Fallback (dummy) Debye temperature values were used for 4 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + lengths 9.606 5.324 14.666 + angles 90 94.06 90 +@SPACEGROUP + 4 +@ATOMPOSITIONS + C .0299 .3515 .8073 + C .0921 .1554 .0968 + C .0951 .0147 .19 + C .1021 .2171 .2639 + C 3/25 .1112 .3637 + C .2453 .8964 .6139 + C .2621 .9878 .3816 + C .3595 .9758 .9106 + C .387 .0107 .6474 + C .387 .0877 .7493 + C .3886 .8717 .8159 + C .4792 .2275 .1781 + C .5208 .7275 .8219 + C .6114 .3717 .1841 + C .613 .5107 .3526 + C .613 .5877 .2507 + C .6405 .4758 .0894 + C .7379 .4878 .6184 + C .7547 .3964 .3861 + C 22/25 .6112 .6363 + C .8979 .7171 .7361 + C .9049 .5147 .81 + C .9079 .6554 .9032 + C .9701 .8515 .1927 + H .0002 .2557 .0704 + H .0068 13/40 .257 + H .0158 .4394 .4212 + H .0263 .2198 .8631 + H .0326 1/4 .7437 + H .0411 .9722 .3749 + H .1016 .9826 .0592 + H .1224 .4664 .8174 + H .1299 .2543 .4927 + H .1834 .2702 .0896 + H .184 .8913 .2005 + H .1897 .3381 .2533 + H .1977 .4608 .4129 + H .2612 .0749 .9084 + H .2944 .1977 .7577 + H .3088 .7406 .7913 + H .3499 .4099 .6053 + H .3521 .8066 .9506 + H .3942 .1813 .5253 + H .4119 .3742 .1493 + H .4332 .1458 .2363 + H .441 .0944 .9415 + H .4662 .8709 .638 + H .4783 .7922 .392 + H .4784 .2014 .7659 + H .4916 .0842 .1272 + H .5084 .5842 .8728 + H .5216 .7014 .2341 + H .5217 .2922 .608 + H .5338 .3709 .362 + H .559 .5944 .0585 + H .5668 .6458 .7637 + H .5881 .8742 .8507 + H .6058 .6813 .4747 + H .6479 .3066 .0494 + H .6501 .9099 .3947 + H .6912 .2406 .2087 + H .7056 .6977 .2423 + H .7388 .5749 .0916 + H .8023 .9608 .5871 + H .8103 .8381 .7467 + H .816 .3913 .7995 + H .8166 .7702 .9104 + H .8701 .7543 .5073 + H .8776 .9664 .1826 + H .8984 .4826 .9408 + H .9589 .4722 .6251 + H .9674 3/4 .2563 + H .9737 .7198 .1369 + H .9842 .9394 .5788 + H .9932 33/40 .743 + H .9998 .7557 .9296 + N .1126 .3356 .4254 + N .4127 .2455 .595 + N .5873 .7455 .405 + N .8874 .8356 .5746 + O .1529 .0504 .5864 + O .2355 .665 .618 + O .2695 .7574 .3637 + O .3611 .1185 .413 + O .6389 .6185 .587 + O .7305 .2574 .6363 + O .7645 .165 .382 + O .8471 .5504 .4136 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element C + fraction 3/11 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element H + fraction 13/22 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element N + fraction 1/22 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element O + fraction 1/11 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_CFe3_sg62_cod2300076.ncmat b/mcstas-comps/data/autogen_CFe3_sg62_cod2300076.ncmat new file mode 100644 index 000000000..889a5fca7 --- /dev/null +++ b/mcstas-comps/data/autogen_CFe3_sg62_cod2300076.ncmat @@ -0,0 +1,64 @@ +NCMAT v7 +# +# CFe3 (orthorombic, SG-62) +# +# Atoms per unit cell: 4xC+12xFe +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Thermal expansion and crystal structure of cementite, Fe~3~C, between +# 4 and 600K determined by time-of-flight neutron powder diffraction" +# Wood, I. G., et al. [Journal of Applied Crystallography, 2004] +# DOI: https://dx.doi.org/10.1107/S0021889803024695 +# Crystallography Open Database entry 2300076 +# https://www.crystallography.net/cod/2300076.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# Notice: The following WARNINGS were emitted when loading the CIF data: +# +# NCrystalUserWarning : ignoring uiso info present in CIF input for "C" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : ignoring uiso info present in CIF input for "Fe" since uiso_temperature parameter value is not provided +# +# WARNING: Fallback (dummy) Debye temperature values were used for 2 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + lengths 5.08395 6.7558 4.51728 + angles 90 90 90 +@SPACEGROUP + 62 +@ATOMPOSITIONS + C .10164 3/4 .55331 + C .39836 1/4 .05331 + C .60164 3/4 .94669 + C .89836 1/4 .44669 + Fe .0346 1/4 .83775 + Fe .18459 .05938 .33402 + Fe .18459 .44062 .33402 + Fe .31541 .55938 .83402 + Fe .31541 .94062 .83402 + Fe .4654 3/4 .33775 + Fe .5346 1/4 .66225 + Fe .68459 .05938 .16598 + Fe .68459 .44062 .16598 + Fe .81541 .55938 .66598 + Fe .81541 .94062 .66598 + Fe .9654 3/4 .16225 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element C + fraction 1/4 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Fe + fraction 3/4 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_C_sg205_cod9011580.ncmat b/mcstas-comps/data/autogen_C_sg205_cod9011580.ncmat new file mode 100644 index 000000000..59cd0e86f --- /dev/null +++ b/mcstas-comps/data/autogen_C_sg205_cod9011580.ncmat @@ -0,0 +1,281 @@ +NCMAT v7 +# +# C (cubic, SG-205) +# +# Atoms per unit cell: 240xC +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Crystal structure and bonding of ordered C60 +# Sample: at T = 5 K +# Note: phase: carbon C60" +# David, W. I. F., et al. [Nature, 1991] +# DOI: https://dx.doi.org/10.1038/353147a0 +# Crystallography Open Database entry 9011580 +# https://www.crystallography.net/cod/9011580.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# Notice: The following WARNINGS were emitted when loading the CIF data: +# +# NCrystalUserWarning : ignoring uiso info present in CIF input for "C" since uiso_temperature parameter value is not provided +# +# WARNING: Fallback (dummy) Debye temperature value was used for 1 atom! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + cubic 14.0408 +@SPACEGROUP + 205 +@ATOMPOSITIONS + C .0061 .2467 .946 + C .0061 .2533 .446 + C .0192 .5636 .7439 + C .0192 .9364 .2439 + C .0202 .1503 .7983 + C .0202 .3497 .2983 + C .0325 .601 .2706 + C .0325 .899 .7706 + C .036 .7066 .6401 + C .036 .7934 .1401 + C .0371 .7236 .3878 + C .0371 .7764 .8878 + C .054 .5061 .2533 + C .054 .9939 .7533 + C .0616 .2053 .1349 + C .0616 .2947 .6349 + C .0636 .7439 .4808 + C .0636 .7561 .9808 + C .0646 .1289 .2081 + C .0646 .3711 .7081 + C .0963 .659 .329 + C .0963 .841 .829 + C .101 .2294 .9675 + C .101 .2706 .4675 + C .1122 .5371 .7236 + C .1122 .9629 .2236 + C .1186 .1323 .8207 + C .1186 .3677 .3207 + C .1289 .2081 .0646 + C .1289 .2919 .5646 + C .1323 .6793 .6186 + C .1323 .8207 .1186 + C .1349 .0616 .2053 + C .1349 .4384 .7053 + C .1401 .036 .7934 + C .1401 .464 .2934 + C .1503 .7017 .5202 + C .1503 .7983 .0202 + C .159 .171 .9037 + C .159 .329 .4037 + C .171 .5963 .659 + C .171 .9037 .159 + C .1793 .6186 .3677 + C .1793 .8814 .8677 + C .2017 .5202 .3497 + C .2017 .9798 .8497 + C .2053 .1349 .0616 + C .2053 .3651 .5616 + C .2066 .6401 .464 + C .2066 .8599 .964 + C .2081 .0646 .1289 + C .2081 .4354 .6289 + C .2236 .1122 .9629 + C .2236 .3878 .4629 + C .2294 .5325 .601 + C .2294 .9675 .101 + C .2439 .0192 .9364 + C .2439 .4808 .4364 + C .2467 .554 .5061 + C .2467 .946 .0061 + C .2533 .054 .5061 + C .2533 .446 .0061 + C .2561 .5192 .9364 + C .2561 .9808 .4364 + C .2706 .0325 .601 + C .2706 .4675 .101 + C .2764 .6122 .9629 + C .2764 .8878 .4629 + C .2919 .5646 .1289 + C .2919 .9354 .6289 + C .2934 .1401 .464 + C .2934 .3599 .964 + C .2947 .6349 .0616 + C .2947 .8651 .5616 + C .2983 .0202 .3497 + C .2983 .4798 .8497 + C .3207 .1186 .3677 + C .3207 .3814 .8677 + C .329 .0963 .659 + C .329 .4037 .159 + C .341 .671 .9037 + C .341 .829 .4037 + C .3497 .2017 .5202 + C .3497 .2983 .0202 + C .3599 .536 .7934 + C .3599 .964 .2934 + C .3651 .5616 .2053 + C .3651 .9384 .7053 + C .3677 .1793 .6186 + C .3677 .3207 .1186 + C .3711 .7081 .0646 + C .3711 .7919 .5646 + C .3814 .6323 .8207 + C .3814 .8677 .3207 + C .3878 .0371 .7236 + C .3878 .4629 .2236 + C .399 .7294 .9675 + C .399 .7706 .4675 + C .4037 .159 .329 + C .4037 .341 .829 + C .4354 .6289 .2081 + C .4354 .8711 .7081 + C .4364 .2439 .4808 + C .4364 .2561 .9808 + C .4384 .7053 .1349 + C .4384 .7947 .6349 + C .446 .0061 .2533 + C .446 .4939 .7533 + C .4629 .2236 .3878 + C .4629 .2764 .8878 + C .464 .2066 .6401 + C .464 .2934 .1401 + C .4675 .101 .2706 + C .4675 .399 .7706 + C .4798 .6503 .7983 + C .4798 .8497 .2983 + C .4808 .0636 .7439 + C .4808 .4364 .2439 + C .4939 .7467 .946 + C .4939 .7533 .446 + C .5061 .2467 .554 + C .5061 .2533 .054 + C .5192 .5636 .7561 + C .5192 .9364 .2561 + C .5202 .1503 .7017 + C .5202 .3497 .2017 + C .5325 .601 .2294 + C .5325 .899 .7294 + C .536 .7066 .8599 + C .536 .7934 .3599 + C .5371 .7236 .1122 + C .5371 .7764 .6122 + C .554 .5061 .2467 + C .554 .9939 .7467 + C .5616 .2053 .3651 + C .5616 .2947 .8651 + C .5636 .7439 .0192 + C .5636 .7561 .5192 + C .5646 .1289 .2919 + C .5646 .3711 .7919 + C .5963 .659 .171 + C .5963 .841 .671 + C .601 .2294 .5325 + C .601 .2706 .0325 + C .6122 .5371 .7764 + C .6122 .9629 .2764 + C .6186 .1323 .6793 + C .6186 .3677 .1793 + C .6289 .2081 .4354 + C .6289 .2919 .9354 + C .6323 .6793 .8814 + C .6323 .8207 .3814 + C .6349 .0616 .2947 + C .6349 .4384 .7947 + C .6401 .036 .7066 + C .6401 .464 .2066 + C .6503 .7017 .9798 + C .6503 .7983 .4798 + C .659 .171 .5963 + C .659 .329 .0963 + C .671 .5963 .841 + C .671 .9037 .341 + C .6793 .6186 .1323 + C .6793 .8814 .6323 + C .7017 .5202 .1503 + C .7017 .9798 .6503 + C .7053 .1349 .4384 + C .7053 .3651 .9384 + C .7066 .6401 .036 + C .7066 .8599 .536 + C .7081 .0646 .3711 + C .7081 .4354 .8711 + C .7236 .1122 .5371 + C .7236 .3878 .0371 + C .7294 .5325 .899 + C .7294 .9675 .399 + C .7439 .0192 .5636 + C .7439 .4808 .0636 + C .7467 .554 .9939 + C .7467 .946 .4939 + C .7533 .054 .9939 + C .7533 .446 .4939 + C .7561 .5192 .5636 + C .7561 .9808 .0636 + C .7706 .0325 .899 + C .7706 .4675 .399 + C .7764 .6122 .5371 + C .7764 .8878 .0371 + C .7919 .5646 .3711 + C .7919 .9354 .8711 + C .7934 .1401 .036 + C .7934 .3599 .536 + C .7947 .6349 .4384 + C .7947 .8651 .9384 + C .7983 .0202 .1503 + C .7983 .4798 .6503 + C .8207 .1186 .1323 + C .8207 .3814 .6323 + C .829 .0963 .841 + C .829 .4037 .341 + C .841 .671 .5963 + C .841 .829 .0963 + C .8497 .2017 .9798 + C .8497 .2983 .4798 + C .8599 .536 .7066 + C .8599 .964 .2066 + C .8651 .5616 .2947 + C .8651 .9384 .7947 + C .8677 .1793 .8814 + C .8677 .3207 .3814 + C .8711 .7081 .4354 + C .8711 .7919 .9354 + C .8814 .6323 .6793 + C .8814 .8677 .1793 + C .8878 .0371 .7764 + C .8878 .4629 .2764 + C .899 .7294 .5325 + C .899 .7706 .0325 + C .9037 .159 .171 + C .9037 .341 .671 + C .9354 .6289 .2919 + C .9354 .8711 .7919 + C .9364 .2439 .0192 + C .9364 .2561 .5192 + C .9384 .7053 .3651 + C .9384 .7947 .8651 + C .946 .0061 .2467 + C .946 .4939 .7467 + C .9629 .2236 .1122 + C .9629 .2764 .6122 + C .964 .2066 .8599 + C .964 .2934 .3599 + C .9675 .101 .2294 + C .9675 .399 .7294 + C .9798 .6503 .7017 + C .9798 .8497 .2017 + C .9808 .0636 .7561 + C .9808 .4364 .2561 + C .9939 .7467 .554 + C .9939 .7533 .054 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element C + fraction 1 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_Cd_sg194_cod9008490.ncmat b/mcstas-comps/data/autogen_Cd_sg194_cod9008490.ncmat new file mode 100644 index 000000000..9d293c503 --- /dev/null +++ b/mcstas-comps/data/autogen_Cd_sg194_cod9008490.ncmat @@ -0,0 +1,42 @@ +NCMAT v7 +# +# Cd (hexagonal, SG-194) +# +# Atoms per unit cell: 2xCd +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Second edition. Interscience Publishers, New York, New York +# Hexagonal closest packed, hcp, structure" +# Wyckoff, R. W. G. [Crystal Structures, 1963] +# Crystallography Open Database entry 9008490 +# https://www.crystallography.net/cod/9008490.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# Notice: The following WARNINGS were emitted when loading the CIF data: +# +# NCrystalUserWarning : Fractional coordinate (0.33333,0.66667,0.25) interpreted as special position (0.333333333333333,0.666666666666667,0.25) to avoid numerical precision issues +# +# WARNING: Fallback (dummy) Debye temperature value was used for 1 atom! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + lengths 2.97887 !! 5.61765 + angles 90 90 120 +@SPACEGROUP + 194 +@ATOMPOSITIONS + Cd 1/3 2/3 1/4 + Cd 2/3 1/3 3/4 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Cd + fraction 1 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_Cs_sg229_cod9011011.ncmat b/mcstas-comps/data/autogen_Cs_sg229_cod9011011.ncmat new file mode 100644 index 000000000..9438520db --- /dev/null +++ b/mcstas-comps/data/autogen_Cs_sg229_cod9011011.ncmat @@ -0,0 +1,40 @@ +NCMAT v7 +# +# Cs (cubic, SG-229) +# +# Atoms per unit cell: 2xCs +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "X-ray study of the alkali metals at low temperatures +# Locality: synthetic +# Sample: at T = 78 K +# Note: lattice parameters are average of 6 values" +# Barrett, C. S. [Acta Crystallographica, 1956] +# DOI: https://dx.doi.org/10.1107/S0365110X56001790 +# Crystallography Open Database entry 9011011 +# https://www.crystallography.net/cod/9011011.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# WARNING: Fallback (dummy) Debye temperature value was used for 1 atom! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + cubic 6.067 +@SPACEGROUP + 229 +@ATOMPOSITIONS + Cs 0 0 0 + Cs 1/2 1/2 1/2 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Cs + fraction 1 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_Fe2O3_sg167_cod9000139.ncmat b/mcstas-comps/data/autogen_Fe2O3_sg167_cod9000139.ncmat new file mode 100644 index 000000000..1033d0ae6 --- /dev/null +++ b/mcstas-comps/data/autogen_Fe2O3_sg167_cod9000139.ncmat @@ -0,0 +1,79 @@ +NCMAT v7 +# +# Fe2O3 (trigonal, SG-167) +# +# Atoms per unit cell: 12xFe+18xO +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Refinement of the hematite structure" +# Blake, R. L., et al. [American Mineralogist, 1966] +# Crystallography Open Database entry 9000139 +# https://www.crystallography.net/cod/9000139.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# Notice: The following WARNINGS were emitted when loading the CIF data: +# +# NCrystalUserWarning : SG-167 available in multiple choices ("R -3 c:H", "R -3 c:R") and which one was not encoded explicitly in the _space_group_name_H-M_alt CIF field. Consider overriding the space group explicitly when loading this file. +# NCrystalUserWarning : ignoring uiso info present in CIF input for "Fe" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : Anisotropic displacement for Fe ignored (u11=0.00772, u12=0.00386, u13=0, u22=0.00772, u23=0, u33=0.00279) +# NCrystalUserWarning : ignoring uiso info present in CIF input for "O" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : Anisotropic displacement for O ignored (u11=0.00656, u12=0.00405, u13=0.00177, u22=0.008, u23=0.00365, u33=0.00442) +# +# WARNING: Fallback (dummy) Debye temperature values were used for 2 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + lengths 5.038 !! 13.772 + angles 90 90 120 +@SPACEGROUP + 167 +@ATOMPOSITIONS + Fe 0 0 .1447 + Fe 0 0 .3553 + Fe 0 0 .6447 + Fe 0 0 .8553 + Fe 1/3 2/3 .02196666666666667 + Fe 1/3 2/3 .31136666666666667 + Fe 1/3 2/3 .52196666666666667 + Fe 1/3 2/3 .81136666666666667 + Fe 2/3 1/3 .18863333333333333 + Fe 2/3 1/3 .47803333333333333 + Fe 2/3 1/3 .68863333333333333 + Fe 2/3 1/3 .97803333333333333 + O 0 .3059 1/4 + O 0 .6941 3/4 + O .02743333333333333 .36076666666666667 11/12 + O .02743333333333333 2/3 5/12 + O .3059 0 1/4 + O .3059 .3059 3/4 + O 1/3 .36076666666666667 5/12 + O 1/3 .97256666666666667 11/12 + O .36076666666666667 .02743333333333333 7/12 + O .36076666666666667 1/3 1/12 + O .63923333333333333 2/3 11/12 + O .63923333333333333 .97256666666666667 5/12 + O 2/3 .02743333333333333 1/12 + O 2/3 .63923333333333333 7/12 + O .6941 0 3/4 + O .6941 .6941 1/4 + O .97256666666666667 1/3 7/12 + O .97256666666666667 .63923333333333333 1/12 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Fe + fraction 2/5 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element O + fraction 3/5 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_Fe3O4_sg227_cod9000926.ncmat b/mcstas-comps/data/autogen_Fe3O4_sg227_cod9000926.ncmat new file mode 100644 index 000000000..00e4fecd7 --- /dev/null +++ b/mcstas-comps/data/autogen_Fe3O4_sg227_cod9000926.ncmat @@ -0,0 +1,113 @@ +NCMAT v7 +# +# Fe3O4 (cubic, SG-227) +# +# Atoms per unit cell: 24xFe+32xO +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Crystal structure and cation distribution in titanomagnetites (Fe3-xTixO4) +# MT100-1350" +# Wechsler, B. A., et al. [American Mineralogist, 1984] +# Crystallography Open Database entry 9000926 +# https://www.crystallography.net/cod/9000926.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# Notice: The following WARNINGS were emitted when loading the CIF data: +# +# NCrystalUserWarning : SG-227 available in multiple choices ("F d -3 m:1", "F d -3 m:2") and which one was not encoded explicitly in the _space_group_name_H-M_alt CIF field. Consider overriding the space group explicitly when loading this file. +# NCrystalUserWarning : Structure received major corrections by spglib (at the 41.4578% level) +# (2x) NCrystalUserWarning : ignoring uiso info present in CIF input for "Fe" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : ignoring uiso info present in CIF input for "O" since uiso_temperature parameter value is not provided +# +# WARNING: Fallback (dummy) Debye temperature values were used for 3 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + cubic 8.3958 +@SPACEGROUP + 227 +@ATOMPOSITIONS + O .1203 .1203 .8797 + O .1203 .3797 .6203 + O .1203 .6203 .3797 + O .1203 .8797 .1203 + O .1297 .1297 .3703 + O .1297 .3703 .1297 + O .1297 .6297 .8703 + O .1297 .8703 .6297 + O .3703 .1297 .1297 + O .3703 .3703 .3703 + O .3703 .6297 .6297 + O .3703 .8703 .8703 + O .3797 .1203 .6203 + O .3797 .3797 .8797 + O .3797 .6203 .1203 + O .3797 .8797 .3797 + O .6203 .1203 .3797 + O .6203 .3797 .1203 + O .6203 .6203 .8797 + O .6203 .8797 .6203 + O .6297 .1297 .8703 + O .6297 .3703 .6297 + O .6297 .6297 .3703 + O .6297 .8703 .1297 + O .8703 .1297 .6297 + O .8703 .3703 .8703 + O .8703 .6297 .1297 + O .8703 .8703 .3703 + O .8797 .1203 .1203 + O .8797 .3797 .3797 + O .8797 .6203 .6203 + O .8797 .8797 .8797 + X1 0 0 1/2 + X1 0 1/2 0 + X1 1/4 1/4 3/4 + X1 1/4 3/4 1/4 + X1 1/2 0 0 + X1 1/2 1/2 1/2 + X1 3/4 1/4 1/4 + X1 3/4 3/4 3/4 + X2 1/8 1/8 1/8 + X2 1/8 3/8 3/8 + X2 1/8 5/8 5/8 + X2 1/8 7/8 7/8 + X2 3/8 1/8 3/8 + X2 3/8 3/8 1/8 + X2 3/8 5/8 7/8 + X2 3/8 7/8 5/8 + X2 5/8 1/8 5/8 + X2 5/8 3/8 7/8 + X2 5/8 5/8 1/8 + X2 5/8 7/8 3/8 + X2 7/8 1/8 7/8 + X2 7/8 3/8 5/8 + X2 7/8 5/8 3/8 + X2 7/8 7/8 1/8 +@ATOMDB + X1 is Fe + X2 is Fe +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element X1 + fraction 1/7 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element X2 + fraction 2/7 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element O + fraction 4/7 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_Fe5O12Y3_sg230_cod1008628.ncmat b/mcstas-comps/data/autogen_Fe5O12Y3_sg230_cod1008628.ncmat new file mode 100644 index 000000000..de729733d --- /dev/null +++ b/mcstas-comps/data/autogen_Fe5O12Y3_sg230_cod1008628.ncmat @@ -0,0 +1,208 @@ +NCMAT v7 +# +# Fe5O12Y3 (cubic, SG-230) +# +# Atoms per unit cell: 40xFe+96xO+24xY +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Etude par diffraction de neutrons du grenat ferrimagnetique Y~3~ Fe~5~ +# O~12~" +# Bertaut, F, et al. [Comptes Rendus Hebdomadaires des Seances de l'Academie des Sciences +# (1884 - 1965), 1956] +# Crystallography Open Database entry 1008628 +# https://www.crystallography.net/cod/1008628.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# WARNING: Fallback (dummy) Debye temperature values were used for 3 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + cubic 12.376 +@SPACEGROUP + 230 +@ATOMPOSITIONS + Fe 0 0 0 + Fe 0 0 1/2 + Fe 0 1/4 3/8 + Fe 0 1/4 7/8 + Fe 0 1/2 0 + Fe 0 1/2 1/2 + Fe 0 3/4 1/8 + Fe 0 3/4 5/8 + Fe 1/8 0 3/4 + Fe 1/8 1/2 1/4 + Fe 1/4 1/8 1/2 + Fe 1/4 1/4 1/4 + Fe 1/4 1/4 3/4 + Fe 1/4 3/8 0 + Fe 1/4 5/8 1/2 + Fe 1/4 3/4 1/4 + Fe 1/4 3/4 3/4 + Fe 1/4 7/8 0 + Fe 3/8 0 1/4 + Fe 3/8 1/2 3/4 + Fe 1/2 0 0 + Fe 1/2 0 1/2 + Fe 1/2 1/4 1/8 + Fe 1/2 1/4 5/8 + Fe 1/2 1/2 0 + Fe 1/2 1/2 1/2 + Fe 1/2 3/4 3/8 + Fe 1/2 3/4 7/8 + Fe 5/8 0 3/4 + Fe 5/8 1/2 1/4 + Fe 3/4 1/8 0 + Fe 3/4 1/4 1/4 + Fe 3/4 1/4 3/4 + Fe 3/4 3/8 1/2 + Fe 3/4 5/8 0 + Fe 3/4 3/4 1/4 + Fe 3/4 3/4 3/4 + Fe 3/4 7/8 1/2 + Fe 7/8 0 1/4 + Fe 7/8 1/2 3/4 + O .029 .054 .648 + O .029 .446 .148 + O .029 .554 .352 + O .029 .946 .852 + O .054 .148 .971 + O .054 .352 .471 + O .054 .648 .029 + O .054 .852 .529 + O .102 .196 .279 + O .102 .304 .779 + O .102 .696 .721 + O .102 .804 .221 + O .148 .029 .446 + O .148 .471 .946 + O .148 .529 .554 + O .148 .971 .054 + O .196 .221 .602 + O .196 .279 .102 + O .196 .721 .398 + O .196 .779 .898 + O .221 .102 .804 + O .221 .398 .304 + O .221 .602 .196 + O .221 .898 .696 + O .279 .102 .196 + O .279 .398 .696 + O .279 .602 .804 + O .279 .898 .304 + O .304 .221 .398 + O .304 .279 .898 + O .304 .721 .602 + O .304 .779 .102 + O .352 .029 .554 + O .352 .471 .054 + O .352 .529 .446 + O .352 .971 .946 + O .398 .196 .721 + O .398 .304 .221 + O .398 .696 .279 + O .398 .804 .779 + O .446 .148 .029 + O .446 .352 .529 + O .446 .648 .971 + O .446 .852 .471 + O .471 .054 .352 + O .471 .446 .852 + O .471 .554 .648 + O .471 .946 .148 + O .529 .054 .852 + O .529 .446 .352 + O .529 .554 .148 + O .529 .946 .648 + O .554 .148 .529 + O .554 .352 .029 + O .554 .648 .471 + O .554 .852 .971 + O .602 .196 .221 + O .602 .304 .721 + O .602 .696 .779 + O .602 .804 .279 + O .648 .029 .054 + O .648 .471 .554 + O .648 .529 .946 + O .648 .971 .446 + O .696 .221 .898 + O .696 .279 .398 + O .696 .721 .102 + O .696 .779 .602 + O .721 .102 .696 + O .721 .398 .196 + O .721 .602 .304 + O .721 .898 .804 + O .779 .102 .304 + O .779 .398 .804 + O .779 .602 .696 + O .779 .898 .196 + O .804 .221 .102 + O .804 .279 .602 + O .804 .721 .898 + O .804 .779 .398 + O .852 .029 .946 + O .852 .471 .446 + O .852 .529 .054 + O .852 .971 .554 + O .898 .196 .779 + O .898 .304 .279 + O .898 .696 .221 + O .898 .804 .721 + O .946 .148 .471 + O .946 .352 .971 + O .946 .648 .529 + O .946 .852 .029 + O .971 .054 .148 + O .971 .446 .648 + O .971 .554 .852 + O .971 .946 .352 + Y 0 1/4 1/8 + Y 0 1/4 5/8 + Y 0 3/4 3/8 + Y 0 3/4 7/8 + Y 1/8 0 1/4 + Y 1/8 1/2 3/4 + Y 1/4 1/8 0 + Y 1/4 3/8 1/2 + Y 1/4 5/8 0 + Y 1/4 7/8 1/2 + Y 3/8 0 3/4 + Y 3/8 1/2 1/4 + Y 1/2 1/4 3/8 + Y 1/2 1/4 7/8 + Y 1/2 3/4 1/8 + Y 1/2 3/4 5/8 + Y 5/8 0 1/4 + Y 5/8 1/2 3/4 + Y 3/4 1/8 1/2 + Y 3/4 3/8 0 + Y 3/4 5/8 1/2 + Y 3/4 7/8 0 + Y 7/8 0 3/4 + Y 7/8 1/2 1/4 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Fe + fraction 1/4 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element O + fraction 3/5 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Y + fraction 3/20 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_FeHO2_sg62_cod7720757.ncmat b/mcstas-comps/data/autogen_FeHO2_sg62_cod7720757.ncmat new file mode 100644 index 000000000..42349c983 --- /dev/null +++ b/mcstas-comps/data/autogen_FeHO2_sg62_cod7720757.ncmat @@ -0,0 +1,80 @@ +NCMAT v7 +# +# FeHO2 (orthorombic, SG-62) +# +# Atoms per unit cell: 4xFe+4xH+8xO +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Refining hydrogen positions in α-FeOOH through combined neutron +# diffraction and computational techniques." +# Nambu, Yusuke, et al. [Dalton transactions (Cambridge, England : 2003), 2026] +# DOI: https://dx.doi.org/10.1039/d5dt00217f +# Crystallography Open Database entry 7720757 +# https://www.crystallography.net/cod/7720757.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# Notice: The following WARNINGS were emitted when loading the CIF data: +# +# NCrystalUserWarning : ignoring uiso info present in CIF input for "Fe" since uiso_temperature parameter value is not provided +# NCrystalUserWarning : ignoring uiso info present in CIF input for "H" since uiso_temperature parameter value is not provided +# (2x) NCrystalUserWarning : ignoring uiso info present in CIF input for "O" since uiso_temperature parameter value is not provided +# +# WARNING: Fallback (dummy) Debye temperature values were used for 4 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + lengths 9.9444 3.01795 4.59856 + angles 90 90 90 +@SPACEGROUP + 62 +@ATOMPOSITIONS + Fe .14735 3/4 .9512 + Fe .35265 1/4 .4512 + Fe .64735 3/4 .5488 + Fe .85265 1/4 .0488 + H .0826 1/4 .4081 + H .4174 3/4 .9081 + H .5826 1/4 .0919 + H .9174 3/4 .5919 + X1 .2023 1/4 .7026 + X1 .2977 3/4 .2026 + X1 .7023 1/4 .7974 + X1 .7977 3/4 .2974 + X2 .0514 1/4 .204 + X2 .4486 3/4 .704 + X2 .5514 1/4 .296 + X2 .9486 3/4 .796 +@ATOMDB + X1 is O + X2 is O +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Fe + fraction 1/4 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element H + fraction 1/4 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element X1 + fraction 1/4 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element X2 + fraction 1/4 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/data/autogen_FeLiO4P_sg62_cod2100916.ncmat b/mcstas-comps/data/autogen_FeLiO4P_sg62_cod2100916.ncmat new file mode 100644 index 000000000..9573d6d9b --- /dev/null +++ b/mcstas-comps/data/autogen_FeLiO4P_sg62_cod2100916.ncmat @@ -0,0 +1,83 @@ +NCMAT v7 +# +# FeLiO4P (orthorombic, SG-62) +# +# Atoms per unit cell: 4xFe+4xLi+16xO+4xP +# +# Structure converted (with NCrystal.cifutils module) from: +# +# "Multipole analysis of the electron density in triphylite, LiFePO~4~, +# using X-ray diffraction data" +# Streltsov, V. A., et al. [Acta Crystallographica Section B, 1993] +# DOI: https://dx.doi.org/10.1107/S0108768192004701 +# Crystallography Open Database entry 2100916 +# https://www.crystallography.net/cod/2100916.html +# +# IMPORTANT NOTICE: This is a mostly automatic conversion which has not been +# verified! In particular the @DYNINFO sections might need +# post-editing. Before distributing this file to other people, +# please review this, amend the comments here to document, +# anything done, and remove this notice. +# +# WARNING: Fallback (dummy) Debye temperature values were used for 4 atoms! +# +# NOTICE: crystal structure was verified with spglib to be self-consistent. +# +@CELL + lengths 10.332 6.01 4.692 + angles 90 90 90 +@SPACEGROUP + 62 +@ATOMPOSITIONS + Fe .21778 3/4 .47472 + Fe .28222 1/4 .97472 + Fe .71778 3/4 .02528 + Fe .78222 1/4 .52528 + Li 0 0 0 + Li 0 1/2 0 + Li 1/2 0 1/2 + Li 1/2 1/2 1/2 + O .0429 3/4 .706 + O .09678 1/4 .7428 + O .16558 .04646 .2848 + O .16558 .45354 .2848 + O .33442 .54646 .7848 + O .33442 .95354 .7848 + O .40322 3/4 .2428 + O .4571 1/4 .206 + O .5429 3/4 .794 + O .59678 1/4 .7572 + O .66558 .04646 .2152 + O .66558 .45354 .2152 + O .83442 .54646 .7152 + O .83442 .95354 .7152 + O .90322 3/4 .2572 + O .9571 1/4 .294 + P .09486 1/4 .4182 + P .40514 3/4 .9182 + P .59486 1/4 .0818 + P .90514 3/4 .5818 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Fe + fraction 1/7 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element Li + fraction 1/7 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element O + fraction 4/7 + type vdosdebye + debye_temp 300 +@DYNINFO + # WARNING: Using fallback Debye temperature value! + element P + fraction 1/7 + type vdosdebye + debye_temp 300 diff --git a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.instr b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.instr index a01b5f31b..6ba51c97e 100644 --- a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.instr +++ b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.instr @@ -652,7 +652,7 @@ ROTATED (0, 0, 0) RELATIVE origin SPLIT 100 COMPONENT Fealpha = PowderN( - reflections = "Fe.laz", radius=0.006, yheight=0.08, + reflections = "stdlib::Fe_sg229_Iron-alpha.ncmat", radius=0.006, yheight=0.08, Vc = 2.867*2.867*2.867, p_inc=0.1, Strain=0, barns = 1, d_phi=10, p_transmit=0.1) AT (0, 0, 0) RELATIVE arm_sample diff --git a/mcstas-comps/examples/FRMII/FRMII_SPODI/FRMII_SPODI.instr b/mcstas-comps/examples/FRMII/FRMII_SPODI/FRMII_SPODI.instr index 848abb5dd..616fc5a8e 100644 --- a/mcstas-comps/examples/FRMII/FRMII_SPODI/FRMII_SPODI.instr +++ b/mcstas-comps/examples/FRMII/FRMII_SPODI/FRMII_SPODI.instr @@ -201,7 +201,7 @@ COMPONENT div_sample = Divergence_monitor( // Sample holder SPLIT NSplitHolder COMPONENT sample_holder = PowderN( - reflections="V.lau", radius=Rsample+0.51e-3, yheight=Hsample, + reflections="stdlib::V_sg229.ncmat", radius=Rsample+0.51e-3, yheight=Hsample, concentric=1, thickness=0.5e-3, p_interact=0.1, d_phi=cone_angle) WHEN (Holder) AT (0, 0, L2) RELATIVE spodi_beam diff --git a/mcstas-comps/examples/FRMII/FRMII_SPODI_MULTI/FRMII_SPODI_MULTI.instr b/mcstas-comps/examples/FRMII/FRMII_SPODI_MULTI/FRMII_SPODI_MULTI.instr index b0e07021c..434d49d96 100644 --- a/mcstas-comps/examples/FRMII/FRMII_SPODI_MULTI/FRMII_SPODI_MULTI.instr +++ b/mcstas-comps/examples/FRMII/FRMII_SPODI_MULTI/FRMII_SPODI_MULTI.instr @@ -206,7 +206,7 @@ COMPONENT div_sample = Divergence_monitor( // Sample holder SPLIT NSplitHolder COMPONENT sample_holder = PowderN( - reflections="V.lau", radius=Rsample+0.51e-3, yheight=Hsample, + reflections="stdlib::V_sg229.ncmat", radius=Rsample+0.51e-3, yheight=Hsample, concentric=1, thickness=0.5e-3, p_interact=0.1, d_phi=cone_angle) WHEN (Holder) AT (0, 0, L2) RELATIVE spodi_beam diff --git a/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.instr b/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.instr index 43f49e060..4fbb4b65e 100644 --- a/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.instr +++ b/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.instr @@ -243,7 +243,7 @@ COMPONENT D2B_Sample_Lambda = Monitor_nD( SPLIT COMPONENT Arm_Sample = Arm() AT (0, 0, L2) RELATIVE mono_out -COMPONENT Container_in = PowderN(reflections="V.lau", radius = 0.0025+0.00051, thickness = 0.0005, yheight = 0.04, +COMPONENT Container_in = PowderN(reflections="stdlib::V_sg229.ncmat", radius = 0.0025+0.00051, thickness = 0.0005, yheight = 0.04, concentric = 1, p_interact=0.1, d_phi=RAD2DEG*atan2(Dheight+0.05,L3)) AT (0, 0, 0) RELATIVE Arm_Sample diff --git a/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.instr b/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.instr index a9148ae8b..5880e8c02 100644 --- a/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.instr +++ b/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.instr @@ -243,7 +243,7 @@ COMPONENT D2B_Sample_Lambda = Monitor_nD( SPLIT COMPONENT Arm_Sample = Arm() AT (0, 0, L2) RELATIVE mono_out - /*COMPONENT Container_in = PowderN(reflections="V.laz", radius = 0.0025+0.00051, thickness = 0.0005, yheight = 0.04, + /*COMPONENT Container_in = PowderN(reflections="stdlib::V_sg229.ncmat", radius = 0.0025+0.00051, thickness = 0.0005, yheight = 0.04, concentric = 1, p_interact=0.1, d_phi=RAD2DEG*atan2(Dheight+0.05,L3)) AT (0, 0, 0) RELATIVE Arm_Sample*/ diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.instr b/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.instr index 83dfc9548..64ca4ad4f 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.instr +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.instr @@ -151,7 +151,7 @@ EXTEND %{ COMPONENT Environment_in=PowderN( radius = 0.05, yheight = 0.1, thickness=0.002, - reflections="Al.laz", concentric=1, d_phi=RAD2DEG*atan2(0.5,L3), + reflections="stdlib::Al_sg225.ncmat", concentric=1, d_phi=RAD2DEG*atan2(0.5,L3), p_transmit=0.95, p_inc=0, barns=1) AT (0, 0, 0) RELATIVE SamplePos EXTEND %{ diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.instr b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.instr index c134664e7..6805c0c5d 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.instr +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.instr @@ -151,7 +151,7 @@ EXTEND %{ /* COMPONENT Environment_in=PowderN( radius = 0.05, yheight = 0.1, thickness=0.002, - reflections="Al.laz", concentric=1, d_phi=RAD2DEG*atan2(0.5,L3), + reflections="stdlib::Al_sg225.ncmat", concentric=1, d_phi=RAD2DEG*atan2(0.5,L3), p_transmit=0.95, p_inc=0, barns=1) AT (0, 0, 0) RELATIVE SamplePos EXTEND %{ diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.instr b/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.instr index 5e21acc23..6d8ae989c 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.instr +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.instr @@ -222,7 +222,7 @@ EXTEND %{ /* Se fuerza que la difraccion se concentre en el detector, para aumentar la eficiencia. */ -COMPONENT Cryo_1 = PowderN(reflections="Al.laz", +COMPONENT Cryo_1 = PowderN(reflections="stdlib::Al_sg225.ncmat", radius = 0.061, thickness = 0.001, yheight = 0.10, concentric = 1, d_phi=RAD2DEG*atan(R_h/L3), p_inc=Inc_Cryo, p_transmit=Trans_Cryo) diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.instr b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.instr index c7a07ba2b..bfdcc44bf 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.instr +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.instr @@ -215,7 +215,7 @@ EXTEND %{ /* Se fuerza que la difraccion se concentre en el detector, para aumentar la eficiencia. */ -/* COMPONENT Cryo_1 = PowderN(reflections="Al.laz", */ +/* COMPONENT Cryo_1 = PowderN(reflections="stdlib::Al_sg225.ncmat", */ /* radius = 0.061, thickness = 0.001, yheight = 0.10, */ /* concentric = 1, d_phi=RAD2DEG*atan(R_h/L3), */ /* p_inc=Inc_Cryo, p_transmit=Trans_Cryo) */ diff --git a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.instr b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.instr index 71c00ef72..b840e8cec 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.instr +++ b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.instr @@ -116,7 +116,7 @@ EXTEND %{ COMPONENT Environment_in=PowderN( radius = 0.05, yheight = 0.1, thickness=0.002, - reflections="Al.laz", concentric=1, d_phi=RAD2DEG*atan2(0.5,L3), + reflections="stdlib::Al_sg225.ncmat", concentric=1, d_phi=RAD2DEG*atan2(0.5,L3), p_transmit=0.95, p_inc=0, barns=1) AT (0, 0, 0) RELATIVE SamplePos EXTEND %{ diff --git a/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.instr b/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.instr index 9c1c97e32..b0bffbb52 100755 --- a/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.instr +++ b/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.instr @@ -208,7 +208,7 @@ COMPONENT HCS = Source_gen( AT (0, 0, 0) RELATIVE Origin COMPONENT HCS_Al = PowderN( - reflections="Al.laz", xwidth=0.17, yheight=0.12, zdepth=Al_Thickness, p_interact=0.05, p_inc=0.005, p_transmit=0.9450, d_phi=10) + reflections="stdlib::Al_sg225.ncmat", xwidth=0.17, yheight=0.12, zdepth=Al_Thickness, p_interact=0.05, p_inc=0.005, p_transmit=0.9450, d_phi=10) AT (0,0,0.21) RELATIVE HCS COMPONENT COPY(HCS_Al) = COPY(HCS_Al) diff --git a/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.instr b/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.instr index a67086152..903bd7326 100644 --- a/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.instr +++ b/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.instr @@ -99,7 +99,7 @@ COMPONENT HCS = Source_gen( AT (0, 0, 0) RELATIVE Origin COMPONENT HCS_Al = PowderN( - reflections="Al.laz", xwidth=0.17, yheight=0.12, zdepth=Al_Thickness, p_inc=0.005, p_transmit=0.9450, p_interact=0.05, d_phi=10) + reflections="stdlib::Al_sg225.ncmat", xwidth=0.17, yheight=0.12, zdepth=Al_Thickness, p_inc=0.005, p_transmit=0.9450, p_interact=0.05, d_phi=10) AT (0,0,0.21) RELATIVE HCS COMPONENT COPY(HCS_Al) = COPY(HCS_Al) diff --git a/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.instr b/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.instr index de2c4fab5..81b75195b 100644 --- a/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.instr +++ b/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.instr @@ -186,14 +186,14 @@ EXTEND %{ %} COMPONENT Det_input = PowderN( - reflections="Al.lau", radius=RadiusDet, thickness=DetEthick, concentric=1, p_transmit=0.8, p_inc=0.05) + reflections="stdlib::Al_sg225.ncmat", radius=RadiusDet, thickness=DetEthick, concentric=1, p_transmit=0.8, p_inc=0.05) AT(0,0,RadiusDet) RELATIVE Det_pos EXTEND %{ if (SCATTERED) flag_al=1; %} COMPONENT Det_input_flat = PowderN( - reflections="Al.lau", xwidth=0.5, yheight=0.5, zdepth=5e-3, p_transmit=0.8, p_inc=0.05) + reflections="stdlib::Al_sg225.ncmat", xwidth=0.5, yheight=0.5, zdepth=5e-3, p_transmit=0.8, p_inc=0.05) AT(0,0,DetEgap) RELATIVE Det_pos EXTEND %{ if (SCATTERED) flag_al=1; diff --git a/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.instr b/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.instr index 46ffe0132..e724e67bd 100644 --- a/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.instr +++ b/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.instr @@ -193,7 +193,7 @@ COMPONENT HCS = Source_gen( AT (0, 0, 0) RELATIVE Origin COMPONENT HCS_Al = PowderN( - reflections="Al.laz", xwidth=0.17, yheight=0.12, zdepth=Al_Thickness, p_interact=0.05, p_inc=0.005, p_transmit=0.9450, d_phi=10) + reflections="stdlib::Al_sg225.ncmat", xwidth=0.17, yheight=0.12, zdepth=Al_Thickness, p_interact=0.05, p_inc=0.005, p_transmit=0.9450, d_phi=10) AT (0,0,0.21) RELATIVE HCS COMPONENT COPY(HCS_Al) = COPY(HCS_Al) diff --git a/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.instr b/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.instr index 7120cf370..0ec33e8ae 100644 --- a/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.instr +++ b/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.instr @@ -161,7 +161,7 @@ EXTEND %{ vix=vx,viy=vy,viz=vz; %} -COMPONENT cryostat_in = PowderN(radius=0.035, yheight=.1,reflections="Al.laz", thickness=2e-3, concentric=1,p_inc=0.2,p_transmit=0.7) +COMPONENT cryostat_in = PowderN(radius=0.035, yheight=.1,reflections="stdlib::Al_sg225.ncmat", thickness=2e-3, concentric=1,p_inc=0.2,p_transmit=0.7) AT (0, 0, 0) RELATIVE SamplePosition EXTEND %{ if (SCATTERED) flag_env++; diff --git a/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.instr b/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.instr index 1046a4cdc..ac8d39c59 100644 --- a/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.instr +++ b/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.instr @@ -152,8 +152,8 @@ AT (0.0, 0.0, 10.00) RELATIVE pinhole // must here be static, but the grammar tests for a '{' as fisrt char. The 'Lazy' // #define is indeed a {value}, but not replaced before the code generation takes // place. -SPLIT 102 COMPONENT sample = PowderN(reflections="Na2Ca3Al2F14.laz", radius = 0.002, yheight = 0.01, - Vc = 1079.1, sigma_abs = 2.9464e-3, sigma_inc = 3.4176, d_phi=60, format={17,6,0,0,0,0,0,13,0 }) +SPLIT 102 COMPONENT sample = PowderN(reflections="autogen_Al2Ca3F14Na2_sg199_cod1000236.ncmat", radius = 0.002, yheight = 0.01, + d_phi=60) AT (0.0, 0.0, 56) RELATIVE Origin EXTEND %{ diff --git a/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.instr b/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.instr index 4ddb6dcaf..4754d112a 100644 --- a/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.instr +++ b/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.instr @@ -490,7 +490,7 @@ COMPONENT DIV_Center_of_rotation = Divergence_monitor( AT (0,0,0) RELATIVE Sample_location*/ SPLIT COMPONENT Sample = PowderN( - reflections = "Fe.laz", radius = 0.005, + reflections = "stdlib::Fe_sg229_Iron-alpha.ncmat", radius = 0.005, yheight = 0.05) AT (0,0,0) RELATIVE Sample_location /*EXTEND diff --git a/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.instr b/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.instr index ecca7b795..2bc3cd927 100644 --- a/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.instr +++ b/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.instr @@ -531,7 +531,7 @@ COMPONENT DIV_Center_of_rotation = Divergence_monitor( %}*/ SPLIT COMPONENT Sample = PowderN( - reflections = "Fe.laz", radius = 0.006, + reflections = "stdlib::Fe_sg229_Iron-alpha.ncmat", radius = 0.006, yheight = 0.05) AT (0,0,0) RELATIVE Sample_location EXTEND diff --git a/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.instr b/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.instr index 05a3c02ae..be089d14b 100644 --- a/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.instr +++ b/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.instr @@ -148,7 +148,7 @@ SPLIT 100 COMPONENT sample_position = Arm() COMPONENT container_in = PowderN( radius=0.01/2, yheight=0.04, thickness=-50e-6, - reflections="V.lau", concentric=1, d_phi=50, p_transmit=.95) + reflections="stdlib::V_sg229.ncmat", concentric=1, d_phi=50, p_transmit=.95) AT (0, 0, 0) RELATIVE sample_position COMPONENT sample = PowderN( diff --git a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.instr b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.instr index f2cf2fe1c..bb2f21c3b 100644 --- a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.instr +++ b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.instr @@ -81,14 +81,14 @@ COMPONENT sample_position_rotated = Arm() %} COMPONENT sample_outer1 = PowderN(radius=.03/2, yheight=0.05, - reflections="Fe.laz", concentric=1, thickness=0.01/2) + reflections="stdlib::Fe_sg229_Iron-alpha.ncmat", concentric=1, thickness=0.01/2) AT (0,0,0) RELATIVE sample_position_rotated EXTEND %{ if (SCATTERED) sample_scattered+=SCATTERED; %} COMPONENT sample_inner = PowderN(radius=.02/2, yheight=0.04, - reflections="Cu.laz") + reflections="stdlib::Cu_sg225.ncmat") AT (0,0,0) RELATIVE sample_position_rotated EXTEND %{ if (SCATTERED) sample_scattered+=SCATTERED; diff --git a/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.instr b/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.instr index 67928ff40..b106c4bf2 100644 --- a/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.instr +++ b/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.instr @@ -110,11 +110,11 @@ COMPONENT Be_Position = Arm() COMPONENT Be_Cryostat = PowderN( yheight=.2, radius=.144, thickness=.002, - reflections = "Al.lau", concentric=1, p_transmit=.95, p_inc=1e-4) + reflections = "stdlib::Al_sg225.ncmat", concentric=1, p_transmit=.95, p_inc=1e-4) AT (0,0,0) RELATIVE Be_Position COMPONENT Be_Filter = PowderN( - xwidth=.15, yheight=.15, zdepth=Be_Filter_depth, reflections="Be.laz", p_inc=1e-4) + xwidth=.15, yheight=.15, zdepth=Be_Filter_depth, reflections="stdlib::Be_sg194.ncmat", p_inc=1e-4) AT (0,0,0) RELATIVE Be_Position COMPONENT Be_Cryostat_out = COPY(Be_Cryostat)(concentric=0) diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.instr b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.instr index 935620897..731196d1d 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.instr +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.instr @@ -82,7 +82,7 @@ EXTEND %{ p = INSTRUMENT_GETPAR(Pp0); %} -COMPONENT Powder = PowderN(radius=0.01,reflections="Al.lau",p_inc=0.01,p_transmit=0.01) +COMPONENT Powder = PowderN(radius=0.01,reflections="stdlib::Al_sg225.ncmat",p_inc=0.01,p_transmit=0.01) WHEN (SAMPLE==2) AT (0,0,0.1) RELATIVE Slit EXTEND %{ if(!SCATTERED) ABSORB; diff --git a/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.instr b/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.instr index ab5d3c126..d32fbaa5c 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.instr +++ b/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.instr @@ -89,7 +89,7 @@ COMPONENT Al_window = Al_window( thickness=thickness) WHEN Window==1 AT (0, 0, 10+u) RELATIVE Source -COMPONENT PowderN = PowderN(xwidth=0.11, yheight=0.11, zdepth=thickness, reflections="Al.laz", p_transmit=0.8, p_inc=0.1, p_interact=0.1) +COMPONENT PowderN = PowderN(xwidth=0.11, yheight=0.11, zdepth=thickness, reflections="stdlib::Al_sg225.ncmat", p_transmit=0.8, p_inc=0.1, p_interact=0.1) WHEN Window==2 AT (0, 0, 10+u) RELATIVE Source COMPONENT NCrystal_sample = NCrystal_sample(xwidth=0.11, yheight=0.11, zdepth=thickness, cfg="autogen_Al_sg225_cod1502689.ncmat") diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.instr b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.instr index 2a4124f7b..0d8182209 100644 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.instr +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.instr @@ -97,7 +97,7 @@ COMPONENT diskchopper0 = DiskChopper( WHEN (chopper==0) AT (0, 0, 0) RELATIVE Arm0 GROUP Disks -COMPONENT Slab1 = PowderN(yheight=tz, radius=0.25, reflections="B4C.lau",p_transmit=0.8) +COMPONENT Slab1 = PowderN(yheight=tz, radius=0.25, reflections="stdlib::B4C_sg166_BoronCarbide.ncmat",p_transmit=0.8) WHEN (chopper==0 && ABSORBER) AT (0,-deltay,tz/2) RELATIVE Arm0 ROTATED (90,0,0) RELATIVE Arm0 GROUP Disks diff --git a/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.instr b/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.instr index 62ee4cc57..0b9d4bfa4 100644 --- a/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.instr +++ b/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.instr @@ -96,7 +96,7 @@ COMPONENT FilterB = NCrystal_sample(yheight=0.2, xwidth=0.2, zdepth=zdepth,cfg=N WHEN Filter==1 AT (0, 0, 1e-3) RELATIVE L_in -COMPONENT FilterC = PowderN(yheight=0.2, xwidth=0.2, zdepth=zdepth,reflections="Be.laz") +COMPONENT FilterC = PowderN(yheight=0.2, xwidth=0.2, zdepth=zdepth,reflections="stdlib::Be_sg194.ncmat") WHEN Filter==2 AT (0, 0, 1e-3) RELATIVE L_in COMPONENT FilterD = Isotropic_Sqw(yheight=0.2, xwidth=0.2, zdepth=zdepth,Sqw_coh="Be.laz") diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.instr b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.instr index f1ec2cbe7..472714c6b 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.instr +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.instr @@ -80,7 +80,7 @@ COMPONENT SampleSlit = Slit (xwidth=2.1*radius,yheight=0.1) AT (0,0,0.89*Distance) RELATIVE PREVIOUS SPLIT SPLITS COMPONENT Sample = PowderN( - reflections = "Na2Ca3Al2F14.laz", radius = radius, + reflections = "autogen_Al2Ca3F14Na2_sg199_cod1000236.ncmat", radius = radius, yheight = 0.1,d_phi=D_PHI,sigma_abs=sig_abs) AT (0, 0, Distance) RELATIVE Source EXTEND %{ diff --git a/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.instr b/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.instr index 101fdc6fb..436f7529b 100755 --- a/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.instr +++ b/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.instr @@ -85,7 +85,7 @@ EXTEND first_master = number_of_scattering_events; %} -COMPONENT cylinder_sample_powder = PowderN(reflections="Cu.laz", radius=0.01, yheight=0.03, pack=1, p_interact=0.8, thickness=0) +COMPONENT cylinder_sample_powder = PowderN(reflections="stdlib::Cu_sg225.ncmat", radius=0.01, yheight=0.03, pack=1, p_interact=0.8, thickness=0) AT (0,0,0) RELATIVE beam_center ROTATED (0,0,0) RELATIVE beam_center EXTEND diff --git a/mcstas-comps/examples/Union_demos/External_component/External_component.instr b/mcstas-comps/examples/Union_demos/External_component/External_component.instr index d3520dc29..11f8eebfb 100755 --- a/mcstas-comps/examples/Union_demos/External_component/External_component.instr +++ b/mcstas-comps/examples/Union_demos/External_component/External_component.instr @@ -188,7 +188,7 @@ EXTEND first_master = number_of_scattering_events; %} -COMPONENT cylinder_sample_powder = PowderN(reflections="Cu.laz", radius=0.01, yheight=0.03, pack=1, p_interact=0.8, thickness=0) +COMPONENT cylinder_sample_powder = PowderN(reflections="stdlib::Cu_sg225.ncmat", radius=0.01, yheight=0.03, pack=1, p_interact=0.8, thickness=0) AT (0,0,0) RELATIVE beam_center ROTATED (0,0,0) RELATIVE beam_center EXTEND diff --git a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.instr b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.instr index 0ede6ce03..e6a03dbb8 100644 --- a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.instr +++ b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.instr @@ -112,7 +112,7 @@ COMPONENT lambda_sample = L_monitor( */ COMPONENT entry_side= PowderN( - reflections="Al.laz",barns=1, radius=sample_radius+al_thickness, thickness=al_thickness, yheight=sample_height +2*al_thickness,d_phi=2, p_transmit=0.8,concentric=1) + reflections="stdlib::Al_sg225.ncmat",barns=1, radius=sample_radius+al_thickness, thickness=al_thickness, yheight=sample_height +2*al_thickness,d_phi=2, p_transmit=0.8,concentric=1) WHEN (container >0) AT (0, 0, L1) RELATIVE source diff --git a/mcstas-comps/samples/PowderN.comp b/mcstas-comps/samples/PowderN.comp index 36f6baf58..55c484b4b 100644 --- a/mcstas-comps/samples/PowderN.comp +++ b/mcstas-comps/samples/PowderN.comp @@ -414,7 +414,38 @@ SHARE int read_line_data_ncrystal (const char* cfgstr, struct line_info_struct* info) { - ncrystal_info_t ncobj = ncrystal_create_info (cfgstr); + /* NCrystal has no notion of the McStas search path (current dir, + * instrument source/executable directory, HOME, MCSTAS/data, + * MCSTAS/contrib -- see Open_File() in read_table-lib.c), so a bare + * on-disk filename (e.g. "autogen_Foo_sg62_cod123.ncmat") that would + * be found for a plain .laz/.lau reflections file is NOT automatically + * found when passed on to NCrystal as-is. Resolve it here using the + * same, already platform-independent Open_File() search, and hand + * NCrystal the full resolved path instead. Virtual/online sources + * (identified by "::", e.g. "stdlib::Foo.ncmat" or "codid::1234") and + * absolute paths are left untouched: Open_File() either succeeds + * immediately (absolute paths are tried verbatim, first) or fails + * cleanly, in which case cfgstr is passed on to NCrystal unmodified. */ + char ncrystal_cfgstr[1024]; + const char *effective_cfgstr = cfgstr; + { + const char *semicolon = strchr (cfgstr, ';'); + size_t flen = semicolon ? (size_t) (semicolon - cfgstr) : strlen (cfgstr); + char filepart[1024]; + char resolved_path[1024]; + FILE *probe; + if (flen >= sizeof (filepart)) flen = sizeof (filepart) - 1; + strncpy (filepart, cfgstr, flen); + filepart[flen] = '\0'; + probe = Open_File (filepart, "r", resolved_path); + if (probe) { + fclose (probe); + snprintf (ncrystal_cfgstr, sizeof (ncrystal_cfgstr), "%s%s", + resolved_path, semicolon ? semicolon : ""); + effective_cfgstr = ncrystal_cfgstr; + } + } + ncrystal_info_t ncobj = ncrystal_create_info (effective_cfgstr); if (ncrystal_info_nphases (ncobj) != 0) { exit (fprintf (stderr, "PowderN: %s: Error: Only single phase NCrystal " @@ -428,7 +459,7 @@ SHARE "does not contain reflections\n", info->compname); } else { - MPI_MASTER (printf ("PowderN: %s: Loading %d reflections from %s\n", info->compname, nhkl, cfgstr);); + MPI_MASTER (printf ("PowderN: %s: Loading %d reflections from %s\n", info->compname, nhkl, effective_cfgstr);); } unsigned spacegroup, n_atoms; double lattice_a, lattice_b, lattice_c, alpha, beta, gamma, cell_volume;