git: 88fff0726eb0 - main - science/ncrystal: New port: Library for thermal neutron transport in crystals and other materials

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Wed, 08 Nov 2023 03:56:46 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=88fff0726eb04171fd3ec25018836e356c704770

commit 88fff0726eb04171fd3ec25018836e356c704770
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-11-07 22:05:14 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-11-08 03:56:42 +0000

    science/ncrystal: New port: Library for thermal neutron transport in crystals and other materials
---
 science/Makefile           |   1 +
 science/ncrystal/Makefile  |  26 +++++
 science/ncrystal/distinfo  |   3 +
 science/ncrystal/pkg-descr |   7 ++
 science/ncrystal/pkg-plist | 272 +++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 309 insertions(+)

diff --git a/science/Makefile b/science/Makefile
index 38e7d519790b..b4b719897c39 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -204,6 +204,7 @@
     SUBDIR += multiwfn
     SUBDIR += mutationpp
     SUBDIR += namd
+    SUBDIR += ncrystal
     SUBDIR += nest
     SUBDIR += netcdf
     SUBDIR += netcdf-cxx
diff --git a/science/ncrystal/Makefile b/science/ncrystal/Makefile
new file mode 100644
index 000000000000..40ba3d2e3394
--- /dev/null
+++ b/science/ncrystal/Makefile
@@ -0,0 +1,26 @@
+PORTNAME=	ncrystal
+DISTVERSIONPREFIX=	v
+DISTVERSION=	3.7.1
+CATEGORIES=	science # physics
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Library for thermal neutron transport in crystals and other materials
+WWW=		https://mctools.github.io/ncrystal/
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		cmake python shebangfix
+USE_LDCONFIG=	yes
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	mctools
+
+SHEBANG_FILES=	scripts/* \
+		cmake/ncrystal-config.in \
+		ncrystal_mcstas/ncrystal_preparemcstasdir
+
+post-install: # workaround for https://github.com/mctools/ncrystal/issues/150
+	@${RM} ${STAGEDIR}${PREFIX}/*.sh
+
+.include <bsd.port.mk>
diff --git a/science/ncrystal/distinfo b/science/ncrystal/distinfo
new file mode 100644
index 000000000000..6e0e9a659c6a
--- /dev/null
+++ b/science/ncrystal/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1699390662
+SHA256 (mctools-ncrystal-v3.7.1_GH0.tar.gz) = ce523dd3aca1d0fd1989cd4d48cc3e2ce90590c47e219e2f2394677c63a87076
+SIZE (mctools-ncrystal-v3.7.1_GH0.tar.gz) = 1839587
diff --git a/science/ncrystal/pkg-descr b/science/ncrystal/pkg-descr
new file mode 100644
index 000000000000..11f0f875bc5d
--- /dev/null
+++ b/science/ncrystal/pkg-descr
@@ -0,0 +1,7 @@
+NCrystal is a library and associated tools which enables calculations for
+Monte Carlo simulations of thermal neutrons in crystals and other materials,
+supporting a range of physics including both coherent, incoherent, elastic and
+inelastic scatterings in a wide range of materials, including crystal powders,
+mosaic single crystals, layered single crystals, amorphous solids, liquids, and
+gasses. Multiphase materials or isotopically enriched materials are supported as
+well, and the framework furthermore supports phase-contrast (SANS) physics.
diff --git a/science/ncrystal/pkg-plist b/science/ncrystal/pkg-plist
new file mode 100644
index 000000000000..514ee5f7f029
--- /dev/null
+++ b/science/ncrystal/pkg-plist
@@ -0,0 +1,272 @@
+bin/ncrystal-config
+bin/ncrystal_cif2ncmat
+bin/ncrystal_endf2ncmat
+bin/ncrystal_hfg2ncmat
+bin/ncrystal_inspectfile
+bin/ncrystal_ncmat2cpp
+bin/ncrystal_ncmat2hkl
+bin/ncrystal_onlinedb2ncmat
+bin/ncrystal_preparemcstasdir
+bin/ncrystal_vdos2ncmat
+bin/ncrystal_verifyatompos
+bin/nctool
+include/NCrystal/NCAtomData.hh
+include/NCrystal/NCCompositionUtils.hh
+include/NCrystal/NCDataSources.hh
+include/NCrystal/NCDefs.hh
+include/NCrystal/NCDump.hh
+include/NCrystal/NCException.hh
+include/NCrystal/NCFact.hh
+include/NCrystal/NCFactImpl.hh
+include/NCrystal/NCFactRequests.hh
+include/NCrystal/NCFactTypes.hh
+include/NCrystal/NCFmt.hh
+include/NCrystal/NCImmutBuf.hh
+include/NCrystal/NCInfo.hh
+include/NCrystal/NCInfoBuilder.hh
+include/NCrystal/NCInfoTypes.hh
+include/NCrystal/NCLoadNCMAT.hh
+include/NCrystal/NCMatCfg.hh
+include/NCrystal/NCMem.hh
+include/NCrystal/NCNCMATData.hh
+include/NCrystal/NCParseNCMAT.hh
+include/NCrystal/NCPluginBoilerplate.hh
+include/NCrystal/NCPluginMgmt.hh
+include/NCrystal/NCProc.hh
+include/NCrystal/NCProcImpl.hh
+include/NCrystal/NCRNG.hh
+include/NCrystal/NCSABData.hh
+include/NCrystal/NCSCOrientation.hh
+include/NCrystal/NCSmallVector.hh
+include/NCrystal/NCTextData.hh
+include/NCrystal/NCTypes.hh
+include/NCrystal/NCVariant.hh
+include/NCrystal/NCVersion.hh
+include/NCrystal/NCrystal.hh
+include/NCrystal/internal/NCAbsOOV.hh
+include/NCrystal/internal/NCAtomDB.hh
+include/NCrystal/internal/NCAtomDBExtender.hh
+include/NCrystal/internal/NCAtomUtils.hh
+include/NCrystal/internal/NCBkgdExtCurve.hh
+include/NCrystal/internal/NCCfgManip.hh
+include/NCrystal/internal/NCCfgTypes.hh
+include/NCrystal/internal/NCCfgVars.hh
+include/NCrystal/internal/NCDebyeMSD.hh
+include/NCrystal/internal/NCDynInfoUtils.hh
+include/NCrystal/internal/NCDynLoader.hh
+include/NCrystal/internal/NCElIncScatter.hh
+include/NCrystal/internal/NCElIncXS.hh
+include/NCrystal/internal/NCEqRefl.hh
+include/NCrystal/internal/NCFactoryUtils.hh
+include/NCrystal/internal/NCFastConvolve.hh
+include/NCrystal/internal/NCFileUtils.hh
+include/NCrystal/internal/NCFillHKL.hh
+include/NCrystal/internal/NCFreeGas.hh
+include/NCrystal/internal/NCFreeGasUtils.hh
+include/NCrystal/internal/NCGasMixUtils.hh
+include/NCrystal/internal/NCGaussMos.hh
+include/NCrystal/internal/NCGaussOnSphere.hh
+include/NCrystal/internal/NCIofQHelper.hh
+include/NCrystal/internal/NCIter.hh
+include/NCrystal/internal/NCKinUtils.hh
+include/NCrystal/internal/NCLCBragg.hh
+include/NCrystal/internal/NCLCRefModels.hh
+include/NCrystal/internal/NCLCUtils.hh
+include/NCrystal/internal/NCLatticeUtils.hh
+include/NCrystal/internal/NCMath.hh
+include/NCrystal/internal/NCMatrix.hh
+include/NCrystal/internal/NCOrientUtils.hh
+include/NCrystal/internal/NCPCBragg.hh
+include/NCrystal/internal/NCPlaneProvider.hh
+include/NCrystal/internal/NCPointwiseDist.hh
+include/NCrystal/internal/NCRandUtils.hh
+include/NCrystal/internal/NCRomberg.hh
+include/NCrystal/internal/NCRotMatrix.hh
+include/NCrystal/internal/NCSABEval.hh
+include/NCrystal/internal/NCSABExtender.hh
+include/NCrystal/internal/NCSABFactory.hh
+include/NCrystal/internal/NCSABIntegrator.hh
+include/NCrystal/internal/NCSABSampler.hh
+include/NCrystal/internal/NCSABSamplerModels.hh
+include/NCrystal/internal/NCSABScatter.hh
+include/NCrystal/internal/NCSABScatterHelper.hh
+include/NCrystal/internal/NCSABUCN.hh
+include/NCrystal/internal/NCSABUtils.hh
+include/NCrystal/internal/NCSABXSProvider.hh
+include/NCrystal/internal/NCSANSSphScat.hh
+include/NCrystal/internal/NCSANSUtils.hh
+include/NCrystal/internal/NCSCBragg.hh
+include/NCrystal/internal/NCScatKnlData.hh
+include/NCrystal/internal/NCSpan.hh
+include/NCrystal/internal/NCSpline.hh
+include/NCrystal/internal/NCStrView.hh
+include/NCrystal/internal/NCString.hh
+include/NCrystal/internal/NCVDOSEval.hh
+include/NCrystal/internal/NCVDOSGn.hh
+include/NCrystal/internal/NCVDOSToScatKnl.hh
+include/NCrystal/internal/NCVector.hh
+include/NCrystal/ncapi.h
+include/NCrystal/ncrystal.h
+lib/cmake/NCrystal/NCrystalConfig.cmake
+lib/cmake/NCrystal/NCrystalConfigVersion.cmake
+lib/cmake/NCrystal/NCrystalTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/NCrystal/NCrystalTargets.cmake
+lib/libNCrystal.so
+share/NCrystal/data/AcrylicGlass_C5O2H8.ncmat
+share/NCrystal/data/AgBr_sg225_SilverBromide.ncmat
+share/NCrystal/data/Ag_sg225.ncmat
+share/NCrystal/data/Al2O3_sg167_Corundum.ncmat
+share/NCrystal/data/Al4C3_sg166_AluminiumCarbide.ncmat
+share/NCrystal/data/AlN_sg186_AluminumNitride.ncmat
+share/NCrystal/data/Al_sg225.ncmat
+share/NCrystal/data/Ar_Gas_STP.ncmat
+share/NCrystal/data/Au_sg225.ncmat
+share/NCrystal/data/BaF2_sg225_BariumFluoride.ncmat
+share/NCrystal/data/BaO_sg225_BariumOxide.ncmat
+share/NCrystal/data/Ba_sg229.ncmat
+share/NCrystal/data/Be3N2_sg206_BerylliumNitride.ncmat
+share/NCrystal/data/BeF2_sg152_Beryllium_Fluoride.ncmat
+share/NCrystal/data/BeO_sg186.ncmat
+share/NCrystal/data/Be_sg194.ncmat
+share/NCrystal/data/Bi_sg166.ncmat
+share/NCrystal/data/C_sg194_pyrolytic_graphite.ncmat
+share/NCrystal/data/C_sg227_Diamond.ncmat
+share/NCrystal/data/CaCO3_sg62_Aragonite.ncmat
+share/NCrystal/data/CaF2_sg225_CalciumFlouride.ncmat
+share/NCrystal/data/CaH2_sg62_CalciumHydride.ncmat
+share/NCrystal/data/CaO2H2_sg164_CalciumHydroxide.ncmat
+share/NCrystal/data/CaO_sg225_CalciumOxide.ncmat
+share/NCrystal/data/CaSiO3_sg2_Wollastonite.ncmat
+share/NCrystal/data/Ca_sg225.ncmat
+share/NCrystal/data/Ca_sg229_Calcium-gamma.ncmat
+share/NCrystal/data/CeO2_sg225_CeriumOxide.ncmat
+share/NCrystal/data/Cr_sg229.ncmat
+share/NCrystal/data/Cu2O_sg224_Cuprite.ncmat
+share/NCrystal/data/Cu_sg225.ncmat
+share/NCrystal/data/Dy2O3_sg206_DysprosiumOxide.ncmat
+share/NCrystal/data/Epoxy_Araldite506_C18H20O3.ncmat
+share/NCrystal/data/Fe_sg225_Iron-gamma.ncmat
+share/NCrystal/data/Fe_sg229_Iron-alpha.ncmat
+share/NCrystal/data/GaN_sg186_GalliumNitride.ncmat
+share/NCrystal/data/GaSe_sg194_GalliumSelenide.ncmat
+share/NCrystal/data/Ge3Bi4O12_sg220_BismuthGermanate.ncmat
+share/NCrystal/data/Ge_sg227.ncmat
+share/NCrystal/data/He_Gas_STP.ncmat
+share/NCrystal/data/HfO2_sg14_HafniumOxide.ncmat
+share/NCrystal/data/Ho2O3_sg206_HolmiumOxide.ncmat
+share/NCrystal/data/KBr_sg225_PotassiumBromide.ncmat
+share/NCrystal/data/KF_sg225_PotassiumFlouride.ncmat
+share/NCrystal/data/KOH_sg4_PotassiumHydroxide.ncmat
+share/NCrystal/data/K_sg229.ncmat
+share/NCrystal/data/Kapton_C22H10N2O5.ncmat
+share/NCrystal/data/Kr_Gas_STP.ncmat
+share/NCrystal/data/LaBr3_sg176_LanthanumBromide.ncmat
+share/NCrystal/data/Li2O_sg225_LithiumOxide.ncmat
+share/NCrystal/data/Li3N_sg191_LithiumNitride.ncmat
+share/NCrystal/data/LiF_sg225_LithiumFlouride.ncmat
+share/NCrystal/data/LiH_sg225_LithiumHydride.ncmat
+share/NCrystal/data/LiquidHeavyWaterD2O_T293.6K.ncmat
+share/NCrystal/data/LiquidWaterH2O_T293.6K.ncmat
+share/NCrystal/data/Lu2O3_sg206_LutetiumOxide.ncmat
+share/NCrystal/data/Lu2SiO5_sg15.ncmat
+share/NCrystal/data/Mg2SiO4_sg62_MagnesiumSilicate.ncmat
+share/NCrystal/data/MgAl2O4_sg227_MAS.ncmat
+share/NCrystal/data/MgCO3_sg167_MagnesiumCarbonate.ncmat
+share/NCrystal/data/MgD2_sg136_MagnesiumDeuteride.ncmat
+share/NCrystal/data/MgF2_sg136_MagnesiumFlouride.ncmat
+share/NCrystal/data/MgH2_sg136_MagnesiumHydride.ncmat
+share/NCrystal/data/MgO2H2_sg164_MagnesiumHydroxide.ncmat
+share/NCrystal/data/MgO_sg225_Periclase.ncmat
+share/NCrystal/data/Mg_sg194.ncmat
+share/NCrystal/data/Mo_sg229.ncmat
+share/NCrystal/data/Na4Si3Al3O12Cl_sg218_Sodalite.ncmat
+share/NCrystal/data/NaBr_sg225_SodiumBromide.ncmat
+share/NCrystal/data/NaCl_sg225_SodiumChloride.ncmat
+share/NCrystal/data/NaF_sg225_SodiumFlouride.ncmat
+share/NCrystal/data/NaI_sg225_SodiumIodide.ncmat
+share/NCrystal/data/Na_sg229.ncmat
+share/NCrystal/data/Nb_sg229.ncmat
+share/NCrystal/data/Ne_Gas_STP.ncmat
+share/NCrystal/data/Ni_sg225.ncmat
+share/NCrystal/data/Nylon11_C11H21NO.ncmat
+share/NCrystal/data/Nylon12_C12H23NO.ncmat
+share/NCrystal/data/Nylon610_C16H30N2O2.ncmat
+share/NCrystal/data/Nylon66or6_C12H22N2O2.ncmat
+share/NCrystal/data/PEEK_C19H12O3.ncmat
+share/NCrystal/data/PVC_C2H3Cl.ncmat
+share/NCrystal/data/PbF2-beta_sg225_BetaLeadFlouride.ncmat
+share/NCrystal/data/PbO-alpha_sg129_Litharge.ncmat
+share/NCrystal/data/PbO-beta_sg57_Massicot.ncmat
+share/NCrystal/data/PbS_sg225_LeadSulfide.ncmat
+share/NCrystal/data/Pb_sg225.ncmat
+share/NCrystal/data/Pd_sg225.ncmat
+share/NCrystal/data/Polycarbonate_C16O3H14.ncmat
+share/NCrystal/data/Polyester_C10H8O4.ncmat
+share/NCrystal/data/Polyethylene_CH2.ncmat
+share/NCrystal/data/Polylactide_C3H4O2.ncmat
+share/NCrystal/data/Polypropylene_C3H6.ncmat
+share/NCrystal/data/Polystyrene_C8H8.ncmat
+share/NCrystal/data/Pt_sg225.ncmat
+share/NCrystal/data/Rb_sg229.ncmat
+share/NCrystal/data/Rubber_C5H8.ncmat
+share/NCrystal/data/Sc_sg194.ncmat
+share/NCrystal/data/SiC-beta_sg216_BetaSiliconCarbide.ncmat
+share/NCrystal/data/SiO2-alpha_sg154_AlphaQuartz.ncmat
+share/NCrystal/data/SiO2-beta_sg180_BetaQuartz.ncmat
+share/NCrystal/data/Si_sg227.ncmat
+share/NCrystal/data/Sn_sg141.ncmat
+share/NCrystal/data/SrF2_sg225_StrontiumFluoride.ncmat
+share/NCrystal/data/SrH2_sg62_StrontiumHydride.ncmat
+share/NCrystal/data/Sr_sg225.ncmat
+share/NCrystal/data/Th3N4_sg166_ThoriumNitride.ncmat
+share/NCrystal/data/ThO2_sg225_ThoriumDioxide.ncmat
+share/NCrystal/data/Th_sg225.ncmat
+share/NCrystal/data/TiO2_sg136_Rutile.ncmat
+share/NCrystal/data/TiO2_sg141_Anatase.ncmat
+share/NCrystal/data/Ti_sg194.ncmat
+share/NCrystal/data/TlBr_sg221_ThaliumBromide.ncmat
+share/NCrystal/data/Tm2O3_sg206_ThuliumOxide.ncmat
+share/NCrystal/data/UF6_sg62_UraniumHexaflouride.ncmat
+share/NCrystal/data/UO2_sg225_UraniumDioxide.ncmat
+share/NCrystal/data/V_sg229.ncmat
+share/NCrystal/data/W_sg229.ncmat
+share/NCrystal/data/Xe_Gas_STP.ncmat
+share/NCrystal/data/Y2O3_sg206_Yttrium_Oxide.ncmat
+share/NCrystal/data/Y2SiO5_sg15_YSO.ncmat
+share/NCrystal/data/Y3Al5O12_sg230_YAG.ncmat
+share/NCrystal/data/Y_sg194.ncmat
+share/NCrystal/data/ZnF2_sg136_ZincFlouride.ncmat
+share/NCrystal/data/ZnO_sg186_ZincOxide.ncmat
+share/NCrystal/data/ZnS_sg216_Sphalerite.ncmat
+share/NCrystal/data/Zn_sg194.ncmat
+share/NCrystal/data/ZrF4-beta_sg84.ncmat
+share/NCrystal/data/ZrO2_sg137_Zirconia.ncmat
+share/NCrystal/data/ZrO2_sg14_Zirconia.ncmat
+share/NCrystal/data/Zr_sg194.ncmat
+share/NCrystal/data/void.ncmat
+share/NCrystal/mcstas/NCrystal_sample.comp
+share/NCrystal/python/NCrystal/__init__.py
+share/NCrystal/python/NCrystal/_chooks.py
+share/NCrystal/python/NCrystal/_common.py
+share/NCrystal/python/NCrystal/_coreimpl.py
+share/NCrystal/python/NCrystal/_miscimpl.py
+share/NCrystal/python/NCrystal/_nclibpath.py
+share/NCrystal/python/NCrystal/_ncmatimpl.py
+share/NCrystal/python/NCrystal/_numpy.py
+share/NCrystal/python/NCrystal/_testimpl.py
+share/NCrystal/python/NCrystal/api.py
+share/NCrystal/python/NCrystal/atomdata.py
+share/NCrystal/python/NCrystal/cfgstr.py
+share/NCrystal/python/NCrystal/cifutils.py
+share/NCrystal/python/NCrystal/constants.py
+share/NCrystal/python/NCrystal/core.py
+share/NCrystal/python/NCrystal/datasrc.py
+share/NCrystal/python/NCrystal/exceptions.py
+share/NCrystal/python/NCrystal/mcstasutils.py
+share/NCrystal/python/NCrystal/misc.py
+share/NCrystal/python/NCrystal/ncmat.py
+share/NCrystal/python/NCrystal/obsolete.py
+share/NCrystal/python/NCrystal/plot.py
+share/NCrystal/python/NCrystal/plugins.py
+share/NCrystal/python/NCrystal/test.py
+share/NCrystal/python/NCrystal/vdos.py