MCViNE - An object oriented Monte Carlo neutron ray tracing simulation package

Jiao Y.Y. Lin, Hillary L. Smith, Garrett E. Granroth, Douglas L. Abernathy, Mark D. Lumsden, Barry Winn, Adam A. Aczel, Michael Aivazis, Brent Fultz

Research output: Contribution to journalArticlepeer-review

51 Scopus citations

Abstract

MCViNE (Monte-Carlo VIrtual Neutron Experiment) is an open-source Monte Carlo (MC) neutron ray-tracing software for performing computer modeling and simulations that mirror real neutron scattering experiments. We exploited the close similarity between how instrument components are designed and operated and how such components can be modeled in software. For example we used object oriented programming concepts for representing neutron scatterers and detector systems, and recursive algorithms for implementing multiple scattering. Combining these features together in MCViNE allows one to handle sophisticated neutron scattering problems in modern instruments, including, for example, neutron detection by complex detector systems, and single and multiple scattering events in a variety of samples and sample environments. In addition, MCViNE can use simulation components from linear-chain-based MC ray tracing packages which facilitates porting instrument models from those codes. Furthermore it allows for components written solely in Python, which expedites prototyping of new components. These developments have enabled detailed simulations of neutron scattering experiments, with non-trivial samples, for time-of-flight inelastic instruments at the Spallation Neutron Source. Examples of such simulations for powder and single-crystal samples with various scattering kernels, including kernels for phonon and magnon scattering, are presented. With simulations that closely reproduce experimental results, scattering mechanisms can be turned on and off to determine how they contribute to the measured scattering intensities, improving our understanding of the underlying physics.

Funding

The development of the MCViNE software was begun by J.Y.Y.L. under the DANSE project supported by the NSF award DMR-0520547 . The research on simulations of experiments in the ARCS, SEQUOIA, and HYSPEC instruments was supported by the U.S. Department of Energy, Office of Basic Energy Sciences. G.E.G., A.A.A., D.L.A., M.D.L., B.A. were fully supported, J.Y.Y.L. and H.L.S. partially supported by the Scientific User Facilities Division. We thank M. E. Hagen, A. Payzant, and P. Willendrup for stimulating discussions. We also thank L. Li and A. Dementsov for developing the powder diffraction scattering kernel for MCViNE, A. Fang for building MCViNE adaptations of some McStas components, and M. Reuter and S. Campbell for updating the MANTID code to read in the Monte Carlo generated data.

FundersFunder number
Office of Basic Energy Sciences
National Science FoundationDMR-0520547
U.S. Department of Energy
Directorate for Mathematical and Physical Sciences0520547

    Keywords

    • Inelastic
    • Monte Carlo simulation
    • Neutron scattering
    • Ray-tracing
    • Spectrometry

    Fingerprint

    Dive into the research topics of 'MCViNE - An object oriented Monte Carlo neutron ray tracing simulation package'. Together they form a unique fingerprint.

    Cite this