McStas - A neutron ray-trace simulation package
McStas is a general tool for simulating neutron scattering instruments
and experiments. It is actively supported by DTU Physics
, NBI KU
scattering from a hollow-cylinder vanadium
|The plot shows the intensity of scattered neutrons (red is
highest intensity). The sample is at the center of the sphere with the
neutron beam coming from the left. Clearly seen is the shadowing effect
of the sample causing a lower intensity opposite the beam. Also seen is
the effect of the non-symmetric geometry of the sample, causing lower intensity
directly above and to the side of the sample.|
September 12th, 2014: McStas 2.1 finally released!!
Sorry for the wait - but here it is: McStas 2.1 is released and
ready for download via http://downloads.mcstas.org/mcstas-2.1
Selected, important highligts from the release are:
- McStas 2.1 is the second release in the 2.x series and fixes various issues with McStas 2.0,
plus provide important new developments.
- IMPORTANT: Please ensure to use our "migration scripts" for McStas 2.0 and 1.12c if you want
these to co-exist with 2.1. Also, please read the platform-specific notes!
- Via NeXus libraries and a new --format=Mantid setting for the mcdisplay tool, we are now
able to generate NeXus/HDF files that can be read and treated by Mantid! Mcdisplay generates
a Mantid IDF description for embedding in the NeXus file, including the usual McStas instrument
geometry. Please read the specific guide for this method, documented in the McStas manual, Chapter 6.
- Use of STATE_PARAMETERS and POLARIZATION parameters is no longer supported!
If you have home-grown components using these, you will get this type of error with
Translating instrument definition 'BNL_H8.instr' into C ...
mcstas -t -o BNL_H8.c BNL_H8.instr
Compiling simulation BNL_H8.instr
Arm.comp is using STATE PARAMETERS
mcstas-2.1 does NOT support this keyword. Please remove line 36
mcstas-2.1: 1 Errors encountered during parse of BNL_H8.instr.
** Error exit **
- As the error message suggests, this can be fixed by simply removing/commenting out
the STATE and POLARISATION parameter lines in the top of the component, i.e.:
/* STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) */
/* POLARISATION PARAMETERS (sx,sy,sz) */
- In case of "negative time" propagation we no longer ABSORB these neutrons but rather restore
the incoming neutron state, leaving it untouched for the following components. This avoids
various types of shadowing effects, e.g. when placing parallel monitors that are not in a
GROUP. This is furhter in preparation for the forthcoming ASSEMBLY keyword which will work
roughly like an "iterative group" that loops on the ASSEMBLY of components until no furhter
scattering is achieved, but always scatters first on the component which is closest (in time)
to the neutron.
- "Scatter logging": With this release we provide this special ensemble of instrument examples
that together with the (misc cathegory) components
- provide a powerful post-processing mechanism, mainly for guide systems - that for instance
can be used to study the non-propagated, i.e. absorbed neutron flux along the guide. For
more information, a paper by Esben Klinkby et. al. will be available in one of the next
issues of Journal of Physics: Conference Series, proceedings of the NOP&D 2013 meeting in
Ismaning. Slides from Esbens talk are available here:
- Another important change is an optimization of the
Single_crystal component that results in very large speedups,
especially for large unit cells with many reflections. A speedup of
more than a factor of 500 has been observed with the Perdeuterated
pyrophosphatase system, for which a very large reflection list (.lau
format) is provided.
- The release also contains the latest revision of the
ESS_moderator component, including updated "pancake" source
brilliance calculated by the ESS neutronics group and parametrized
for McStas by Troels Schönfeldt, DTU Nutech.
We have also received a nice, long list of contributions and have also
developed and improved both components, instruments and core package
functionalty. For the full list of changes, please consult the CHANGES document
July 17th, 2014: Updated ESS moderator component available
Unfortunately we are still hunting a few bugs in the development
tree, and are (still!!) not ready to release the official McStas 2.1.
In the meantime, those of you simulating ESS instruments can try
out our new ESS moderator component, available through the download share for use with both McStas 2.x
The component comes with a library of ESS source brilliances, including:
- 2001, legacy "Mezei moderators" from the original F. Mezei documents, rescaled to ESS TDR frequency, pulselength and power.
- TDR, Mezei moderators, with a wavelength-dependent correction term to the cold flux, derived from 2012 MCNPX calculations
by ESS neutronics group. Corrections calculated by K Lieutenant (Vitess) NOTE: uses the 2001 brilliance for the thermal moderator!
- 2013, post-TDR update with non-Maxwellian cold spectrum, Troels Schoenfeldt, BEFORE the ESS pancake geometry was introduced.
- 2014 updated brilliance using formulation by Troels Schoenfeldt, including support for the "pancacke", i.e. flat geometry and
geometrical brilliance over the moderator surface.
An important detail about the 2014-pancake moderator is that the component origin is NOT at the centre of the cylindrical cold source, but
instead at the middle of the front face of the cylinder. For technical reasons, neutrons are in this case propagated from a tangential plane
through that point.
- We further provide a set of example instruments for producing curves corresponding to each of the brilliance settings.
- ... as well as an updated version of the Brilliance_monitor.comp, allowing multiple instances within an instrument file
We hope you will find this useful even though the official McStas 2.1 is still pending...
Vacation greetings on behalf of the McStas team
July 2014: ESS formally joins the McStas project
DTU and ESS have signed a collaboration contract, formally making
the ESS a partner in the McStas project and Peter Willendrup
affiliated with both institutions in the coming years.
Welcome on board
March 10th, 2014: Public beta McStas 2.1rc1 available
A public beta-release of the forthcoming McStas 2.1 is now
As this is a beta-release that will be replaced by the official
McStas 2.1, it is available via a special download page:
The public beta includes an updated model for the ESS moderator (ESS_moderator.comp),
including the "pancake" brilliance model and vertical assymetry
of the cold moderator brilliance. (Special thanks to Troels
Schoenfeldt and Esben Klinkby!) The final McStas 2.1 may still
include further improvements of this new source component.
Please also consult the new platform-oriented installation pages:
If you are on Unix (Linux/Mac) and want to keep your McStas 1.x or 2.0
alongside McStas 2.1rc or the forthcoming 2.1, please use our migration scripts
March 10th, 2014: Preparing for McStas 2.1
We are busy preparing for the release of McStas 2.1 within a couple
of days and are reorganizing parts of the website for that reason. The
updated list of changes for McStas can be found on our trac
Please bear with us if you have difficulties finding information or
if the found information feels inconsistent. :-)
Looking forward to releasing McStas 2.1 in a couple of days!
Previous news items: 2013 2012, 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003,2002, 2001, 2000, 1999,
Last Modified: Friday, 12-Sep-2014 20:56:01 CEST