The Virtual Instrumentation Tool for the ESS is an open source software package for the simulation of neutron scattering experiments. The software is maintained and developed by the Helmholtz-Zentrum Berlin für Materialien und Energie, the former Hahn-Meitner-Institur HMI, and available for Windows, Linux and Macintosh on the . It is widely used for simulation of existing neutron scattering instruments as well as for the development of new instruments. VITESS was initiated by F. Mezei in 1998, closely followed by the first release of VITESS in 1999 and version 2 in 2001. The current version 3 including an X3Dvisualization interface has been released in November 2012. Although it was initially developed to aid the design of neutron scattering instruments for the European Spallation Source as the name implies, VITESS serves as a generic simulation tool for a large variety of neutron scattering instruments at all major pulsed or continuous neutron sources. It comprises all established instrument hardware such as neutron optics, wavelength selectors and a growing variety of samples, allowing to perform virtual experiments including sophisticated setups like polarized neutrons in magnetic fields. Parameters specifying the instrument components can be given by means of a graphical user interface, which makes VITESS comparably easy to use and quick to learn for new users, while advanced users can contribute their own modules. The validity of VITESS simulations is tested by comparison with other neutron simulation packages and with measurements at neutron scattering facilities. Other simulation packages for neutron scattering instruments include McStas, Restrax, NISP and IDEAS.
Working principle
VITESS simulations are carried out by means of a Monte Carlo ray-tracing method. Neutron trajectories are created in a source module or loaded from a file created in a previous simulation. Each neutron is assigned a count rate which is modified on each interaction with the instrument, like the reflection at or transmission through a mirror plate. The trajectory is discarded if the neutron does not hit the subsequent component or gets absorbed. Some components can multiply neutron trajectories by splitting the neutrons into several possible final states and assigning the appropriate probability to each of them, thus keeping the total neutron intensity either constant or decreasing if neutrons are lost. Instrument parts are represented by modules which run independently in a pipe structure during simulation. Neutrons are passed from one module to the next in packages of typically 10000 neutrons, meaning that for most simulations that require more statistics, all modules run in parallel. This modular structure allows to split the simulation into several parts, and e.g. save the neutrons in any part of the instrument to feed them as input to the subsequent part in a separate simulation.
Version History
VITESS 1.0
VITESS 2.0
VITESS 2.10 parallel threads reduce simulation time on multi-processor computers, visualization of trajectories in neutron guide, output compression, new components: elliptic mirror, lens, beamstop
VITESS 2.11 first Macintosh version, new generic 2-dimensional monitor, new sample: imaging
VITESS 3.0 visualization of instrument and neutron trajectories, new components: ideal guide, brilliance and generic 1-dimensional monitors, FRM-2 source, updated ESS cold and HZB cold/bi-spectral source