Component Manual for the Neutron Ray-Tracing Package McStas, version 3.10.0

12.11  The Union_mesh McStas Component

Component for including 3D mesh in Union geometry

Identification

Description

Part of the Union components, a set of components that work together and thus separates geometry and physics within McStas. The use of this component requires other components to be used.

1) One specifies a number of processes using process components 2) These are gathered into material definitions using Union_make_material 3) Geometries are placed using Union_box/cylinder/sphere/mesh, assigned a material 4) A Union_master component placed after all the above

Only in step 4 will any simulation happen, and per default all geometries defined before this master, but after the previous will be simulated here.

There is a dedicated manual available for the Union_components

The mesh component loads a 3D OFF, STL or PLY file as the geometry, using geometry-mesh-lib (polygons are triangulated, duplicated vertices welded). Faces given more than once are removed, so a volumetric mesh (cells sharing faces) gives its outer surface. The mesh geometry that is loaded must be a watertight mesh: every edge must be shared by exactly two triangles.

Number of intersections per ray: for each mesh, Union_master stores the GMESH_MAX_HITS (default 50) nearest crossings of the ray with the mesh surface. A concave mesh, or one made of several parts, can be crossed more often. Then the farther crossings are lost, the ray can not find the surface where it leaves the mesh, and Union_master reports trace errors. geometry-mesh-lib warns once when this happens: Warning: <file>: a ray crossed the mesh N times, but only the 4 nearest hits are kept To fix it, add this line after the DEFINE INSTRUMENT line of the instrument, with N at least the number given in the warning: DEPENDENCY " -DGMESH_MAX_HITS=N "

It is allowed to overlap components, but it is not allowed to have two parallel planes that coincides. This will crash the code on run time.

Input parameters

Parameters in boldface are required; the others are optional.

Name

Unit

Description

Default

filename

str

Name of file that contains the 3D geometry: OFF, STL (ascii or binary) or PLY

0

material_string

string

material name of this volume, defined using Union_make_material

0

priority

1

priotiry of the volume (can not be the same as another volume) A high priority is on top of low.

visualize

1

set to 0 if you wish to hide this geometry in mcdisplay

1

all_surfaces

string

Comma seperated string of Union surface definitions defined prior to this component

0

cut_surface

string

Comma seperated string of Union surface definitions defined prior to this component, applied to all internal cuts

0

target_index

1

Focuses on component a component this many steps further in the component sequence

0

target_x

m

position of target to focus at

0

target_y

m

Position of target to focus at

0

target_z

m

position of target to focus at

0

focus_aw

deg

horiz. angular dimension of a rectangular area

0

focus_ah

deg

vert. angular dimension of a rectangular area

0

focus_xw

m

horiz. dimension of a rectangular area

0

focus_xh

m

vert. dimension of a rectangular area

0

focus_r

m

focusing on circle with this radius

0

p_interact

1

probability to interact with this geometry [0-1]

0

mask_string

string

Comma seperated list of geometry names which this geometry should mask

0

mask_setting

string

"All" or "Any", should the masked volume be simulated when the ray is in just one mask, or all.

0

number_of_activations

1

Number of subsequent Union_master components that will simulate this geometry

1

coordinate_scale

1e-3

Multiplier that the vertex positions are multiplied by. Set to 1 for input coordinates in meters. Set to 1e-3 for input coordinates in mm.

1e-3

init

string

Deprecated and unused. Accepted so that instruments written for McStas/McXtrace 3.8.7 and earlier, which name the Union_init component here, still compile.

""

Links