McStas logo McStas - A neutron ray-trace simulation package ILL; PSI; ESS Niels Bohr Institute DTU Physics

McStas

About McStas
 Conditions of use
 Authors/Contacts
 Project funding

Download
 Components
 Other Downloads (share)

Mailing list

Search web/mailinglist

Documentation
 Wiki (GitHub)
 McStas manual
 Publications

Links

Report bugs (GitHub)

Code-repository (GitHub)


McStas: Monochromator_bent_complex

[ Identification | Description | Input parameters | Links ]

The Monochromator_bent_complex Component

A bent crystal monochromator. Based on the model implemented by Jan Šaroun in NIMA 529 (2004) pp 162-165. Mosacity and bending radius can be set.

Identification

  • Site:
  • Author: Daniel Lomholt Christensen with help from Jan Šaroun
  • Origin: ILL/NBI
  • Date: 2 August 2025

Description

This component is a more complex implementation of Monochromator_bent.
This component only differs in the fact that it allows and forces the user
to set every single parameter for every single crystal in the crystal array.
An exception to this rule is the plane of reflection, for which one can
choose a single plane of reflection, and that will work for all crystals.

Input parameters

Parameters in boldface are required; the others are optional.
NameUnitDescriptionDefault
zwidthmWidth of each crystal without bending.NULL
yheightmHeight of each crystal without bending.NULL
xthicknessmThickness of each crystal without bending.NULL
radius_xmRadius of the circle the monochromator bends on in the plane. Can be negative.NULL
radius_ymRadius of the (very large) circle the monochromator bends on as a side effect of the horizontal bending. The code assumes that it is so small that it does not affect the points of intersection appreciatively of the crystal.NULL
angle_to_cut_horizontaldegreesAngle between cut and normal of crystal slab, horizontallyNULL
mosaicityarcminGaussian mosaicity of the crystal. Always the horizontal mosaicityNULL
mosaic_anisotropy1Anisotropy of the mosaicity, changes vertical mosaicity to be mosaic_anisotropy*mosaicityNULL
domainthicknessμmThickness of the crystal domains.NULL
temperatureKTemperature of the monochromator in Kelvin.NULL
plane_of_reflectionstringThe plane of reflection from the material. The list of possible reflections can be seen in the source code. Each plane must be separated by a ";", like "Si400;Si111"."Si400"
x_posvectorx-Position of each crystalNULL
y_posvectory-Position of each crystalNULL
z_posvectorz-Position of each crystalNULL
x_rotvectorRotation around x-axis for each crystalNULL
y_rotvectorRotation around y-axis for each crystalNULL
z_rotvectorRotation around z-axis for each crystal NOTE: Rotations happen around x, then y, then z.NULL
n_crystals1Number of crystals in your array.1
optimize1Flag to tell if the component should optimize for reflections or not.0
verbose1Verbosity of the monochromator. Used for debugging.0
draw_as_rectangles1Draw the monochromators as boxes. DOES NOT WORK WHEN USING _rot parameters.0
AT ( , , ) RELATIVE
ROTATED ( , , ) RELATIVE

Links


[ Identification | Description | Input parameters | Links ]

Generated on mcstas 3.6.14


Last Modified: Monday, 13-Apr-2026 11:30:08 CEST
Search website mailinglist archive GitHub repos